:root{--bg:#080b13;--fg:#edf0f5;--muted:#a2aabb;--accent:#a7b7fc;--line:#ffffff20;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;z-index:10;background:var(--bg);padding:16px}.skip:focus{top:15px}#field{position:fixed;inset:0;z-index:-2;opacity:.75}.grain{position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.035' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.navigation{height:100px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.brand{display:flex;gap:10px;align-items:center}.brand img{width:30px;height:30px}.brand>span{font-size:31px;letter-spacing:-1.8px}.accent{color:var(--accent)}nav{display:flex;gap:30px;font-size:12px;color:var(--muted)}nav a:hover,.text-link:hover{color:var(--accent)}.nav-contact{font-size:12px}.nav-contact span{color:var(--accent);margin-left:20px}.hero{min-height:calc(100svh - 100px);max-height:1000px;position:relative;padding:100px 5% 90px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center}.eyebrow{font:10px monospace;letter-spacing:2px;color:var(--accent);line-height:1.7}.signal{display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;margin-right:9px;box-shadow:0 0 12px var(--accent)}h1{font-size:clamp(65px,8.5vw,135px);line-height:.98;letter-spacing:-.07em;font-weight:400;margin:33px 0}em{font-style:normal;color:var(--accent)}.hero-intro{font-size:17px;line-height:1.7;color:var(--muted);margin:35px 0}.text-link{display:inline-flex;gap:35px;align-items:center;font-size:12px;padding:10px 0;border-bottom:1px solid #a7b7fc55}.text-link span{color:var(--accent);font-size:18px}.hero-compass{position:relative;width:min(100%,440px);aspect-ratio:1;justify-self:center;display:grid;place-items:center;color:var(--accent)}.hero-symbol{width:80%;height:80%;overflow:visible}.guides{opacity:.3;stroke-width:.6}.ticks{opacity:.45;stroke-width:.8}.north-arrow{opacity:.7;stroke-width:.8}.fragment{fill:none;stroke:var(--fg);stroke-width:12;stroke-linejoin:round;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}.hero-compass:hover .fragment-a{transform:translate(-4px,-7px)}.hero-compass:hover .fragment-b{transform:translate(4px,7px)}.compass-orbit{position:absolute;inset:0;border:1px dashed #a7b7fc16;border-radius:50%;animation:orbit 180s linear infinite}.cardinal{position:absolute;font:10px monospace;color:#a7b7fc80}.north{top:-15px}.south{bottom:-15px}.east{right:-15px}.west{left:-15px}.coordinate{position:absolute;bottom:-55px;font:9px monospace;letter-spacing:3px;color:var(--muted)}.hero-foot{position:absolute;bottom:26px;left:5%;right:5%;display:flex;justify-content:space-between;color:var(--muted);font:9px monospace;letter-spacing:2px}.hero-foot .accent{margin-left:25px}.direction{margin:0 5%;padding:105px 0;min-height:480px;border-top:1px solid var(--line);display:grid;grid-template-columns:18% 60% 22%;align-items:start;scroll-margin-top:20px}.section-index{font:10px monospace;letter-spacing:2px;color:var(--muted)}.section-index svg{display:block;width:70px;height:70px;margin-top:75px;color:var(--accent);opacity:.65}.section-index path{fill:none;stroke:currentColor;stroke-width:3}.arrow-east{transform:rotate(90deg)}.arrow-south{transform:rotate(180deg)}h2{font-weight:400;font-size:clamp(40px,5.2vw,80px);line-height:1.05;letter-spacing:-.055em;margin:20px 0 30px}.section-copy h2 span{color:var(--muted)}.section-description{font-size:15px;line-height:1.9;color:var(--muted);margin-bottom:30px}.section-aside{padding-top:45px;font:9px monospace;letter-spacing:2px;line-height:1.8;color:var(--muted)}.line-art{margin-top:45px;width:130px;height:130px;border:1px solid #a7b7fc50;border-radius:50%;position:relative}.line-art:after{content:'';position:absolute;height:160px;width:1px;background:var(--accent);opacity:.5;top:-15px;left:50%;transform:rotate(35deg)}.project-art{height:150px;position:relative;margin-top:35px}.project-art i{position:absolute;width:75px;height:75px;border:1px solid #a7b7fc40;transform:rotate(-25deg);top:20px;left:10px}.project-art i:nth-child(2){left:35px;top:40px}.project-art i:nth-child(3){left:60px;top:60px}.building-art{display:flex;align-items:end;gap:12px;height:160px;margin-top:35px}.building-art i{display:block;width:36px;height:90px;border:1px solid #a7b7fc40;transform:skewY(-15deg)}.building-art i:nth-child(2){height:135px}.building-art i:nth-child(3){height:110px}.contact{border-top:1px solid var(--line);margin:0 5%;padding:110px 0 100px;display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.contact h2{font-size:clamp(45px,5vw,78px)}.email{display:inline-block;font-size:18px;margin-top:15px;border-bottom:1px solid #ffffff35;padding-bottom:12px}.email span{color:var(--accent);margin-left:25px}form{padding-top:30px}.form-intro{font-size:15px;margin-bottom:35px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:11px;color:var(--muted);margin-bottom:28px}input,textarea{display:block;width:100%;background:transparent;color:var(--fg);border:0;border-bottom:1px solid #ffffff35;padding:12px 0;border-radius:0;font-size:15px;resize:vertical}textarea::placeholder{font-size:13px;color:#a2aabb88}.optional{font-size:9px;margin-left:8px;opacity:.6}form button{width:100%;display:flex;justify-content:space-between;border:1px solid #a7b7fc55;background:#a7b7fc0a;color:var(--fg);padding:17px 20px;cursor:pointer;font-size:12px}form button:hover{background:#a7b7fc18}form button span{color:var(--accent)}.form-note,#form-status{font-size:10px;line-height:1.6;color:var(--muted)}footer{border-top:1px solid var(--line);padding:32px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span{font:9px monospace;color:var(--muted);letter-spacing:1px}footer button{background:none;border:0;color:var(--muted);font:9px monospace;cursor:pointer}.motion-paused .compass-orbit{animation-play-state:paused}@keyframes orbit{to{transform:rotate(360deg)}}@media(min-width:1700px){body{max-width:1700px;margin:auto}}@media(max-width:900px){nav{gap:16px}.nav-contact{display:none}.hero{padding-top:65px;padding-bottom:100px}.hero-compass{width:300px}.coordinate{font-size:8px;letter-spacing:1px}.direction{grid-template-columns:15% 70% 15%}.section-aside{font-size:8px;letter-spacing:0}.section-aside>div{transform:scale(.7);transform-origin:left top}.contact{gap:5%}}@media(max-width:650px){html{scroll-padding-top:20px}.navigation{height:85px;flex-wrap:wrap;justify-content:center;gap:0;padding:12px 0}.brand>span{font-size:26px}.brand img{width:24px;height:24px}nav{width:100%;justify-content:center;font-size:10px;gap:22px}.hero{max-height:none;min-height:auto;grid-template-columns:1fr;padding:55px 6% 90px}.eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:clamp(62px,14vw,88px)}.hero-intro{font-size:15px;margin:26px 0}.hero-compass{width:230px;margin:70px 0 45px}.coordinate{bottom:-40px}.hero-foot{font-size:7px;letter-spacing:1px}.direction{padding:65px 0;grid-template-columns:1fr;min-height:0}.section-index{display:flex;align-items:center;justify-content:space-between}.section-index svg{width:36px;height:36px;margin:0}.section-copy{margin-top:20px}h2{font-size:43px}.section-description{font-size:13px}.section-aside{display:none}.contact{grid-template-columns:1fr;padding:65px 0;gap:35px}.contact h2{font-size:49px}form{padding-top:0}.form-row{gap:18px}footer{flex-wrap:wrap}footer .brand{width:40%}footer>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.compass-orbit{animation:none}.fragment{transition:none}}

/* Direction 002 : optique, profondeur, orientation stable */
body{background:#050711}.navigation{position:fixed;top:20px;left:4%;right:4%;margin:0;height:72px;padding:0 25px;z-index:30;border:1px solid #ffffff30;border-radius:24px;background:linear-gradient(120deg,#ffffff13,#ffffff05 45%,#a7b7fc0e),#070b1b99;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);box-shadow:inset 0 1px 0 #ffffff35,inset 0 -1px 0 #ffffff0c,0 15px 60px #0005}.navigation:after{content:'';position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,#d8e3ff90,transparent);pointer-events:none}.hero{min-height:0;height:min(860px,100svh);max-height:none;padding:160px 6% 95px;align-items:center;gap:30px;overflow:hidden}.hero-copy{align-self:center;z-index:2;transform:none!important}.hero .eyebrow{margin-top:0}.hero h1{font-size:clamp(70px,8.4vw,130px);margin-top:25px}.hero-intro{color:#c1c8da}.hero-compass{width:min(100%,460px);transform:none!important;isolation:isolate}.hero-compass:before{content:'';position:absolute;inset:-12%;border-radius:50%;z-index:-1;background:radial-gradient(ellipse at 28% 20%,#d4f2ff38,transparent 42%),radial-gradient(ellipse at 80% 80%,#8c65ff26,transparent 45%),linear-gradient(135deg,#ffffff0d,#ffffff02 50%,#a7b7fc18);box-shadow:inset 2px 2px 3px #eefbff55,inset -2px -2px 3px #a8b8ff40,0 0 90px #587dea24;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:lens-breathe 9s ease-in-out infinite}.hero-compass:after{content:'';position:absolute;inset:-10%;border-radius:50%;z-index:-1;background:conic-gradient(from 20deg,transparent 0deg,#def4ff80 35deg,transparent 65deg,transparent 180deg,#9a8bff90 215deg,transparent 260deg);mask:radial-gradient(transparent 68%,#000 69%,#000 70%,transparent 71%);-webkit-mask:radial-gradient(transparent 68%,#000 69%,#000 70%,transparent 71%);animation:orbit 26s linear infinite}.hero-symbol{animation:none;filter:drop-shadow(0 2px 9px #a7b7fc25)}.hero-compass .fragment{animation:none;transition:none}.hero-compass:hover .fragment-a,.hero-compass:hover .fragment-b{transform:none}.compass-orbit{border-style:solid;border-color:#d3dcff18;animation:none}.guides{opacity:.45}.ticks{opacity:.65}.north{top:-34px}.south{bottom:-34px}.east{right:-34px}.west{left:-34px}.coordinate{bottom:-80px;letter-spacing:2px}.hero-foot{bottom:25px}.grain{opacity:.12}#field{opacity:1}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#88dffc,var(--accent));transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}.text-link{border:1px solid #ffffff28;background:linear-gradient(130deg,#ffffff13,#ffffff03);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:40px;padding:15px 22px;box-shadow:inset 0 1px 0 #ffffff25;transition:background .3s,box-shadow .3s}.text-link:hover{background:#ffffff15;box-shadow:inset 0 1px 0 #ffffff40,0 0 25px #a7b7fc15}.direction{position:relative;min-height:650px;padding:100px 0;align-items:center;border-top-color:#ffffff18;isolation:isolate;scroll-margin-top:100px}.direction:before{content:attr(data-number);position:absolute;right:3%;top:8%;font-size:clamp(180px,30vw,420px);font-weight:400;letter-spacing:-.08em;color:#dbe5ff08;pointer-events:none;transform:translateY(calc(var(--scene,0)*-65px))}.section-copy{z-index:1}.section-copy h2 span{color:#c2cbdf}.section-description{color:#b5bfd3}.section-index svg{color:#b8d5ff;opacity:1}.section-aside{border:1px solid #ffffff20;border-radius:28px;padding:26px 20px;background:linear-gradient(150deg,#ffffff0b,#ffffff02);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 #ffffff20}.section-aside>div{max-width:100%}.line-art{width:110px;height:110px;animation:orientation 12s ease-in-out infinite}.project-art i{animation:layers 8s ease-in-out infinite}.project-art i:nth-child(2){animation-delay:-2s}.project-art i:nth-child(3){animation-delay:-4s}.building-art i{animation:architecture 9s ease-in-out infinite;transform-origin:bottom}.building-art i:nth-child(2){animation-delay:-3s}.building-art i:nth-child(3){animation-delay:-6s}.contact{scroll-margin-top:100px;position:relative}.contact form{border:1px solid #ffffff25;border-radius:32px;padding:32px;background:linear-gradient(145deg,#ffffff0e,#ffffff03);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:inset 0 1px 0 #ffffff25,0 25px 60px #0002}.form-intro{margin-top:0}form button{border-radius:30px;background:linear-gradient(130deg,#c4d5ff28,#a7b7fc0d);box-shadow:inset 0 1px 0 #ffffff35}.scroll-progress{transition:transform .08s linear}@keyframes lens-breathe{0%,100%{box-shadow:inset 2px 2px 3px #eefbff55,inset -2px -2px 3px #a8b8ff40,0 0 70px #587dea20}50%{box-shadow:inset 2px 2px 3px #eefbff70,inset -2px -2px 3px #a8b8ff60,0 0 120px #587dea40}}@keyframes orientation{0%,100%{rotate:-10deg}50%{rotate:20deg}}@keyframes layers{0%,100%{translate:0 0;opacity:.5}50%{translate:0 -14px;opacity:1}}@keyframes architecture{0%,100%{scale:1 1}50%{scale:1 1.1}}@media(max-width:1000px){.hero{height:auto;min-height:750px;padding-top:150px}.hero-compass{width:300px}.direction{grid-template-columns:14% 64% 22%}.section-aside{padding:22px 15px}.section-aside>div{transform:scale(.8)}}@media(max-width:650px){html{scroll-padding-top:115px}.navigation{top:10px;left:4%;right:4%;height:90px;display:flex;padding:10px 14px;border-radius:22px;gap:8px}.navigation .brand{width:100%;justify-content:center}.navigation nav{font-size:10px;gap:20px}.hero{height:auto;min-height:0;padding:140px 6% 65px;gap:0;overflow:hidden}.hero-copy{align-self:start}.hero h1{font-size:clamp(58px,14vw,85px);margin-top:24px}.hero .eyebrow{font-size:8px;max-width:280px}.hero-compass{width:230px;margin:80px 0 100px}.hero-intro{margin:25px 0}.coordinate{bottom:-65px;font-size:8px}.hero-foot{font-size:7px}.direction{min-height:540px;display:block;padding:65px 0;scroll-margin-top:110px}.section-copy{margin-top:30px}.section-aside{display:none}.direction:before{font-size:220px;top:22%;right:0}.section-index svg{width:36px;height:36px}.contact{scroll-margin-top:110px;padding-top:60px}.contact form{padding:25px 20px;border-radius:25px}.contact h2{font-size:46px}.form-row{grid-template-columns:1fr;gap:0}footer{padding-top:25px}.hero-compass:before{backdrop-filter:none;-webkit-backdrop-filter:none}}@media(prefers-reduced-motion:reduce){.hero-compass:before,.hero-compass:after,.line-art,.project-art i,.building-art i{animation:none}.direction:before{transform:none}.scroll-progress,.text-link{transition:none}}@media(prefers-reduced-transparency:reduce){.navigation,.section-aside,.contact form{background:#111827;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(min-width:1001px){.hero-copy{align-self:start;padding-top:20px}}

.offer-line{font-size:clamp(20px,2.2vw,32px);line-height:1.3;letter-spacing:-.025em;color:#c2cbdf;margin:0 0 25px}.portfolio{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:65px}.portfolio-item{border-top:1px solid #ffffff20;padding:25px 10px 0}.project-logo{height:90px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .3s}.portfolio-item:hover .project-logo{opacity:.85}.mono-logo{width:100%;max-width:270px;max-height:90px;object-fit:contain;filter:brightness(0) invert(1)}.project-logo.folio{gap:8px}.folio-logo{width:66px;height:66px;object-fit:contain;filter:grayscale(1) invert(1);mix-blend-mode:screen}.folio span{font-size:31px;letter-spacing:-1px;font-weight:600}.portfolio-item h3{font:11px monospace;letter-spacing:1px;color:#c2cbdf;font-weight:400;margin:25px 0 8px}.portfolio-item p{font-size:11px;color:var(--muted);margin:0}.realisations{grid-template-rows:auto auto}@media(max-width:650px){.portfolio{grid-template-columns:1fr;gap:30px;margin-top:45px}.project-logo{justify-content:flex-start;height:65px}.mono-logo{max-width:230px;max-height:65px}.project-logo.folio{justify-content:flex-start}.portfolio-item{padding-left:0}.folio span{font-size:28px}.portfolio-item h3{margin-top:15px}}
.project-logo img[src$="cowookie.png"]{filter:grayscale(1) invert(1)}.project-logo.folio{mix-blend-mode:screen}
.folio-logo{filter:none;mix-blend-mode:normal;width:44px}.project-logo.folio{mix-blend-mode:normal}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}form button:disabled{opacity:.5;cursor:wait}
.seo-faq{margin:0 5%;padding:65px 0 90px;border-top:1px solid #ffffff20}.seo-faq h2{font-size:clamp(34px,4vw,54px)}.seo-faq details{max-width:900px;padding:20px 0;border-bottom:1px solid #ffffff20}.seo-faq summary{cursor:pointer;font-size:15px;line-height:1.6;color:#dce3f1}.seo-faq details p{max-width:760px;font-size:14px;color:var(--muted);line-height:1.9}
.portfolio-item{text-align:center}.project-logo,.project-logo.folio{justify-content:center}@media(max-width:650px){.project-logo,.project-logo.folio{justify-content:center}}

/* Le symbole remplace le N initial du nom. */
.brand{font-size:31px;gap:2px;white-space:nowrap;align-items:baseline}.brand>span{font-size:inherit;line-height:1;letter-spacing:-1.8px}.brand img{width:auto;height:.72em;flex-shrink:0;align-self:auto;transform:none}@media(max-width:650px){.brand{font-size:26px}}
