:root{--ink:#172529;--blue:#1599b9;--line:#dce1e2;--open:0;--intro:1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:'Satoshi',Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{color:inherit}button{border:0;background:none}a{text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:6px}button:disabled{opacity:.25;cursor:default}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;letter-spacing:-.065em}h1 span,h2 span{color:var(--blue)}h2{font-size:clamp(56px,6.5vw,110px);line-height:1.02}button span,a span{display:inline-block}button:hover>span:last-child,a:hover>span:last-child{transform:translate(2px,-2px)}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.17em;line-height:1.6}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:16px}.skip:focus{top:10px}.header{height:100px;position:fixed;top:0;left:0;width:100%;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:white;transition:background .3s,color .3s,height .3s}.header.is-solid{background:rgba(255,255,255,.96);color:var(--ink);height:78px;box-shadow:0 1px 0 #1725290d}.brand{width:133px;padding:8px 10px;background:#fffffff2}.brand img{width:100%;height:auto}.header nav{display:flex;gap:38px;font-size:12px}.header-project{display:flex;gap:34px;align-items:center;border-bottom:1px solid currentColor;padding:9px 0;font-size:12px}.header-project span{font-size:19px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{position:fixed;inset:77px 0 auto;z-index:40;padding:32px 7vw;background:white;display:grid;gap:24px;font-size:26px}.hero{height:280svh;position:relative}.hero-stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#b7c5c4}.house{position:absolute;inset:0}.house img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.015)}.bay-surround{position:absolute;inset:0;z-index:6;pointer-events:none}.bay-top{position:absolute;top:0;left:0;right:0;height:15px;background:linear-gradient(#252927,#4f514a 20%,#111a19 30%,#252d2c 70%,#889086 74%,#0c1010);box-shadow:0 6px 18px #0007}.bay-left,.bay-right{position:absolute;inset:0 auto 0 0;width:22px;background:linear-gradient(90deg,#151b1a,#4b514b 35%,#212724 40%,#131a18 77%,#687065 80%,#17201b);box-shadow:6px 0 15px #0004}.bay-right{left:auto;right:0;transform:scaleX(-1)}.bay-sill{position:absolute;inset:auto 0 0;height:29px;background:repeating-linear-gradient(#242b29 0 3px,#5b625b 4px 5px,#121716 7px 11px);box-shadow:0 -3px 7px #0008,0 -15px 25px #0003}.glass-door{position:absolute;top:12px;bottom:25px;width:calc(50% - 17px);z-index:4;border:14px solid #232c29;border-top-width:12px;border-bottom-width:17px;box-shadow:inset 1px 0 0 #c1c5b987,inset -1px 0 0 #737e72,0 0 0 1px #111815,3px 1px 9px #0007;background:linear-gradient(112deg,#cbe6e614 0%,#ffffeb09 38%,#ecffef20 42%,#f7ffe908 51%,#729d9b15 100%);will-change:transform;pointer-events:none}.door-left{left:17px;transform:translate3d(calc(var(--open)*-94%),0,0)}.door-right{right:17px;transform:translate3d(calc(var(--open)*94%),0,0)}.glass-door:before{content:'';position:absolute;inset:-12px;border:1px solid #b3b7a847;border-left:3px solid #7b837444;border-right:3px solid #0b1514;pointer-events:none}.glass-door:after{content:'';position:absolute;inset:0;border:2px solid #0d1717;box-shadow:inset 0 0 3px #e2ead95e;pointer-events:none}.glass-reflection{position:absolute;inset:0;overflow:hidden;background:linear-gradient(123deg,transparent 28%,#ffffff05 34%,#ffffe633 34.25%,#ffffff04 34.75%,transparent 44%,#fafffa12 52%,transparent 64%);opacity:.85;transform:translateX(calc(var(--open)*-8%))}.door-right .glass-reflection{transform:scaleX(-1) translateX(calc(var(--open)*-10%));background:linear-gradient(128deg,transparent 40%,#ffffdf32 40.3%,#fffef610 41%,transparent 48%,#fff8c810 65%,transparent 80%)}.handle{position:absolute;top:55%;right:-8px;width:14px;height:126px;transform:translate(0,-50%);background:linear-gradient(90deg,#1b2220,#586052 35%,#171d1b 70%);border-radius:3px;box-shadow:2px 1px 3px #0009;z-index:3}.handle:before,.handle:after{content:'';position:absolute;right:0;width:24px;height:10px;background:linear-gradient(#d8d7b5,#7c8572 45%,#262e27);border-radius:3px;box-shadow:3px 2px 4px #0006}.handle:before{top:15px}.handle:after{bottom:15px}.handle i{position:absolute;top:16px;bottom:16px;left:-12px;width:9px;border-radius:3px;background:linear-gradient(90deg,#1b2520,#b3b49a 33%,#3c493b 75%,#18231c);box-shadow:5px 2px 5px #0005;z-index:2}.door-right .handle{right:auto;left:-8px;transform:translate(0,-50%) scaleX(-1)}.hero-shade{position:absolute;inset:0;z-index:8;pointer-events:none;background:linear-gradient(#08191842,transparent 30%,transparent 43%,#06191b80);opacity:calc(.5 + var(--intro)*.5)}.hero-copy{position:absolute;z-index:9;left:6vw;bottom:18vh;color:white;opacity:var(--intro);transform:translateY(calc((1 - var(--intro))*-30px));pointer-events:none}.hero-copy h1{font-size:clamp(65px,6.8vw,116px);line-height:.99;max-width:800px;letter-spacing:-.065em;margin-top:23px;text-shadow:0 2px 24px #0b1f1720}.hero-copy h1 span{color:#fff}.expertise{position:absolute;z-index:9;right:6vw;bottom:20vh;color:#fff;display:flex;gap:18px;align-items:center;opacity:var(--intro)}.expertise-number{font-size:62px;letter-spacing:-.07em;line-height:1}.expertise-number>span{font-size:32px;vertical-align:top}.expertise>span:last-child{font-size:14px;line-height:1.35}.expertise small{font-size:8px;letter-spacing:.11em;display:block;margin-top:10px}.hero-bottom{position:absolute;z-index:9;left:6vw;right:6vw;bottom:58px;display:flex;align-items:center;justify-content:space-between;color:white;font-size:10px}.scroll-invite{padding:12px 0;color:white;display:flex;gap:20px;align-items:center;font-size:11px}.scroll-line{width:38px;height:1px;background:#fff7;position:relative}.scroll-line:after{content:'';position:absolute;left:0;top:0;width:50%;height:1px;background:white;transform:translateX(calc(var(--open)*100%))}.hero-counter{font-variant-numeric:tabular-nums;color:#ffffff80;font-size:9px;letter-spacing:.13em}.hero-counter>span{color:white}.hero-location{letter-spacing:.13em;font-size:9px}.open-caption{position:absolute;z-index:9;bottom:18vh;left:50%;transform:translateX(-50%);color:white;font-size:clamp(23px,2.4vw,40px);letter-spacing:-.04em;white-space:nowrap;opacity:calc(1 - var(--intro))}.offers{position:relative;z-index:12;background:#fff;padding:100px 0 70px;margin-top:0;border-radius:0;box-shadow:0 -24px 80px #09231c13;scroll-margin-top:0}.section-heading{display:flex;align-items:end;justify-content:space-between;padding:0 7vw}.section-heading .eyebrow{margin-bottom:24px;color:#6c787c}.offer-intro{font-size:14px;line-height:1.65;color:#6c787c;margin:0 3vw 8px 0}.carousel-shell{margin-top:20px}.offer-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0;padding:0 30vw;touch-action:pan-x pan-y;cursor:grab;overscroll-behavior-x:contain;scroll-behavior:smooth}.offer-rail::-webkit-scrollbar{display:none}.offer-rail.dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}.offer-card{flex:0 0 40vw;scroll-snap-align:center;position:relative;text-align:center;opacity:.48;transition:opacity .45s;min-width:0}.offer-card.is-active{opacity:1}.float-model{animation:float 7s ease-in-out infinite}.offer-card:nth-child(2) .float-model{animation-delay:-2.3s}.offer-card:nth-child(3) .float-model{animation-delay:-4.6s}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}.model{height:clamp(320px,32vw,480px);position:relative}.model canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.model-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:4% 12%;mix-blend-mode:multiply}.model.webgl-ready .model-poster{display:none}.door-poster{width:31%;height:76%;inset:13% auto auto 35%;padding:0;background:linear-gradient(90deg,#344340,#252f2e);border:7px ridge #71827b;box-shadow:18px 14px 26px #12332220;transform:perspective(700px) rotateY(-18deg)}.door-poster i{position:absolute;inset:3% 8% 3% auto;width:20%;background:#a4c0c33b;border:1px solid #bbc8c5}.door-poster b{position:absolute;top:40%;left:55%;width:3px;height:22%;background:#bbc4c1}.card-number{font-size:9px;letter-spacing:.13em;color:#7c8587}.card-caption h3{font-size:clamp(30px,2.7vw,47px);margin:12px 0 6px;line-height:1.1}.card-caption p{font-size:12px;color:#7a8487}.carousel-nav{display:flex;align-items:center;justify-content:center;gap:35px;margin:38px 0 25px}.carousel-nav button{width:47px;height:47px;border:1px solid #dce2e3;border-radius:50%;font-size:19px;transition:background .2s}.carousel-nav button:hover{background:#f0f6f7}.carousel-nav p{display:flex;gap:14px;align-items:center;font-size:10px;color:#8d9699}.carousel-nav p>span:first-child{color:#233d45}.count-rule{width:48px;height:1px;background:#cdd7da}.model-controls{display:flex;align-items:center;justify-content:center;gap:44px}.finishes{display:flex;align-items:center;gap:10px}.swatch{width:18px;height:18px;border-radius:50%;border:1px solid #bcc7c8;position:relative}.swatch[aria-pressed=true]:after{content:'';position:absolute;inset:-5px;border:1px solid #233a43;border-radius:50%}.anthracite{background:#364247}.blanc{background:#eef0ef}.aluminium{background:linear-gradient(125deg,#eff4f3,#7d9195)}#finish-name{font-size:10px;width:98px;margin-left:9px}.manipulate{display:flex;gap:12px;align-items:center}.manipulate>button{font-size:21px;padding:10px}#open-product{font-size:11px;min-width:143px;border-bottom:1px solid #bac8cd;display:flex;gap:18px;justify-content:space-between;padding:12px 0}#open-product span{font-size:15px}.model-note{text-align:center;font-size:9px;color:#98a0a2;margin-top:18px}.offer-bottom{margin:55px 7vw 0;border-top:1px solid var(--line);padding-top:27px;display:flex;justify-content:space-between;align-items:center;font-size:12px;line-height:1.6}.text-link{font-size:12px;display:inline-flex;justify-content:space-between;gap:30px;padding:10px 0;border-bottom:1px solid #b4c1c6}.kitchens{height:165svh;position:relative;background:#252b26}.kitchen-stage{height:100svh;position:sticky;top:0;overflow:hidden;color:white}.kitchen-picture{position:absolute;inset:0;padding:0;width:100%;height:100%}.kitchen-picture img{width:100%;height:100%;object-fit:cover;will-change:transform}.kitchen-picture:focus-visible{outline-offset:-10px}.kitchen-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#050d1245,transparent 38%,#030a0c9e)}.kitchen-top{position:absolute;top:115px;left:6vw;right:6vw;display:flex;justify-content:space-between;pointer-events:none}.kitchen-copy{position:absolute;left:6vw;bottom:12vh;pointer-events:none}.kitchen-copy h2{font-size:clamp(65px,7.5vw,126px);line-height:.99;margin:18px 0 25px;letter-spacing:-.065em}.kitchen-copy h2 span{color:white}.kitchen-copy p{font-size:12px}.light-link{border-bottom:1px solid #ffffffa6;display:inline-flex;gap:68px;font-size:12px;padding:12px 0;color:white;pointer-events:auto}.light-link span{font-size:21px}.kitchen-caption{position:absolute;right:6vw;bottom:14vh;font-size:8px;letter-spacing:.12em;pointer-events:none}.connected{padding:140px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#fff;position:relative;z-index:4}.connected-copy .eyebrow{margin-bottom:30px}.connected h2{font-size:clamp(50px,5.4vw,90px)}.connected-copy>p:not(.eyebrow){font-size:14px;color:#758186;line-height:1.9;margin:27px 0}.somfy{font-size:10px;color:#66808a}.smart-scene{padding-top:22px}.smart-window{aspect-ratio:1.05;position:relative;overflow:hidden;border:9px ridge #3e4744;background:#e3e8e3;box-shadow:20px 30px 60px #143e4417}.smart-window img{width:100%;height:100%;object-fit:cover;object-position:82% center;filter:brightness(.86)}.shutter{position:absolute;inset:0;background:repeating-linear-gradient(#e1e5e1 0,#d3d8d4 15px,#b5beb7 17px,#edf0ec 18px,#d3dad3 20px);transform:translateY(-7%);transition:transform 2s cubic-bezier(.22,.6,.2,1);box-shadow:0 13px 20px #0004;border-bottom:10px solid #bec8bf}.smart-scene.open .shutter{transform:translateY(-100%)}.shutter-cap{position:absolute;inset:0 0 auto;height:24px;background:linear-gradient(#626f65,#1e2822);box-shadow:0 5px 10px #0004}#smart-toggle{display:flex;align-items:center;justify-content:space-between;gap:17px;width:100%;padding:22px 0;border-bottom:1px solid #d5dfe0;font-size:12px}.switch{width:32px;height:18px;border-radius:10px;background:#d9e1e3;padding:3px;transition:background .3s}.switch i{display:block;width:12px;height:12px;border-radius:50%;background:white;transition:transform .5s}.smart-scene.open .switch{background:var(--blue)}.smart-scene.open .switch i{transform:translateX(14px)}#smart-label{margin-right:auto}#smart-status{font-size:10px;color:#91a0a4;margin-top:14px}.contact{padding:100px 7vw;background:#eff5f5}.contact .eyebrow{margin-bottom:35px;color:#66818b}.contact h2{font-size:clamp(78px,10.5vw,178px);line-height:.96}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:65px}.project-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--ink);color:white;padding:22px 26px;font-size:12px}.project-button:hover{background:#215260}.phone{font-size:25px;letter-spacing:-.04em}.phone span{margin-left:20px}.contact address{font-style:normal;font-size:12px;line-height:1.6}.contact .text-link{font-size:10px}footer{padding:40px 7vw;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px}footer img{width:115px;height:auto}footer>div{display:flex;flex-direction:column;gap:12px;font-size:8px;letter-spacing:.08em;color:#87979b}footer button{padding:0;text-align:left;font-size:10px;letter-spacing:0}footer>a:last-child{font-size:24px}dialog{padding:48px;border:0;max-width:min(680px,94vw);max-height:90svh;color:var(--ink);background:white;box-shadow:0 25px 100px #0003;overflow-y:auto}dialog::backdrop{background:#0b222c88;backdrop-filter:blur(9px)}dialog h2{font-size:50px;margin:20px 0 30px}.dialog-close{position:absolute;top:16px;right:18px;width:40px;height:40px;font-size:30px;background:#f0f5f5;border-radius:50%;z-index:10}dialog>p{font-size:13px;line-height:1.7;margin:20px 0}form{display:grid;gap:20px}label{display:grid;gap:8px;font-size:12px}input,textarea{width:100%;border:1px solid #cbd8dc;border-radius:0;padding:12px;color:var(--ink);background:white}textarea{resize:vertical}.form-note{font-size:11px;line-height:1.6;color:#74878e}#email-ready>.project-button{margin:18px 0;display:flex}#copy-status{font-size:11px;margin:15px 0}.kitchen-dialog{width:1100px;max-width:94vw;padding:45px;display:none}.kitchen-dialog[open]{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px}.gallery-head h2{font-size:65px}.gallery-head>p:last-child{font-size:12px;line-height:1.7;color:#829399}.gallery-photo{position:relative;aspect-ratio:1.4;background:#f1f5f3}.gallery-photo img{width:100%;height:100%;object-fit:contain}.gallery-photo>span{position:absolute;bottom:10px;left:12px;background:#fff;padding:7px 12px;font-size:8px;letter-spacing:.13em}.gallery-choices{grid-column:1/-1;display:flex;border-top:1px solid #d3e0e3;border-bottom:1px solid #d3e0e3}.gallery-choices button{flex:1;padding:24px 0;text-align:left;font-size:19px;color:#83959b;display:flex;align-items:center;justify-content:space-between;padding-right:35px}.gallery-choices button[aria-pressed=true]{color:var(--ink);box-shadow:0 2px 0 var(--blue)}.gallery-choices span{font-size:10px}.gallery-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:#66808b}.frame-only .hero{height:100svh}.frame-only .hero-stage{position:relative}.frame-only .header,.frame-only .hero-copy,.frame-only .hero-bottom,.frame-only .expertise,.frame-only .hero-shade,.frame-only .open-caption,.frame-only .skip,.frame-only main>section:not(.hero),.frame-only footer{display:none}.static-mode .hero{height:100svh}.static-mode .hero-stage{position:relative}.static-mode .kitchens{height:100svh}.static-mode .float-model{animation:none}.static-mode [data-sc-in]{opacity:1!important;transform:none!important}.static-mode .kitchen-picture img{transform:none!important}
@media(min-width:1800px){.hero-copy{bottom:20vh}.hero-copy h1{font-size:7vw}}
@media(max-width:1000px){.header{padding-inline:5vw}.header nav{gap:20px;font-size:11px}.expertise{bottom:17vh}.expertise-number{font-size:48px}.hero-copy{bottom:30vh}.hero-copy h1{font-size:8vw}.hero-location{display:none}.offer-card{flex-basis:52vw}.offer-rail{padding-inline:24vw}.model{height:380px}.section-heading{padding-inline:6vw}.offers{padding-top:75px}.connected{padding:90px 6vw;gap:6vw}.contact-row{flex-wrap:wrap}.contact-row>div{width:100%}.kitchen-caption{bottom:8vh;left:6vw;right:auto}.kitchen-copy{bottom:17vh}.kitchen-dialog[open]{grid-template-columns:1fr}.gallery-head h2{font-size:45px}.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}.gallery-head .eyebrow{width:100%}.gallery-head h2{margin:0}.gallery-photo{aspect-ratio:1.65}}
@media(max-width:650px){html{scroll-padding-top:77px}.header{height:86px;padding-inline:25px}.header.is-solid{height:72px}.brand{width:103px;padding:5px 7px}.header nav{display:none}.header-project{font-size:10px;margin-left:auto;margin-right:23px;gap:18px;padding:7px 0}.header-project span{font-size:16px}.menu-toggle{display:flex;flex-direction:column;gap:5px;width:22px;padding:8px 0}.menu-toggle i{height:1px;width:22px;background:currentColor}.hero{height:240svh}.hero-stage{height:100svh;min-height:560px}.house img{object-position:51% center}.bay-left,.bay-right{width:12px}.bay-top{height:10px}.bay-sill{height:20px}.glass-door{top:8px;bottom:18px;width:calc(50% - 9px);border-width:9px;border-bottom-width:12px}.door-left{left:9px}.door-right{right:9px}.glass-door:before{inset:-8px}.handle{width:10px;height:85px;top:49%;right:-6px}.handle:before,.handle:after{width:17px;height:7px}.handle i{left:-9px;width:7px}.door-right .handle{left:-6px}.hero-copy{left:26px;right:23px;bottom:30vh}.hero-copy .eyebrow{font-size:7px;letter-spacing:.09em;max-width:260px;line-height:1.8}.hero-copy h1{font-size:clamp(42px,11.5vw,69px);letter-spacing:-.065em;margin-top:16px}.expertise{left:27px;right:auto;bottom:17vh;gap:13px}.expertise-number{font-size:45px}.expertise-number>span{font-size:23px}.expertise>span:last-child{font-size:11px}.expertise small{font-size:7px;margin-top:5px}.hero-bottom{left:27px;right:26px;bottom:38px}.scroll-invite{gap:11px;font-size:10px}.scroll-line{width:23px}.hero-counter{font-size:8px}.open-caption{font-size:22px;bottom:20vh;max-width:80vw;white-space:normal;text-align:center;width:80vw}.offers{padding:65px 0 45px}.section-heading{display:block;padding-inline:25px}.section-heading .eyebrow{font-size:8px;margin-bottom:17px}.section-heading h2{font-size:63px}.offer-intro{font-size:12px;margin-top:22px;line-height:1.5}.carousel-shell{margin-top:4px}.offer-rail{padding-inline:12vw}.offer-card{flex-basis:76vw}.model{height:320px}.card-caption h3{font-size:33px}.card-caption p{font-size:11px}.card-number{font-size:8px}.carousel-nav{margin:27px 0 19px;gap:27px}.carousel-nav button{height:40px;width:40px}.model-controls{flex-direction:column;gap:5px}.finishes{gap:12px}#finish-name{width:auto;min-width:80px}.manipulate{gap:22px}.model-note{font-size:8px;padding-inline:30px;line-height:1.6}.offer-bottom{margin:35px 25px 0;gap:25px;font-size:10px}.offer-bottom .text-link{font-size:10px;gap:15px}.kitchens{height:145svh}.kitchen-top{top:99px;left:25px;right:25px}.kitchen-top .eyebrow{font-size:8px}.kitchen-top>span:last-child{display:none}.kitchen-picture img{object-position:58% center}.kitchen-copy{left:25px;right:20px;bottom:17vh}.kitchen-copy p{font-size:10px}.kitchen-copy h2{font-size:clamp(55px,15vw,81px);margin-top:16px}.light-link{font-size:11px;gap:50px}.kitchen-caption{left:25px;font-size:6px;bottom:9vh}.connected{grid-template-columns:1fr;padding:70px 25px;gap:34px}.connected-copy .eyebrow{font-size:8px;margin-bottom:22px}.connected h2{font-size:59px}.connected-copy>p:not(.eyebrow){font-size:12px;margin:24px 0}.somfy{font-size:9px}.smart-scene{padding:0 12px}.smart-window{aspect-ratio:1.1}.contact{padding:65px 25px}.contact .eyebrow{font-size:8px;max-width:280px;line-height:1.7}.contact h2{font-size:76px}.contact-row{margin-top:38px;gap:30px}.project-button{width:100%;padding:19px;font-size:11px}.phone{font-size:25px}.contact-row>div{width:100%}footer{padding:32px 25px;display:grid;grid-template-columns:1fr auto;gap:30px;font-size:10px}footer img{width:100px}footer>a:last-child{text-align:right}dialog{padding:40px 24px 28px}dialog h2{font-size:41px}.kitchen-dialog{padding:60px 20px 26px}.kitchen-dialog[open]{gap:24px}.gallery-head>p:last-child{font-size:11px}.gallery-photo{aspect-ratio:1.3}.gallery-choices button{font-size:12px;padding:18px 12px 18px 0;gap:8px}.gallery-choices span{font-size:8px}.gallery-bottom{flex-direction:column;align-items:start;font-size:11px;gap:14px}.gallery-bottom .text-link{font-size:11px}.frame-only .hero-stage{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}

[hidden]{display:none!important}
/* Navigation et univers */
.header,.header.is-solid{background:rgba(255,255,255,.85);backdrop-filter:blur(18px);color:#18292d;height:94px;box-shadow:0 1px 0 #1831350c}.brand{background:none;padding:0;width:154px}.header nav{font-size:14px;gap:34px}.header-project{background:#20373c;color:white;border:0;padding:17px 22px;border-radius:3px;gap:22px;font-size:13px;transition:background .25s,transform .25s}.header-project:hover{background:#377d8d;transform:translateY(-2px)}.mobile-nav{background:rgba(255,255,255,.97);color:#20373c}.expertise{font-size:clamp(22px,2.5vw,42px);line-height:1.15;font-weight:400;display:block;letter-spacing:-.035em;max-width:360px}.category-arrow{font-size:.45em;display:inline-block;vertical-align:middle;transition:transform .3s}.card-caption a:hover .category-arrow{transform:translate(5px,-5px)}.protection-link{margin:65px 7vw 0;padding:35px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;display:flex;align-items:center;justify-content:space-between;gap:25px}.protection-link>span{font-size:10px;letter-spacing:.13em}.protection-link a{font-size:clamp(22px,2.6vw,42px);letter-spacing:-.04em}.protection-link a span{margin-left:30px}.interior-heading{padding:95px 7vw 70px;background:#f4f4f0;scroll-margin-top:94px}.interior-heading h2{font-size:clamp(50px,6vw,94px);line-height:1.04;letter-spacing:-.055em;font-weight:400;margin:30px 0}.interior-heading nav{display:flex;gap:40px;font-size:15px}.interior-grid{padding:100px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:45px}.interior-card{scroll-margin-top:110px;display:block}.interior-card img{width:100%;height:480px;object-fit:cover;transition:transform .6s}.interior-card:hover img{transform:scale(.98)}.interior-card div{padding:30px 0}.interior-card span{font-size:10px;letter-spacing:.14em}.interior-card h2{font-size:clamp(32px,3.4vw,56px);letter-spacing:-.04em;margin:20px 0 12px;font-weight:400}.interior-card i{float:right;font-style:normal}.interior-card p{color:#647073;font-size:14px}.accompaniment{background:#f3f4f0;padding:95px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:30px}.accompaniment>.eyebrow{grid-column:1/-1}.accompaniment h2{font-size:clamp(42px,5vw,80px);font-weight:400;line-height:1.05;letter-spacing:-.05em;margin:0}.accompaniment>div{padding-left:50px;align-self:center}.accompaniment>div p{border-bottom:1px solid #cdd3d1;padding:18px 0;font-size:18px}.accompaniment p span{color:#568896;font-size:11px;margin-right:35px}.connected-full{position:relative;display:block;height:110svh;min-height:720px;padding:0;overflow:hidden;color:white}.connected-image{position:absolute;width:100%;height:100%;object-fit:cover}.connected-overlay{position:absolute;inset:0;background:linear-gradient(90deg,transparent 15%,#0923299c 100%),linear-gradient(0deg,#122c3355,transparent)}.connected-full .connected-copy{position:absolute;right:7vw;bottom:12%;width:42%;max-width:720px}.connected-full h2{font-size:clamp(48px,5.8vw,95px);line-height:1.05;letter-spacing:-.055em;font-weight:400}.connected-full .connected-copy>p:not(.eyebrow){color:#fff;font-size:18px;line-height:1.6;max-width:400px;min-height:70px}.connected-full .somfy{display:block;color:#eee;margin-top:30px}.signal{position:absolute;width:45px;height:45px;border:1px solid #fff9;border-radius:50%;background:#fff3;color:white;backdrop-filter:blur(5px);z-index:3;font-size:25px;cursor:pointer}.signal:before{content:'';position:absolute;inset:-10px;border:1px solid #fff6;border-radius:50%;animation:signal-pulse 3s ease-out infinite;pointer-events:none}.signal span{position:absolute;left:55px;top:10px;font-size:12px;background:#183b3c88;padding:6px 10px;border-radius:2px}.signal-one{left:17%;top:62%}.signal-two{left:37%;top:46%}.signal-three{left:10%;top:78%}.signal.selected{background:white;color:#213b40}.signal.selected span{color:white}@keyframes signal-pulse{0%{transform:scale(.8);opacity:.8}100%{transform:scale(1.7);opacity:0}}.appointment-section{padding:110px 7vw;display:grid;grid-template-columns:1.05fr 1fr;gap:8vw;align-items:center;background:#f7f7f3}.appointment-copy h2{font-size:clamp(44px,4.5vw,76px);line-height:1.06;letter-spacing:-.05em;margin:32px 0}.appointment-copy>p:not(.eyebrow){font-size:16px;line-height:1.7;color:#667477}.appointment-copy .phone{display:block;font-size:24px;margin:30px 0 20px}.appointment-copy .text-link{display:block;font-size:13px}.booking-demo{background:white;padding:35px;border:1px solid #e4e7e4;border-radius:5px;box-shadow:0 20px 70px #243c3507}.booking-top{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e6e9e7;padding-bottom:25px;font-size:14px}.booking-top span:last-child{font-size:11px;color:#77817d}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:22px 0}.calendar-heading h3{font-weight:500;font-size:20px;text-transform:capitalize}.calendar-heading button{width:44px;height:44px;border:1px solid #dfe5e1;border-radius:50%;background:white}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.weekdays{color:#83908a;font-size:12px;margin-bottom:14px}.calendar-days button{border:0;background:#f8faf8;color:#243c34;min-height:44px;border-radius:3px;font-size:14px}.calendar-days button:disabled{opacity:.3;background:transparent}.calendar-days button[aria-pressed=true],.time-slots button[aria-pressed=true]{background:#264e52;color:white}.slot-heading{font-size:14px;margin:28px 0 15px}.time-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-slots button{min-height:44px;border:1px solid #d6dfda;border-radius:3px;background:white;color:#294943}.booking-notice,#booking-status{font-size:11px;line-height:1.6;color:#758079;margin-top:20px}#booking-status{color:#315d61;min-height:36px}.catalogue-page{padding:150px 7vw 90px;min-height:100svh}.catalogue-page h1{font-size:clamp(48px,7vw,105px);font-weight:400;letter-spacing:-.05em;margin:25px 0}.catalogue-filters{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0 55px}.catalogue-filters a{padding:12px 18px;border:1px solid #dbe0dd;border-radius:2px;font-size:13px}.catalogue-filters a[aria-current=true]{background:#233f44;color:white}.catalogue-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 35px}.catalogue-product img{width:100%;height:360px;object-fit:contain;background:#f6f7f4}.catalogue-product h2{font-weight:400;font-size:28px;letter-spacing:-.03em;margin:22px 0}.catalogue-product a{font-size:12px}.catalogue-product .source-link{color:#7a8885;margin-left:20px}.catalogue-product .product-thumbs{display:flex;gap:8px;margin-top:10px}.product-thumbs button{width:64px;height:54px;background:white;border:1px solid #e0e4e0}.product-thumbs img{height:100%;width:100%;object-fit:cover}.catalogue-description{max-width:650px;line-height:1.7;color:#64716b}.catalogue-page .concept-note{font-size:12px;color:#6c7870;margin-top:18px}
@media(max-width:1000px){.header nav{gap:18px;font-size:12px}.header-project{font-size:11px;padding:14px}.brand{width:125px}.interior-card img{height:350px}.appointment-section{gap:35px}.booking-demo{padding:25px}.connected-full .connected-copy{width:47%}}
@media(max-width:700px){.header,.header.is-solid{height:80px;padding:0 20px}.brand{width:105px}.header-project{font-size:10px;max-width:148px;gap:12px;margin-right:15px;padding:11px 13px;line-height:1.35}.header-project span{font-size:18px}.expertise{font-size:27px;max-width:250px;bottom:14%}.protection-link{margin-top:45px;display:block;padding:25px 0}.protection-link>a{display:block;margin-top:18px;font-size:25px}.protection-link a span{margin-left:10px}.interior-heading{padding:65px 25px 45px}.interior-heading h2{font-size:54px}.interior-heading nav{gap:20px;font-size:12px;flex-wrap:wrap}.interior-grid{grid-template-columns:1fr;padding:55px 25px;gap:25px}.interior-card img{height:330px}.interior-card h2{font-size:36px}.accompaniment{grid-template-columns:1fr;padding:65px 25px;gap:28px}.accompaniment>div{padding:0}.accompaniment h2{font-size:48px}.connected-full{height:105svh;min-height:740px}.connected-full .connected-copy{left:25px;right:25px;bottom:55px;width:auto}.connected-full h2{font-size:53px}.connected-full .connected-copy>p:not(.eyebrow){font-size:15px;max-width:300px}.connected-overlay{background:linear-gradient(0deg,#092126ee,transparent 100%)}.signal-one{left:17%;top:29%}.signal-two{left:65%;top:17%}.signal-three{left:26%;top:43%}.signal-two span{left:auto;right:54px}.appointment-section{grid-template-columns:1fr;padding:70px 25px;gap:45px}.appointment-copy h2{font-size:45px}.booking-demo{padding:20px}.booking-top{font-size:12px}.booking-top span:last-child{font-size:9px}.calendar-days{gap:3px}.calendar-days button{min-height:40px}.time-slots{grid-template-columns:repeat(2,1fr)}.catalogue-page{padding:120px 25px 65px}.catalogue-grid{grid-template-columns:1fr;gap:40px}.catalogue-product img{height:300px}.catalogue-filters{gap:7px}.catalogue-filters a{padding:10px;font-size:11px}.catalogue-product .source-link{display:block;margin:14px 0}.category-arrow{font-size:20px}}

@media(max-width:700px){.appointment-copy h2{font-size:39px}.mobile-nav{top:80px}.connected-full .connected-copy{bottom:45px}}
.nav-trigger{display:flex;align-items:center;gap:12px;background:none;border:0;color:inherit;font:inherit;padding:16px 0;cursor:pointer}.nav-trigger>span{font-size:16px;transition:transform .25s}.nav-trigger[aria-expanded=true]>span{transform:rotate(180deg)}.nav-panel{position:fixed;top:94px;left:50%;transform:translateX(-50%);width:min(900px,90vw);max-height:75svh;overflow:auto;padding:35px 40px;background:#fffffff5;backdrop-filter:blur(20px);box-shadow:0 24px 45px #1a33331c;border-top:1px solid #e7ece9;border-radius:0 0 5px 5px;display:grid;grid-template-columns:repeat(2,1fr);gap:30px 45px;color:#1e3439;animation:nav-appear .23s ease-out}.nav-group>p{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#63838a;margin:0 0 13px}.nav-group a{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e3e9e5;font-size:15px;line-height:1.35}.nav-group a:hover{color:#43879a}.nav-group a>span{font-size:13px;color:#60909c}.offer-selectors{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 12px;padding:0 7vw 24px}.offer-selectors button,.offer-selectors a{font:inherit;font-size:12px;background:none;border:1px solid #e2e7e4;border-radius:30px;padding:12px 17px;color:#53686b;cursor:pointer}.offer-selectors button[aria-pressed=true]{background:#254249;color:white;border-color:#254249}.offer-selectors a{border-color:transparent}.immersive-cta{display:inline-flex;align-items:center;gap:40px;background:#fff;color:#22393f;border:1px solid #fff8;border-radius:3px;padding:13px 15px 13px 24px;font:inherit;font-size:14px;cursor:pointer;transition:transform .3s,box-shadow .3s}.immersive-cta>span{background:#26454c;color:white;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;font-size:21px;transition:transform .3s}.immersive-cta:hover{transform:translateY(-3px);box-shadow:0 12px 35px #0002}.immersive-cta:hover>span{transform:rotate(45deg)}.kitchen-top{justify-content:flex-end}.kitchen-top>span:empty{display:none}.connected-full .connected-copy{width:43%;bottom:18%}.connected-full .connected-copy h2{font-size:clamp(60px,6.8vw,112px)}.connected-full .connected-copy>p:not(.eyebrow){font-size:clamp(14px,1.3vw,19px);max-width:none;min-height:35px;white-space:nowrap}.somfy-discreet{position:absolute;bottom:35px;right:7vw;color:#ffffffa6;font-size:10px;letter-spacing:.03em}.connected-full .signal-one{left:20%;top:53%}.connected-full .signal-two{left:37%;top:62%}.connected-full .signal-three{left:10%;top:78%}.connected-full .connected-overlay{background:linear-gradient(90deg,#06121800 30%,#0612188c 100%)}@keyframes nav-appear{from{opacity:0;margin-top:-8px}to{opacity:1;margin-top:0}}
@media(max-width:700px){.mobile-nav{max-height:calc(100svh - 80px);overflow-y:auto;padding:20px 25px 35px}.mobile-nav .nav-trigger{width:100%;justify-content:space-between;font-size:24px;padding:20px 0;border-bottom:1px solid #d6dfd9}.mobile-nav .nav-panel{position:static;transform:none;box-shadow:none;width:100%;padding:20px 0;max-height:none;display:block;border:0;background:transparent}.mobile-nav .nav-group{margin-bottom:24px}.mobile-nav .nav-group a{font-size:15px;padding:13px 0}.mobile-nav .nav-group>p{font-size:10px}.offer-selectors{padding:0 20px 22px;gap:6px}.offer-selectors button,.offer-selectors a{font-size:10px;padding:10px 12px}.immersive-cta{font-size:12px;gap:25px;padding:10px 12px 10px 20px}.immersive-cta>span{width:38px;height:38px}.connected-full .connected-copy{left:25px;right:25px;width:auto;bottom:85px}.connected-full .connected-copy h2{font-size:64px}.connected-full .connected-copy>p:not(.eyebrow){font-size:14px;white-space:normal}.somfy-discreet{right:25px;bottom:25px;font-size:9px}.connected-full .signal-one{left:18%;top:32%}.connected-full .signal-two{left:62%;top:22%}.connected-full .signal-three{left:26%;top:46%}.connected-full .connected-overlay{background:linear-gradient(0deg,#061218e6,transparent 100%)}.connected-image{object-position:35% center}}

/* Airy navigation and restrained link interactions. */
.header,.header.is-solid{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;height:94px;color:var(--ink)}
.header nav{position:relative;padding:0 26px;gap:30px;isolation:isolate}
.header nav:before{content:'';position:absolute;inset:0 -3px;border-radius:38px;background:rgba(255,255,255,.40);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 0 22px 7px #ffffff20;z-index:-1;pointer-events:none}
.header .brand{background:transparent}.header .nav-trigger{padding:17px 0}
.header .nav-panel{top:78px}.nav-panel[hidden]{display:none}
.link-cta,.appointment-copy .link-cta,.header .link-cta{display:inline-flex;align-items:center;justify-content:flex-start;gap:12px;width:fit-content;padding:10px 0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:14px;font-weight:500;line-height:1.4;text-align:left;transition:color .3s;transform:none}
.link-cta .cta-label{position:relative;background:none;border:0;border-radius:0;width:auto;height:auto;display:inline-block;font:inherit;color:inherit;transform:none}
.cta-label:after{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s cubic-bezier(.62,.05,.01,.99)}
.link-cta .cta-arrow{width:22px;height:22px;flex:none;transition:transform .5s cubic-bezier(.62,.05,.01,.99)}
.link-cta:hover,.link-cta:focus-visible,.link-cta.is-tapped{color:var(--blue);box-shadow:none;transform:none}
.link-cta:hover .cta-label,.link-cta:focus-visible .cta-label{transform:none}
.link-cta:hover .cta-label:after,.link-cta:focus-visible .cta-label:after,.link-cta.is-tapped .cta-label:after{transform:scaleX(1);transform-origin:left}
.link-cta:hover .cta-arrow,.link-cta:focus-visible .cta-arrow,.link-cta.is-tapped .cta-arrow{transform:rotate(-45deg)}
.header .header-project{color:var(--ink);font-size:12px;white-space:nowrap;text-shadow:0 0 15px #fffc}.kitchen-copy .link-cta,.connected-copy .link-cta{color:white}.kitchen-copy .link-cta:hover,.connected-copy .link-cta:hover{color:#a9e9f7}
#offer-title{max-width:1050px;font-size:clamp(50px,6.3vw,100px);line-height:1.06}
.offer-selectors{margin-top:65px;margin-bottom:20px;gap:12px}.offers .section-heading{justify-content:flex-start}
.interior-heading h2{max-width:1000px}.kitchen-copy h2{max-width:1000px;font-size:clamp(52px,6vw,96px);line-height:1.05;margin-bottom:30px}
.accompaniment{padding:110px 7vw;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;background:#f5f6f2}
.accompaniment .team-photo{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.team-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.team-photo figcaption{font-size:11px;color:#687874;margin-top:15px}
.accompaniment .team-content{padding:0}.accompaniment h2{font-size:clamp(42px,4.5vw,70px);margin:0 0 35px}.project-steps{list-style:none;margin:0 0 24px;padding:0}.project-steps li{display:grid;grid-template-columns:34px 1fr;gap:20px;border-top:1px solid #cfd8d3;padding:23px 0}.project-steps li>span{font-size:11px;color:#54818a;padding-top:6px}.project-steps h3{font-size:22px;letter-spacing:-.035em}.accompaniment .project-steps p{border:0;padding:0;display:block;font-size:13px;line-height:1.65;color:#6a7875;margin-top:8px}.accompaniment .team-content>.link-cta{font-size:13px}
@media(max-width:1000px){.header nav{gap:20px;padding-inline:20px}.header .header-project{font-size:11px}.accompaniment{gap:35px}}
@media(max-width:700px){.header,.header.is-solid{height:80px}.header nav{display:none}.header .header-project{font-size:10px;white-space:normal;max-width:130px;padding:10px 0;gap:7px}.header .cta-arrow{width:17px;height:17px}.menu-toggle{background:#ffffff60;backdrop-filter:blur(14px);border-radius:50%;width:40px;height:40px;flex-shrink:0}.offer-selectors{margin-top:38px;gap:9px;margin-bottom:12px}#offer-title{font-size:47px}.interior-heading h2{font-size:50px}.kitchen-copy h2{font-size:49px}.link-cta{font-size:14px}.accompaniment{grid-template-columns:1fr;padding:65px 25px;gap:40px}.accompaniment h2{font-size:47px}.project-steps h3{font-size:22px}.team-photo img{aspect-ratio:4/3}.mobile-nav .nav-panel{top:auto}}
@media(prefers-reduced-motion:reduce){.link-cta,.link-cta .cta-arrow,.cta-label:after{transition:none}.link-cta:hover .cta-arrow,.link-cta.is-tapped .cta-arrow{transform:none}}
/* Expertise and primary action grouped on the lawn. */
body:has(.hero) .header .header-project{visibility:hidden;pointer-events:none}
body:has(.hero) .header.is-solid .header-project{visibility:visible;pointer-events:auto}
.hero-project{position:absolute;z-index:10;right:6vw;bottom:7.5%;display:flex;flex-direction:column;align-items:flex-end;gap:20px;opacity:var(--intro)}
.hero-project .expertise{position:static;max-width:none;margin:0;white-space:nowrap;font-size:clamp(20px,2vw,34px);line-height:1.15;color:white;opacity:1;text-shadow:0 2px 18px #10251780}
.hero-project .hero-cta{background:#fff;color:#172529;padding:20px 25px;gap:28px;border-radius:3px;box-shadow:0 5px 28px #14221e16;font-size:14px}
.hero-project .hero-cta:hover{color:var(--blue);background:#fff}.frame-only .hero-project{display:none}
@media(max-width:700px){.hero-project{right:27px;left:27px;bottom:8%;gap:17px}.hero-project .expertise{font-size:clamp(17px,5.5vw,23px);white-space:nowrap;letter-spacing:-.045em}.hero-project .hero-cta{padding:16px 20px;font-size:12px;gap:20px}.hero-copy{bottom:29%}}
.client-stories{padding:110px 7vw;background:#edf4f5;color:#193a42}.clients-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:65px}.clients-heading h2{font-size:clamp(58px,6vw,96px);line-height:1.02}.clients-heading>p{font-size:17px;line-height:1.6;color:#647d82}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.review-card{margin:0;border-top:1px solid #aebfc2;padding:28px 0 0;display:flex;flex-direction:column}.review-stars{color:#438794;font-size:12px;letter-spacing:.2em}.review-card blockquote{font-size:clamp(24px,2.45vw,39px);font-weight:400;letter-spacing:-.04em;line-height:1.2;margin:30px 0 40px;flex:1}.review-card figcaption{display:flex;flex-direction:column;gap:8px}.review-card strong{font-size:13px;font-weight:500}.review-card figcaption>span{font-size:11px;color:#698187}.reviews-bottom{margin-top:55px;padding-top:25px;border-top:1px solid #cbd8da;display:flex;align-items:center;justify-content:space-between;gap:20px}.reviews-bottom p{font-size:11px;color:#698187}
@media(max-width:700px){.client-stories{padding:70px 25px}.clients-heading{display:block;margin-bottom:38px}.clients-heading h2{font-size:56px}.clients-heading>p{margin-top:22px;font-size:14px}.reviews-grid{grid-template-columns:1fr;gap:35px}.review-card blockquote{font-size:31px;margin:22px 0 26px}.reviews-bottom{align-items:flex-start;flex-direction:column;margin-top:38px}}

/* Native text selection in Socomi blue. */
::selection{background:#1599b9;color:#fff;text-shadow:none}
::-moz-selection{background:#1599b9;color:#fff;text-shadow:none}
/* Minimal, non-connected conversation preview. */
.chat-widget{position:fixed;z-index:45;right:28px;bottom:max(25px,env(safe-area-inset-bottom));font-family:'Satoshi',sans-serif;color:#19343c}.chat-widget[hidden],.chat-panel[hidden]{display:none}.chat-launcher{display:flex;align-items:center;gap:10px;padding:15px 19px;border:1px solid #ffffff80;border-radius:40px;background:#1599b9;color:white;box-shadow:0 7px 28px #12394426;font-size:12px;font-weight:500;animation:chat-enter .4s ease-out}.chat-launcher svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.chat-launcher:hover{background:#117f9a}.chat-launcher:hover>span{transform:none}.chat-panel{position:absolute;right:0;bottom:70px;width:355px;padding:25px;background:#fff;border:1px solid #e6edef;border-radius:16px;box-shadow:0 20px 75px #122c3c25;max-height:calc(100dvh - 160px);overflow-y:auto;animation:chat-enter .25s ease-out}.chat-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:23px;border-bottom:1px solid #e8edef}.chat-brand{font-size:10px;letter-spacing:.17em;color:#1599b9;font-weight:600}.chat-heading h2{font-size:20px;letter-spacing:-.035em;line-height:1.3;margin-top:8px}.chat-close{width:32px;height:32px;flex:none;border-radius:50%;font-size:25px;line-height:1;color:#61747a;background:#f4f7f8;margin:-7px -7px 0 0}.chat-conversation{display:flex;gap:10px;margin:25px 0 20px}.chat-avatar{display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:50%;color:#1599b9;background:#edf7fa;font-size:13px}.chat-message{background:#f2f7f8;padding:16px;border-radius:0 12px 12px 12px;font-size:13px;line-height:1.65}.chat-message p+p{margin-top:9px;color:#63787f;font-size:12px}.chat-suggestions{display:flex;flex-direction:column;gap:8px;margin:0 0 25px 37px}.chat-suggestions a{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding:11px 0;border-bottom:1px solid #deeaee}.chat-suggestions a:hover{color:#1599b9}.chat-compose{padding:13px 14px;background:#fafbfb;border:1px solid #e6ecee;border-radius:8px;display:flex;align-items:center;justify-content:space-between;color:#94a1a5;font-size:11px;cursor:not-allowed}.chat-compose svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.chat-demo{text-align:center;font-size:9px;line-height:1.5;color:#86969c;margin-top:12px}@keyframes chat-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.chat-widget{right:17px;bottom:max(17px,env(safe-area-inset-bottom))}.chat-launcher{padding:15px}.chat-launcher>span{display:none}.chat-panel{width:min(355px,calc(100vw - 34px));bottom:68px;padding:22px}.chat-heading h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){.chat-panel,.chat-launcher{animation:none}}

.ambient-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .5s}.house .ambient-video{transform:scale(1.015);z-index:1}.ambient-video.is-playing{opacity:1}.connected-video{object-position:center}@media(max-width:700px){.connected-video{object-position:35% center}}@media(prefers-reduced-motion:reduce){.ambient-video{display:none}}

/* Center the hero headline independently of the project CTA. */
.hero-copy{left:5vw;right:5vw;top:45%;bottom:auto;text-align:center;transform:translateY(calc(-50% - (1 - var(--intro))*30px))}.hero-copy h1{max-width:none;margin:0 auto}@media(max-width:700px){.hero-copy{left:20px;right:20px;top:43%;bottom:auto}}

/* Dark tinted glass, carried by each sliding panel. */
.glass-door{background:linear-gradient(112deg,rgba(255,255,255,.025),transparent 38%,rgba(225,238,244,.065) 42%,transparent 53%),rgba(8,15,20,.95)}
