.contact-studio{background:#faf9f5;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:2vw;padding:75px 5vw 90px;overflow:hidden;color:#163e4a}.contact-intro>p:first-child{font-size:13px;margin:0 0 30px}.contact-intro h1{font:400 clamp(54px,6.2vw,92px)/1.02 Georgia,serif;letter-spacing:-.055em;margin:0 0 28px}.contact-lead{font-size:17px;line-height:1.7;color:#486169;margin-bottom:38px}.studio-email{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 0;border-block:1px solid #b8c6c7;text-decoration:none}.studio-email span{font-size:13px}.studio-email strong{display:block;margin-top:9px;font-size:clamp(17px,2.15vw,30px);font-weight:400;letter-spacing:-.025em;overflow-wrap:anywhere}.studio-email i{flex-shrink:0;border:1px solid #9baeb2;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font:26px sans-serif;transition:background .28s,transform .28s}.studio-email:hover i{background:#d9ed65;transform:rotate(90deg)}.studio-social{display:flex;gap:25px;margin-top:30px}.studio-social a{display:flex;align-items:center;gap:12px;flex:1;text-decoration:none;font-size:16px;padding:14px 0;transition:transform .28s}.studio-social a:hover{transform:translateY(-4px)}.studio-social b{width:40px;height:40px;border-radius:50%;background:#e1e9e7;display:grid;place-items:center;font:32px Georgia,serif;flex-shrink:0}.studio-social small{display:block;font-size:11px;margin-top:5px;color:#516c73}.contact-installation{margin:0}.contact-installation svg{display:block;width:100%;overflow:visible}.contact-installation figcaption{display:flex;justify-content:space-between;gap:15px;font-size:11px;color:#516c73;padding:0 4%}.room-drawing path{stroke-dasharray:1800;animation:room-draw 16s ease-in-out infinite}.room-surfaces,.room-lamp{animation:room-form 16s ease-in-out infinite}.room-furniture{animation:room-furnish 16s ease-in-out infinite}.room-light{animation:room-glow 16s ease-in-out infinite;transform-origin:385px 160px}@keyframes room-draw{0%{stroke-dashoffset:1800}40%,88%{stroke-dashoffset:0}100%{stroke-dashoffset:1800}}@keyframes room-form{0%,8%{opacity:0;transform:translateY(15px)}35%,88%{opacity:1;transform:translateY(0)}100%{opacity:0}}@keyframes room-furnish{0%,25%{opacity:0;transform:translateY(-14px)}48%,88%{opacity:1;transform:translateY(0)}100%{opacity:0}}@keyframes room-glow{0%,40%{opacity:0}58%,85%{opacity:1;transform:skewX(0deg)}72%{transform:skewX(-5deg)}100%{opacity:0}}.motion-off .contact-installation *{animation-play-state:paused!important}.contact-studio a:focus-visible{outline:2px solid #163e4a;outline-offset:6px}@media(max-width:760px){.contact-studio{grid-template-columns:1fr;padding:50px 7vw 55px;gap:28px}.contact-intro h1{font-size:clamp(49px,11vw,72px)}.studio-email strong{font-size:clamp(17px,4.9vw,26px)}.contact-installation{max-width:520px;width:100%;margin:auto}.studio-social{gap:14px}.studio-social a{font-size:14px}.studio-social small{font-size:10px}.studio-email i{width:37px;height:37px}}@media(prefers-reduced-motion:reduce){.contact-installation *{animation:none!important}.studio-social a,.studio-email i{transition:none}}.contact-studio{grid-template-columns:.85fr 1.15fr;gap:0;padding-right:2vw}.contact-intro h1{font-size:clamp(49px,5.7vw,86px)}.contact-assembly{width:100%;position:relative}.assembly-stage{position:relative;aspect-ratio:1;isolation:isolate;overflow:hidden}.assembly-plan{position:absolute;inset:0;width:100%;height:100%;z-index:0}.assembly-plan path{stroke-dasharray:1;stroke-dashoffset:0}.assembly-piece{position:absolute;inset:0;pointer-events:none}.assembly-piece img,.assembly-complete{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.assembly-floor{z-index:1}.assembly-floor img{clip-path:polygon(0% 61.1%,48.55% 55.75%,100% 61.1%,100% 62%,57.9% 76.85%,0% 61.85%);}.assembly-wall-left{z-index:2}.assembly-wall-left img{clip-path:polygon(3.7% 27.3%,5.1% 27.05%,48.6% 31.65%,48.6% 55.85%,3.7% 60.55%);}.assembly-wall-right{z-index:3}.assembly-wall-right img{clip-path:polygon(48.5% 31.65%,94.9% 26.55%,96.1% 26.95%,96.1% 60.9%,94.8% 61%,48.5% 55.85%);}.assembly-sofa{z-index:4}.assembly-sofa img{clip-path:polygon(46.2% 50.2%,51.7% 49.7%,51.8% 47.7%,54.5% 48.1%,54.5% 47.5%,58% 48%,60.8% 47.8%,61% 48.5%,74.7% 48.7%,75% 48.4%,77% 49%,81% 48.8%,81% 49.1%,86.3% 49%,87.3% 49.5%,87.4% 50.8%,90% 51%,90.9% 52%,91% 59.8%,89.2% 62.5%,85.5% 62.8%,79.2% 61.6%,66% 60.7%,46.3% 58.8%);}.assembly-chair{z-index:5}.assembly-chair img{clip-path:polygon(15% 50.7%,15.7% 50%,18% 49.5%,21% 49.4%,24.5% 50.2%,29% 51.6%,32.2% 52.4%,33.2% 54%,33.2% 60.4%,31.8% 61.7%,25.7% 62.6%,18% 62.2%,16% 61%,14.8% 57.8%);}.assembly-table{z-index:6}.assembly-table img{clip-path:polygon(38.1% 57.1%,41.3% 56.8%,41.3% 52.9%,42.6% 50.2%,46% 50.2%,50% 52%,49% 55.5%,48% 55.9%,48% 56.8%,52% 56.7%,52.4% 55.6%,57.4% 55.5%,58.2% 56%,57.5% 57%,63% 57.5%,65.7% 58.2%,65.7% 59.5%,61% 60.4%,61% 64.4%,59.5% 65.2%,54% 65.2%,53.6% 60.3%,47% 59.9%,47% 62.3%,46% 63.2%,41.2% 63.4%,41.1% 59.4%,38.2% 58.3%);}.assembly-lamp{z-index:7}.assembly-lamp img{clip-path:polygon(47.1% 41.1%,47.3% 40%,48.7% 39.1%,49.7% 38.7%,50.7% 39.1%,52% 40%,52.4% 41.1%,50% 41.1%,50% 50%,48% 50%,48% 41.1%);}.assembly-complete{z-index:8;opacity:1}.contact-assembly.is-playing .assembly-piece{animation:land-floor 28s cubic-bezier(.18,.7,.23,1) infinite both}.contact-assembly.is-playing .assembly-plan{animation:plan-fade 28s linear infinite,plan-tilt 28s cubic-bezier(.45,0,.2,1) infinite}.contact-assembly.is-playing .assembly-plan path{animation:plan-trace 28s ease-in-out infinite}.contact-assembly.is-playing .plan-details{animation-name:detail-trace}.contact-assembly.is-playing .assembly-complete{animation:coherent-finish 28s ease-in-out infinite both}
@keyframes plan-trace{0%{stroke-dashoffset:1}9%,100%{stroke-dashoffset:0}}@keyframes detail-trace{0%,2%{stroke-dashoffset:1}12%,100%{stroke-dashoffset:0}}@keyframes plan-fade{0%,24%{opacity:1}32%,100%{opacity:0}}@keyframes coherent-finish{0%,54%{opacity:0}59%,90%{opacity:1}98%,100%{opacity:0}}
.room-replay{display:flex;align-items:center;gap:18px;margin:15px auto 0;padding:10px 0;border:0;border-bottom:1px solid #b4c4c6;background:none;color:#365760;font-size:12px;cursor:pointer}.room-replay span{font-size:20px}.room-replay:focus-visible{outline:2px solid #163e4a;outline-offset:5px}.motion-off .contact-assembly *{animation-play-state:paused!important}
@media(max-width:760px){.contact-studio{grid-template-columns:1fr;padding-right:7vw}.contact-intro h1{font-size:clamp(49px,11vw,72px)}.contact-assembly{max-width:600px}.contact-assembly figcaption{font-size:10px;gap:8px}}
@media(prefers-reduced-motion:reduce){.contact-assembly *{animation:none!important}.assembly-complete{opacity:1}.assembly-piece,.assembly-plan{display:none}.room-replay{display:none}}

.contact-assembly.is-playing .assembly-floor{animation-name:land-floor;}@keyframes land-floor{0%,22%{opacity:0;transform:translateY(-18%)}24%{opacity:1}30%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-wall-left{animation-name:land-wall-left;}@keyframes land-wall-left{0%,28%{opacity:0;transform:translateY(-18%)}30%{opacity:1}36%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-wall-right{animation-name:land-wall-right;}@keyframes land-wall-right{0%,31%{opacity:0;transform:translateY(-18%)}33%{opacity:1}39%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-sofa{animation-name:land-sofa;}@keyframes land-sofa{0%,36%{opacity:0;transform:translateY(-18%)}38%{opacity:1}44%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-chair{animation-name:land-chair;}@keyframes land-chair{0%,39%{opacity:0;transform:translateY(-18%)}41%{opacity:1}47%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-table{animation-name:land-table;}@keyframes land-table{0%,42%{opacity:0;transform:translateY(-18%)}44%{opacity:1}50%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.contact-assembly.is-playing .assembly-lamp{animation-name:land-lamp;}@keyframes land-lamp{0%,45%{opacity:0;transform:translateY(-18%)}47%{opacity:1}53%,90%{opacity:1;transform:translateY(0)}98%,100%{opacity:0;transform:translateY(0)}}
.assembly-stage{aspect-ratio:1.35}.assembly-piece img,.assembly-complete{height:auto;top:-26%;object-fit:initial}.assembly-plan{height:135%;top:-26%}

/* Draw in a steep overhead view, then settle onto the photographed floor. */
.assembly-plan{transform-origin:50% 65%;will-change:transform,opacity}
@keyframes plan-tilt{0%,11%{transform:translateY(-15%) scale(.7) scaleY(3.4)}23%,100%{transform:translateY(0) scale(1) scaleY(1)}}

.studio-social{display:grid;grid-template-columns:1fr;gap:0;margin:28px 0 0;border-top:1px solid #39243b33}.studio-social a{gap:19px;border-bottom:1px solid #39243b33;padding:16px 2px;min-height:78px;color:#39243b;transition:background-color .2s;transform:none}.studio-social a:hover{transform:none;background:#fff}.studio-social b{width:44px;height:44px;border:1px solid #39243b55;background:transparent;color:#39243b;font:600 23px Georgia,serif;transition:background-color .2s,color .2s}.studio-social .social-label{font:400 23px Georgia,serif}.studio-social small{font:12px/1.5 Arial,sans-serif;color:#5a5260;margin-top:5px;letter-spacing:.02em}.studio-social a:hover b,.studio-social a:focus-visible b{background:#39243b;color:#fff}
