@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,400;1,500&family=Inter:wght@300;400;500;600&display=swap";:root{--navy:#071d2b;--navy-2:#0b2638;--white:#f5f2eb;--paper:#ebe7de;--ink:#10202a;--line:#f5f2eb2e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,Arial,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;height:100%;display:block}main{overflow:hidden}.site-header{z-index:20;height:96px;color:var(--white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:0 5vw;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:12px;font-size:12px;display:flex}.brand-mark{border:1px solid;place-items:center;width:34px;height:34px;font-family:Cormorant Garamond,serif;font-size:17px;font-style:italic;display:grid}.site-header nav{letter-spacing:.05em;gap:34px;font-size:12px;display:flex}.site-header nav a{position:relative}.site-header nav a:after{content:"";background:var(--white);width:0;height:1px;transition:all .3s;position:absolute;bottom:-8px;left:0}.site-header nav a:hover:after{width:100%}.header-cta,.text-link{letter-spacing:.04em;align-items:center;gap:14px;font-size:12px;display:flex}.hero{background:var(--navy);min-height:100svh;color:var(--white);grid-template-columns:1.08fr .92fr;align-items:center;padding:170px 7vw 70px;display:grid;position:relative}.hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 67% 44%,#38647738,#0000 29%);position:absolute;inset:0}.hero-grid{background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:9vw 9vw;position:absolute;inset:96px 0 0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.hero-copy,.hero-signature{z-index:2;position:relative}.eyebrow,.section-label{letter-spacing:.22em;text-transform:uppercase;font-size:10px;font-weight:500}.eyebrow{align-items:center;gap:12px;margin-bottom:35px;display:flex}.eyebrow span{background:var(--white);width:38px;height:1px}h1,h2{letter-spacing:-.045em;margin:0;font-weight:300;line-height:.88}h1{font-size:clamp(64px,8.8vw,142px)}h1 em,h2 em{font-family:Cormorant Garamond,serif;font-weight:400}.hero-intro{color:#f5f2ebad;max-width:510px;margin:38px 0;font-size:15px;line-height:1.8}.hero-actions{align-items:center;gap:36px;display:flex}.button{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:28px;padding:17px 20px;font-size:11px;transition:all .3s;display:inline-flex}.button:hover{gap:40px}.button-light{background:var(--white);color:var(--navy)}.hero-signature{flex-direction:column;justify-content:center;align-items:center;padding-left:4vw;display:flex}.logo-frame{aspect-ratio:1;filter:drop-shadow(0 25px 70px #0000003b);width:min(34vw,500px);position:relative;overflow:hidden}.logo-frame img{object-fit:cover;mix-blend-mode:screen;animation:1.6s cubic-bezier(.2,.7,.2,1) both logoReveal}.logo-frame:before{content:"";z-index:2;border:1px solid #ffffff14;animation:4s ease-in-out infinite pulse;position:absolute;inset:10%}.scan-line{z-index:3;background:linear-gradient(90deg,#0000,#fff,#0000);height:1px;animation:4s ease-in-out infinite scan;position:absolute;top:13%;left:10%;right:10%;box-shadow:0 0 16px #fff}.hero-signature>p{letter-spacing:.16em;text-transform:uppercase;color:#ffffff8c;align-items:center;gap:12px;margin:-18px 0 0;font-size:10px;display:flex}.hero-signature>p i{background:#fff;border-radius:50%;width:3px;height:3px}.hero-index{letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;font-size:9px;line-height:1.6;position:absolute;bottom:40px;left:7vw}.hero-index strong{color:#fff;font-size:16px;font-weight:400}.scroll-cue{letter-spacing:.2em;z-index:3;flex-direction:column;align-items:center;gap:10px;font-size:8px;display:flex;position:absolute;bottom:35px;right:3vw}.scroll-cue i{border:1px solid var(--line);border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;animation:2s infinite bob;display:grid}.statement{text-align:center;padding:150px 7vw 100px}.section-label{color:#5e6b71;margin:0 0 30px}.statement h2,.section-heading h2,.about h2,.contact h2{font-size:clamp(52px,7.6vw,118px)}.statement-copy{color:#526069;max-width:540px;margin:38px auto 0;font-size:14px;line-height:1.8}.services{grid-template-columns:repeat(4,1fr);padding:0 7vw 140px;display:grid}.service{border-top:1px solid #071d2b3d;min-height:230px;padding:25px 24px 30px 0;position:relative}.service+article{border-left:1px solid #071d2b1f;padding-left:24px}.service>span{letter-spacing:.16em;color:#738087;font-size:9px}.service h3{margin:50px 0 18px;font-size:18px;font-weight:400}.service p{color:#617078;font-size:12px;line-height:1.75}.service i{font-size:14px;font-style:normal;transition:all .3s;position:absolute;top:20px;right:18px}.realisations{background:var(--navy);color:var(--white);padding:130px 7vw}.section-label.light{color:#ffffff7a}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:75px;display:flex}.section-heading>p{color:#ffffff8c;max-width:320px;font-size:13px;line-height:1.8}.gallery{grid-template-rows:390px 240px;grid-template-columns:1.2fr .8fr 1fr;gap:14px;margin-bottom:38px;display:grid}.gallery-item{background:#102f41;margin:0;position:relative;overflow:hidden}.gallery-item:after{content:"";background:linear-gradient(#0000 55%,#010f18d9);position:absolute;inset:0}.gallery-item img{filter:saturate(.72);transition:transform .8s,filter .8s}.gallery-item:hover img{filter:saturate();transform:scale(1.04)}.item-1{grid-row:1/3}.item-2{grid-column:2/4}.gallery-item figcaption{z-index:2;justify-content:space-between;align-items:end;display:flex;position:absolute;bottom:17px;left:20px;right:20px}.gallery-item figcaption span{letter-spacing:.14em;font-size:9px}.gallery-item figcaption strong{font-family:Cormorant Garamond,serif;font-size:25px;font-style:italic;font-weight:400}.button-outline{float:right;border:1px solid #fff6}.about{grid-template-columns:.85fr 1.15fr;align-items:center;gap:10vw;padding:150px 9vw;display:grid}.about-photo{height:700px;position:relative}.about-photo img{filter:saturate(.65)}.about-photo span{background:var(--navy);color:#fff;text-align:center;border-radius:50%;place-items:center;width:100px;height:100px;font:italic 18px/1.1 Cormorant Garamond,serif;animation:5s ease-in-out infinite float;display:grid;position:absolute;top:45%;right:-48px}.about-copy>p:not(.section-label){color:#53616a;max-width:590px;margin-top:35px;font-size:14px;line-height:1.9}.about-copy blockquote{border-left:1px solid var(--navy);max-width:620px;margin:35px 0;padding:25px 0 25px 30px;font:italic 23px/1.5 Cormorant Garamond,serif}.about-facts{border-top:1px solid #071d2b2e;gap:50px;padding-top:24px;display:flex}.about-facts span{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;font-size:9px;display:flex}.about-facts strong{font:italic 35px Cormorant Garamond,serif}.contact{background:var(--navy);color:var(--white);text-align:center;padding:135px 7vw 50px}.contact h2{margin-bottom:32px}.contact>p:not(.section-label){color:#ffffff94;max-width:510px;margin:0 auto 34px;font-size:13px;line-height:1.8}.contact-line{border-top:1px solid var(--line);letter-spacing:.12em;text-transform:uppercase;color:#ffffff85;justify-content:space-between;margin-top:110px;padding-top:25px;font-size:9px;display:flex}footer{background:var(--navy);color:#ffffff73;border-top:1px solid var(--line);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:40px 7vw;font-size:9px;display:flex}footer .brand{color:var(--white)}@keyframes logoReveal{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:scale(.97)}to{opacity:1;clip-path:inset(0);transform:scale(1)}}@keyframes scan{0%,to{opacity:0;top:13%}15%{opacity:1}60%{opacity:.8;top:82%}75%{opacity:0}}@keyframes pulse{50%{opacity:.4;inset:7%}}@keyframes bob{50%{transform:translateY(6px)}}@keyframes float{50%{transform:translateY(-12px)}}@media (width<=900px){.site-header{height:78px;padding:0 22px}.site-header nav{display:none}.header-cta{font-size:0}.header-cta span{font-size:16px}.hero{grid-template-columns:1fr;padding:130px 24px 85px}.hero-copy{z-index:4}.hero-signature{opacity:.3;position:absolute;top:13%;right:-10%}.logo-frame{width:70vw}.hero-intro{max-width:430px}.services{grid-template-columns:1fr 1fr;padding:0 24px 90px}.service:nth-child(3){border-left:0}.statement{padding:100px 24px 70px}.realisations{padding:90px 24px}.section-heading{align-items:flex-start;gap:35px}.gallery{grid-template-rows:420px 260px;grid-template-columns:1fr 1fr}.item-1{grid-row:auto}.item-2{grid-area:1/2}.about{gap:7vw;padding:100px 34px}.about-photo{height:560px}.about-facts{gap:20px}.contact{padding:100px 24px 40px}}@media (width<=620px){h1{font-size:17vw}.hero{align-items:start;min-height:850px}.hero-signature{opacity:.34;top:40%;right:-22%}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.hero-index{left:24px}.scroll-cue{right:20px}.statement h2,.section-heading h2,.about h2,.contact h2{font-size:14vw}.services{grid-template-columns:1fr}.service,.service+article{border-left:0;min-height:190px;padding-left:0}.section-heading{display:block}.section-heading>p{margin-top:30px}.gallery{scroll-snap-type:x mandatory;margin-right:-24px;padding-right:24px;display:flex;overflow-x:auto}.gallery-item{scroll-snap-align:start;min-width:82vw;height:480px}.button-outline{float:none}.about{grid-template-columns:1fr;padding:85px 24px}.about-photo{height:510px;margin-right:20px}.about-photo span{right:-28px}.about-copy{padding-top:30px}.about-facts{flex-direction:column}.contact-line{flex-direction:column;align-items:center;gap:15px;margin-top:80px}footer{text-align:center;flex-direction:column;gap:25px}.brand>span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.logo-frame>img,.logo-frame>.scan-line{display:none}.logo-rebuild{position:absolute;inset:0;overflow:hidden}.logo-pieces{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);display:grid;position:absolute;inset:0}.logo-pieces span{background-image:url(/media/logo-original.jpeg);background-size:400% 400%;background-position:calc(var(--col) * -100%) calc(var(--row) * -100%);mix-blend-mode:screen;opacity:0;transform:translate(calc((var(--col) - 1.5) * 90px),calc((var(--row) - 1.5) * 75px)) rotate(calc((var(--piece) - 8) * 5deg)) scale(.65);filter:blur(4px);animation:assemblePiece 1.8s cubic-bezier(.16,.8,.2,1) calc(75ms * var(--piece)) forwards}.logo-complete{object-fit:cover;mix-blend-mode:screen;opacity:0;animation:.5s 2.05s forwards completeLogo;position:absolute;inset:0}.logo-rebuild .scan-line{z-index:6;animation-delay:1.6s}@keyframes assemblePiece{0%{opacity:0}28%{opacity:.9}to{opacity:1;filter:blur();transform:translate(0)rotate(0)scale(1)}}@keyframes completeLogo{to{opacity:1}}[data-reveal]{opacity:0;will-change:opacity,transform;transition:opacity .9s,transform 1s cubic-bezier(.16,.8,.2,1)}[data-reveal=up]{transform:translateY(55px)}[data-reveal=left]{transform:translate(-65px)}[data-reveal=right]{transform:translate(65px)}[data-reveal=zoom]{transform:translateY(35px)scale(.96)}[data-reveal].is-visible{opacity:1;transform:none}.service:nth-child(2){transition-delay:.1s}.service:nth-child(3){transition-delay:.2s}.service:nth-child(4){transition-delay:.3s}.gallery-item:nth-child(2){transition-delay:.12s}.gallery-item:nth-child(3){transition-delay:.2s}.gallery-item:nth-child(4){transition-delay:.28s}.detail-line{width:min(520px,70vw);height:26px;margin:0 auto 30px;position:relative;overflow:hidden}.detail-line:before{content:"";background:#071d2b29;height:1px;position:absolute;top:13px;left:0;right:0}.detail-line span{background:linear-gradient(90deg,transparent,var(--navy),transparent);width:24%;height:2px;animation:3.2s ease-in-out infinite detailSweep;position:absolute;top:12px;left:-25%;box-shadow:0 0 8px #071d2b40}.detail-line:after{content:"";border:1px solid var(--navy);background:var(--paper);width:8px;height:8px;position:absolute;top:9px;left:50%;transform:rotate(45deg)}@keyframes detailSweep{0%{opacity:0;left:-25%}15%{opacity:1}70%{opacity:1;left:100%}85%,to{opacity:0;left:100%}}@media (width<=620px){.logo-pieces span{transform:translate(calc((var(--col) - 1.5) * 45px),calc((var(--row) - 1.5) * 42px)) rotate(calc((var(--piece) - 8) * 4deg)) scale(.7)}[data-reveal=left],[data-reveal=right]{transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}.logo-pieces{display:none}.logo-complete{opacity:1}.detail-line span{opacity:1;left:38%}}.section-sweep{grid-column:1/-1;width:100%;height:30px;margin:0 0 55px;position:relative;overflow:hidden}.section-sweep:before{content:"";background:#071d2b2e;height:1px;position:absolute;top:14px;left:0;right:0}.section-sweep span{z-index:1;background:linear-gradient(90deg,transparent,var(--navy),transparent);width:22%;height:2px;animation:3.8s cubic-bezier(.55,.1,.35,1) infinite sectionSweep;position:absolute;top:13px;left:-24%;box-shadow:0 0 10px #071d2b47}.section-sweep:after{content:"";z-index:2;border:1px solid var(--navy);background:var(--paper);width:8px;height:8px;position:absolute;top:10px;left:50%;transform:rotate(45deg)}.light-sweep:before{background:#ffffff29}.light-sweep span{background:linear-gradient(90deg,transparent,var(--white),transparent);box-shadow:0 0 12px #ffffff59}.light-sweep:after{border-color:var(--white);background:var(--navy)}.services>.section-sweep{margin-bottom:25px}.about>.section-sweep{margin-bottom:-15px}.contact>.section-sweep{margin-bottom:55px}@keyframes sectionSweep{0%{opacity:0;left:-24%}12%{opacity:1}72%{opacity:1;left:102%}86%,to{opacity:0;left:102%}}@media (width<=620px){.section-sweep{margin-bottom:36px}.about>.section-sweep{margin-bottom:5px}}@media (prefers-reduced-motion:reduce){.section-sweep span{opacity:1;left:39%}}.hero{grid-template-columns:1fr}.hero-copy{grid-column:1/-1;max-width:1120px}.hero-top-logo{width:270px;height:270px;margin:-70px 0 -18px;position:relative}.hero-top-logo .logo-rebuild{inset:0}.hero-top-logo .scan-line{left:7%;right:7%}@media (width<=900px){.hero-signature{display:none}.hero-top-logo{width:235px;height:235px;margin:-42px 0 -8px}.hero{padding-top:120px}}@media (width<=620px){.hero-top-logo{width:205px;height:205px;margin:-28px 0 0}.hero{min-height:980px}}.gallery-item video{object-fit:cover;filter:saturate(.72);width:100%;height:100%;transition:transform .8s,filter .8s;display:block}.gallery-item:hover video{filter:saturate();transform:scale(1.04)}.hero-top-logo{margin-left:auto;margin-right:auto}.logo-pieces span{opacity:0;transform:translate(calc((var(--col) - 1.5) * 105px),calc((var(--row) - 1.5) * 105px)) rotate(calc((var(--piece) - 7.5) * 2deg)) scale(1);animation:precisionAssemble 1.55s cubic-bezier(.2,.72,.16,1) calc(55ms * var(--piece)) forwards;filter:none!important}.logo-rebuild:before,.logo-rebuild:after{content:"";z-index:7;opacity:0;pointer-events:none;background:#ffffff80;position:absolute}.logo-rebuild:before{width:1px;animation:1.75s both guideVertical;top:6%;bottom:6%;left:50%}.logo-rebuild:after{height:1px;animation:1.75s .12s both guideHorizontal;top:50%;left:6%;right:6%}.logo-rebuild .scan-line{display:none}@keyframes precisionAssemble{0%{opacity:0;transform:translate(calc((var(--col) - 1.5) * 105px),calc((var(--row) - 1.5) * 105px)) rotate(calc((var(--piece) - 7.5) * 2deg))}65%{opacity:1}82%{transform:translate(calc((var(--col) - 1.5) * -3px),calc((var(--row) - 1.5) * -3px)) rotate(0)}to{opacity:1;transform:translate(0)rotate(0)}}@keyframes precisionLock{to{opacity:1}}@keyframes guideVertical{0%{opacity:0;transform:scaleY(0)}18%{opacity:.6;transform:scaleY(1)}78%{opacity:.35}to{opacity:0}}@keyframes guideHorizontal{0%{opacity:0;transform:scaleX(0)}18%{opacity:.6;transform:scaleX(1)}78%{opacity:.35}to{opacity:0}}@media (width<=620px){.logo-pieces span{transform:translate(calc((var(--col) - 1.5) * 65px),calc((var(--row) - 1.5) * 65px));animation-name:precisionAssembleMobile}@keyframes precisionAssembleMobile{0%{opacity:0;transform:translate(calc((var(--col) - 1.5) * 65px),calc((var(--row) - 1.5) * 65px))}82%{opacity:1;transform:translate(calc((var(--col) - 1.5) * -2px),calc((var(--row) - 1.5) * -2px))}to{opacity:1;transform:none}}}.contact{isolation:isolate;position:relative;overflow:hidden}.contact:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#071d2bf0,#071d2bc7,#071d2bf0);position:absolute;inset:0}.contact-bg{z-index:-1;object-fit:cover;filter:saturate(.78)contrast(1.08);width:100%;height:100%;position:absolute;inset:0}.contact>:not(.contact-bg){z-index:2;position:relative}.hero-top-logo{height:225px;overflow:hidden}.service{isolation:isolate;min-height:455px;padding-top:190px;transition:transform .45s cubic-bezier(.16,.8,.2,1),background-color .45s,box-shadow .45s}.service-image{z-index:-1;background:#d7d3ca;height:145px;position:absolute;top:18px;left:0;right:0;overflow:hidden}.service+article .service-image{left:24px}.service-image img{filter:saturate(.68);object-position:center;transition:transform .7s cubic-bezier(.16,.8,.2,1),filter .7s}.service-image-02 img{object-position:80% center}.service-image-03 img{object-fit:contain;background:#fff}.service:hover{z-index:4;background:#ffffffb8;transform:translateY(-16px)scale(1.025);box-shadow:0 24px 55px #071d2b29}.service:hover .service-image img{filter:saturate();transform:scale(1.07)}.service h3{margin-top:38px}.service:hover i{transform:translate(7px,-7px)}@media (width<=900px){.service{min-height:430px}.hero-top-logo{height:200px}.hero-top-logo .logo-rebuild{height:235px}}@media (width<=620px){.service{min-height:430px;padding-top:190px}.service+article .service-image{left:0}.hero-top-logo{height:176px}.hero-top-logo .logo-rebuild{height:205px}}.comparison-grid{grid-template-columns:1fr 1fr;gap:2px;display:grid;position:absolute;inset:0}.comparison-grid>div{position:relative;overflow:hidden}.comparison-grid img{position:absolute;inset:0}.comparison-grid span{z-index:3;color:#fff;letter-spacing:.16em;text-transform:uppercase;background:#071d2bd6;padding:7px 10px;font-size:8px;position:absolute;top:16px;left:16px}.comparison-grid>div:last-child span{color:var(--navy);background:#f5f2ebeb;left:auto;right:16px}.comparison:hover .comparison-grid>div:first-child img{transform:scale(1.02)}.comparison:hover .comparison-grid>div:last-child img{transform:scale(1.08)}.comparison-grid:after{content:"";z-index:4;background:#ffffffbf;width:1px;position:absolute;top:0;bottom:0;left:50%}.comparison-grid:before{content:"↔";z-index:5;background:var(--white);width:36px;height:36px;color:var(--navy);border-radius:50%;place-items:center;margin:-18px;font-size:13px;display:grid;position:absolute;top:50%;left:50%;box-shadow:0 5px 18px #00000038}@media (width<=620px){.comparison-grid span{top:12px;left:12px}.comparison-grid>div:last-child span{right:12px}}.hero-top-logo{width:390px;height:305px;margin-top:-55px;margin-bottom:12px}.hero-top-logo .logo-rebuild{clip-path:none;height:390px}.logo-complete{mix-blend-mode:screen;object-position:top center}.logo-rebuild:before{bottom:24%}.logo-rebuild:after{top:42%}@media (width<=900px){.hero-top-logo{width:330px;height:260px;margin-top:-35px}.hero-top-logo .logo-rebuild{height:330px}}@media (width<=620px){.hero-top-logo{width:285px;height:225px;margin-top:-20px}.hero-top-logo .logo-rebuild{height:285px}}.realisations .gallery{grid-template-rows:620px;grid-template-columns:1fr 1fr;gap:22px;display:grid}.realisations .gallery-item{grid-area:auto}.realisations .comparison-grid{grid-template-columns:1fr 1fr}.realisations .gallery-item figcaption{color:var(--white);padding:18px 4px 0;bottom:0;transform:translateY(100%)}.realisations .gallery-item figcaption strong{font-size:29px}.realisations .comparison:after{background:linear-gradient(#0000 72%,#010f18b8)}.realisations .comparison-grid span{padding:9px 13px;top:20px;left:20px}.realisations .comparison-grid>div:last-child span{left:auto;right:20px}.realisations .comparison-grid:before{width:42px;height:42px;margin:-21px;font-size:15px}@media (width<=900px){.realisations .gallery{grid-template-rows:560px 560px;grid-template-columns:1fr}}@media (width<=620px){.realisations .gallery{grid-template-rows:470px 470px;grid-template-columns:1fr;gap:78px;margin-bottom:115px;margin-right:0;padding-right:0;display:grid;overflow:visible}.realisations .gallery-item{min-width:0;height:auto}.realisations .comparison-grid span{top:12px;left:12px}.realisations .comparison-grid>div:last-child span{right:12px}.realisations .gallery-item figcaption strong{font-size:24px}}.realisations .gallery-item figcaption{color:var(--white);background:linear-gradient(#0000,#010f18c7);justify-content:flex-end;padding:55px 22px 20px;bottom:0;left:0;right:0;transform:none}.realisations .gallery-item figcaption span{display:none}.realisations .gallery{margin-bottom:48px}.logo-pieces span{mix-blend-mode:normal;background-image:url(/media/logo-clean-transparent.png)}.logo-complete{mix-blend-mode:normal}.before-after-card{appearance:none;cursor:pointer;color:#fff;width:100%;height:100%;font:inherit;background:#061722;border:0;padding:0;position:absolute;inset:0;overflow:hidden}.before-after-card img{object-fit:contain;filter:saturate(.9);background:#061722;width:100%;height:100%;transition:opacity .65s,transform .8s cubic-bezier(.16,.8,.2,1),filter .65s;position:absolute;inset:0}.before-after-card .after-image{opacity:0;transform:translate(4%)scale(.985)}.before-after-card.show-after .before-image{opacity:0;transform:translate(-4%)scale(.985)}.before-after-card.show-after .after-image{opacity:1;transform:none}.state-label{z-index:4;letter-spacing:.18em;text-transform:uppercase;background:#071d2be6;padding:9px 13px;font-size:8px;position:absolute;top:20px;left:20px}.toggle-label{z-index:4;color:var(--navy);letter-spacing:.12em;text-transform:uppercase;background:#f5f2ebf0;align-items:center;gap:12px;padding:12px 15px;font-size:9px;display:flex;position:absolute;bottom:20px;right:20px}.toggle-label i{font-style:normal;transition:transform .3s}.before-after-card:hover .toggle-label i{transform:translate(4px)}.comparison .comparison-grid,.comparison:after{display:none}.comparison .before-after-card+figcaption{pointer-events:none}@media (width<=620px){.state-label{top:12px;left:12px}.toggle-label{bottom:12px;right:12px}}.realisations .comparison figcaption{display:none}.before-after-card .after-image{clip-path:circle(0% at 50% 48%);opacity:1;filter:saturate(.85)brightness(1.18);transition:none;transform:scale(1.035)}.before-after-card.show-after .after-image{animation:1.15s cubic-bezier(.16,.78,.18,1) forwards magicalReveal}.before-after-card.show-after .before-image{animation:.75s forwards beforeDissolve}.before-after-card:before{content:"";z-index:3;opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff14,#ffffffb8,#ffffff14,#0000);width:24%;position:absolute;top:-25%;bottom:-25%;left:-45%;transform:skew(-12deg)}.before-after-card.show-after:before{animation:1.05s .18s forwards lightPass}.magic-sparkles{z-index:5;pointer-events:none;position:absolute;inset:0}.magic-sparkles i{opacity:0;background:#fff;width:5px;height:5px;position:absolute;transform:rotate(45deg);box-shadow:0 0 10px #ffffffe6}.magic-sparkles i:first-child{top:28%;left:25%}.magic-sparkles i:nth-child(2){width:4px;height:4px;top:22%;left:68%}.magic-sparkles i:nth-child(3){width:6px;height:6px;top:66%;left:78%}.magic-sparkles i:nth-child(4){width:3px;height:3px;top:74%;left:38%}.show-after .magic-sparkles i{animation:sparklePop .75s ease var(--spark-delay,.45s) both}.show-after .magic-sparkles i:nth-child(2){--spark-delay:.62s}.show-after .magic-sparkles i:nth-child(3){--spark-delay:.78s}.show-after .magic-sparkles i:nth-child(4){--spark-delay:.9s}@keyframes magicalReveal{0%{clip-path:circle(0% at 50% 48%);filter:saturate(.85)brightness(1.18);transform:scale(1.035)}70%{filter:saturate()brightness(1.06)}to{clip-path:circle(78% at 50% 48%);filter:saturate(.95)brightness();transform:scale(1)}}@keyframes beforeDissolve{to{opacity:0;filter:blur(3px);transform:scale(.985)}}@keyframes lightPass{0%{opacity:0;left:-45%}15%{opacity:1}85%{opacity:.75}to{opacity:0;left:125%}}@keyframes sparklePop{0%{opacity:0;transform:rotate(45deg)scale(0)}35%{opacity:1;transform:rotate(135deg)scale(1.8)}to{opacity:0;transform:rotate(225deg)scale(.2)}}@media (prefers-reduced-motion:reduce){.before-after-card.show-after .after-image{clip-path:none;filter:none;animation:none;transform:none}.before-after-card:before,.magic-sparkles{display:none}}.logo-pieces span{will-change:transform,opacity;transform:translate(calc((var(--col) - 1.5) * 72px),calc((var(--row) - 1.5) * 72px)) rotate(calc((var(--piece) - 7.5) * 1.2deg));animation:smoothAssemble 2.05s cubic-bezier(.22,.68,.18,1) calc(35ms * var(--piece)) forwards}.logo-complete{animation:.55s 1.95s forwards smoothLogoLock}.logo-rebuild:before{animation-duration:2.2s}.logo-rebuild:after{animation-duration:2.2s;animation-delay:80ms}@keyframes smoothAssemble{0%{opacity:0;transform:translate(calc((var(--col) - 1.5) * 72px),calc((var(--row) - 1.5) * 72px)) rotate(calc((var(--piece) - 7.5) * 1.2deg)) scale(.985)}18%{opacity:.45}72%{opacity:1;transform:translate(calc((var(--col) - 1.5) * 2px),calc((var(--row) - 1.5) * 2px)) rotate(0) scale(1)}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes smoothLogoLock{0%{opacity:0}to{opacity:1}}@media (width<=620px){.logo-pieces span{transform:translate(calc((var(--col) - 1.5) * 48px),calc((var(--row) - 1.5) * 48px));animation-name:smoothAssemble}}@media (width>=901px){.hero-copy{width:100%;max-width:none}.hero-top-logo{width:540px;height:420px;margin:-92px auto 8px}.hero-top-logo .logo-rebuild{width:540px;height:540px;left:50%;right:auto;transform:translate(-50%)}}.direct-contact{background:var(--navy);color:var(--white);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1.35fr;align-items:center;gap:36px;padding:34px 7vw;display:grid}.direct-contact>p{margin:0;font:italic 30px Cormorant Garamond,serif}.direct-contact a{letter-spacing:.03em;flex-direction:column;gap:8px;font-size:15px;transition:opacity .25s;display:flex}.direct-contact a:hover{opacity:.65}.direct-contact a span{letter-spacing:.18em;text-transform:uppercase;color:#ffffff7a;font-size:8px}@media (width<=700px){.direct-contact{grid-template-columns:1fr;gap:25px;padding:38px 24px}.direct-contact>p{font-size:28px}}@media (width>=901px){.site-header nav{grid-template-columns:repeat(3,130px);gap:0;display:grid;position:absolute;left:50%;transform:translate(-50%)}.site-header nav a{text-align:center}.hero-top-logo{margin-left:0;margin-right:0;position:relative;left:50%;transform:translate(-50%)}}
