@font-face{font-family:"Onest";src:url("/assets/fonts/Onest[wght].ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"Golos Text";src:url("/assets/fonts/GolosText[wght].ttf") format("truetype");font-style:normal;font-weight:400 900;font-display:swap}
:root{--ink:#142229;--paper:#f4f6f3;--white:#fbfcfa;--mist:#e5ebe8;--line:#d3dcd8;--teal:#37616c;--signal:#c65b48;--muted:#718087;--head:"Onest","Segoe UI",sans-serif;--body:"Golos Text","Segoe UI",sans-serif;--ease:cubic-bezier(.23,1,.32,1);--pad:clamp(1.2rem,5.4vw,6.8rem);font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;min-width:320px;background:var(--paper)}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}::selection{color:var(--white);background:var(--teal)}:focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.skip{position:fixed;z-index:20;top:.7rem;left:.7rem;padding:.8rem 1rem;color:#fff;background:var(--ink);transform:translateY(-160%)}.skip:focus{transform:translateY(0)}
.header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;min-height:5.4rem;padding:0 var(--pad);border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:.65rem;font:700 .92rem var(--head);letter-spacing:.06em}.brand-mark{display:grid;width:2rem;height:2rem;place-items:center;color:var(--white);background:var(--signal);font:700 1.15rem var(--head)}
.header nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.7rem);font-size:.82rem;font-weight:500}.header nav>a:not(.nav-cta){transition:color 160ms ease}
.nav-cta{display:inline-flex;min-height:2.8rem;align-items:center;padding:0 1.15rem;color:var(--white);background:var(--ink);transition:background 180ms var(--ease),transform 180ms var(--ease)}
.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(24rem,.98fr);min-height:min(48rem,calc(100svh - 5.4rem));padding:clamp(4rem,8vw,8rem) var(--pad) 7rem;overflow:hidden}
.hero:before{position:absolute;inset:0 0 0 49%;content:"";pointer-events:none;background:linear-gradient(120deg,transparent 0 16%,rgba(221,230,225,.5) 16% 16.15%,transparent 16.15%)}
.hero-copy{z-index:1;align-self:center;max-width:46rem;padding-bottom:1rem}.location{display:flex;align-items:center;gap:.6rem;margin:0 0 1.65rem;color:var(--teal);font-size:.78rem;font-weight:600}.location i{width:.48rem;height:.48rem;border-radius:50%;background:var(--signal);box-shadow:0 0 0 4px #c65b481f}
.hero h1{max-width:13ch;margin:0;font:500 clamp(3.2rem,7.1vw,6.8rem)/.99 var(--head);letter-spacing:-.075em}.hero h1 em{color:var(--teal);font-style:normal}
.hero-intro{max-width:29rem;margin:1.8rem 0 0;color:#4f6066;font-size:clamp(1rem,1.35vw,1.14rem);line-height:1.7}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.6rem;margin-top:2.1rem}.button{display:inline-flex;min-height:3.25rem;align-items:center;justify-content:center;gap:1.8rem;padding:0 1.2rem;border:0;font-size:.83rem;font-weight:600;cursor:pointer;transition:transform 140ms var(--ease),background 180ms var(--ease)}.button:active{transform:scale(.98)}.primary{color:var(--white);background:var(--ink)}.primary span{color:#e5a091}
.text-link{display:inline-flex;align-items:center;gap:.8rem;padding:.5rem 0;color:var(--teal);font-size:.81rem;font-weight:600;border-bottom:1px solid #37616c66;transition:color 160ms ease,border-color 160ms ease}
.hero-proof{display:grid;gap:.2rem;margin:3rem 0 0;padding-left:2.9rem;position:relative;font-size:.75rem}.hero-proof:before{position:absolute;top:.55rem;left:0;width:2rem;height:2px;background:var(--signal);content:""}.hero-proof b{font:600 1.06rem var(--head)}.hero-proof span{color:var(--muted)}
.hero-art{position:relative;display:grid;align-items:center;justify-items:center;min-height:29rem;align-self:center}.hero-art svg{width:min(100%,41rem);height:auto;overflow:visible}.art-caption{position:absolute;z-index:1;top:7%;right:4%;font:500 .83rem/1.45 var(--head)}.art-note{position:absolute;bottom:0;left:6%;margin:0;color:var(--muted);font-size:.68rem;line-height:1.5}
.orbit,.room,.room-back,.room-inner,.barrier,.baseline{fill:none;stroke:#8ea0a2;stroke-width:1.2}.orbit{stroke-dasharray:1 9;stroke-linecap:round;opacity:.8}.room{stroke:var(--ink);stroke-width:1.6}.room-fill{fill:#e8edea}.room-back{stroke:#a8b6b2;stroke-width:1.5}.room-inner{stroke:#71878b;stroke-width:1.5}.barrier{stroke:var(--signal);stroke-width:3.4}.wave-track,.wave,.quiet{fill:none;stroke-linecap:round;stroke-linejoin:round}.wave-track{stroke:#d8a297;stroke-width:2;opacity:.4}.wave{stroke:url(#signal);stroke-width:3;opacity:0;transform:scale(.985);transform-origin:center;animation:signal-in 1.15s 180ms var(--ease) forwards}.quiet{stroke:var(--teal);stroke-width:1.5;opacity:.75}.baseline{stroke:#738287}.hero-art text{fill:#78858a;font:600 9px var(--body);letter-spacing:.13em}.grain-wash{fill:url(#grain);opacity:.52;pointer-events:none}
.hero-bottom{position:absolute;right:var(--pad);bottom:0;left:var(--pad);display:flex;min-height:4.2rem;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.69rem}.hero-bottom a{font-weight:600;color:var(--ink)}
.section{padding-right:var(--pad);padding-left:var(--pad)}.eyebrow{margin:0 0 1.2rem;color:var(--signal);font-size:.69rem;font-weight:700}
.intro{display:grid;grid-template-columns:minmax(6rem,.28fr) 1fr;gap:4vw;padding-top:clamp(6rem,13vw,12rem);padding-bottom:clamp(5rem,11vw,9rem);color:var(--white);background:var(--ink)}
.side-label{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding-top:.45rem;color:#a4b3b4;font-size:.7rem}.side-label i{width:1px;height:4rem;background:#607379}
.intro .eyebrow,.method .eyebrow{color:#93aeb2}.intro h2,.section-title h2,.method-title h2,.experience h2,.contact h2{margin:0;font:500 clamp(2.35rem,5vw,4.7rem)/1.08 var(--head);letter-spacing:-.06em}.intro h2 span{color:#98b0b0}
.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-top:2.8rem}.intro-bottom p{max-width:39rem;margin:0;color:#c3ceca;font-size:clamp(1rem,1.4vw,1.23rem);line-height:1.72}.light-link{flex:0 0 auto;color:var(--white);border-color:#677a7b}
.noise{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);background:var(--white)}.section-title{max-width:60rem;margin:0 auto 3.3rem}.section-title h2{max-width:15ch}.noise-list{max-width:76rem;margin:0 auto;border-top:1px solid var(--line)}
.noise-list article{display:grid;grid-template-columns:4.5rem minmax(0,1fr) 8rem;align-items:center;gap:1.5rem;min-height:9rem;padding:1.4rem 0;border-bottom:1px solid var(--line)}.noise-list article>span{align-self:start;padding-top:.3rem;color:var(--signal);font:600 .72rem var(--head)}.noise-list h3,.steps h3{margin:0 0 .45rem;font:500 clamp(1.2rem,2vw,1.7rem)/1.2 var(--head);letter-spacing:-.035em}.noise-list p{max-width:39rem;margin:0;color:#657379;font-size:.88rem;line-height:1.65}
.wave-icon{position:relative;display:flex;height:3.8rem;align-items:center;justify-content:center;gap:.45rem;color:var(--teal)}.wave-icon:before{position:absolute;width:5.5rem;height:1px;background:#d4ddda;content:""}.wave-icon:after{z-index:1;width:2px;height:2.8rem;background:currentColor;box-shadow:-.8rem .35rem currentColor,.8rem -.25rem currentColor;content:""}
.method{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,9vw,8rem);color:var(--white);background:var(--teal)}
.method-title{max-width:76rem;margin:0 auto 4rem}.method-title h2{margin-top:1rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);max-width:76rem;margin:0 auto;border-top:1px solid #ebf2ed52}
.steps article{min-height:14rem;padding:1.4rem 2rem 1rem 0}.steps article+article{padding-left:2rem;border-left:1px solid #ebf2ed52}.steps article>span{display:inline-block;margin:0 0 2.4rem;color:#f2aa98;font:600 .78rem var(--head)}.steps h3{margin-bottom:.8rem}.steps p{max-width:21rem;margin:0;color:#d1dfdb;font-size:.85rem;line-height:1.7}
.method-note{max-width:76rem;margin:2.4rem auto 0;padding-top:1.4rem;border-top:1px solid #ebf2ed52;color:#d1dfdb;font-size:.76rem;line-height:1.6}
.experience{display:grid;grid-template-columns:minmax(8rem,.38fr) 1fr minmax(8rem,.2fr);align-items:center;gap:3vw;padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(4rem,8vw,8rem);background:var(--mist)}.experience-mark{color:var(--teal);font:300 clamp(5rem,11vw,10rem)/1 var(--head)}.experience .eyebrow{margin-bottom:1rem}.experience h2{font-size:clamp(2.5rem,4.8vw,4.5rem)}.experience>div>p:last-child{max-width:33rem;margin:1.2rem 0 0;color:#5e6d71;font-size:.92rem;line-height:1.7}
.years{display:flex;align-items:center;gap:.6rem;color:var(--teal);font:500 clamp(2.7rem,5vw,5rem)/1 var(--head);letter-spacing:-.08em}.years small{font:400 .69rem/1.35 var(--body);letter-spacing:0}
.directions{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem)}.directions .section-title{display:grid;grid-template-columns:1fr minmax(13rem,.55fr);align-items:end;column-gap:3rem}.directions .eyebrow{grid-column:1/-1}.directions .section-title h2{grid-column:1}.section-note{max-width:24rem;margin:0 0 .35rem;color:var(--muted);font-size:.79rem;line-height:1.6}
.direction-list{display:grid;grid-template-columns:repeat(3,1fr);max-width:76rem;margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.direction-list a{display:grid;grid-template-columns:3rem 1fr 1.5rem;align-items:center;gap:1rem;min-height:7.6rem;padding:1rem 1.2rem 1rem 0;font:500 .95rem/1.4 var(--head);transition:color 170ms ease}.direction-list a+a{padding-left:1.2rem;border-left:1px solid var(--line)}.direction-list i{display:grid;width:2.7rem;height:2.7rem;place-items:center;border:1px solid #b8c8c3;border-radius:50%;color:var(--teal);font:normal 1.3rem var(--head)}.direction-list span{justify-self:end;color:var(--signal)}
.contact{display:grid;grid-template-columns:1fr minmax(18rem,.74fr);gap:clamp(3rem,9vw,9rem);padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,9vw,8rem);background:#e8edeb}.contact>div{max-width:38rem}.contact h2{max-width:11ch}.contact>div>p:not(.eyebrow){max-width:29rem;margin:1.3rem 0 0;color:#627177;font-size:.95rem;line-height:1.7}.contact .location{margin-top:2rem}
#contact-form{display:grid;gap:1.1rem}#contact-form label{display:grid;gap:.5rem;color:#59696f;font-size:.72rem;font-weight:600}#contact-form input,#contact-form textarea{width:100%;min-height:3rem;padding:.8rem .15rem;border:0;border-bottom:1px solid #b8c5c0;border-radius:0;background:transparent;color:var(--ink);font-size:1rem;resize:vertical}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#9ba7a8}#contact-form input:focus,#contact-form textarea:focus{outline:0;border-color:var(--teal);box-shadow:0 1px var(--teal)}#contact-form .button{justify-self:start;margin-top:.4rem}#form-note{margin:0;color:#778488;font-size:.68rem;line-height:1.5}#form-note[data-result=demo]{color:var(--teal);font-weight:600}
.footer{display:flex;min-height:5.7rem;align-items:center;justify-content:space-between;gap:1rem;padding:1rem var(--pad);color:#a9b7b7;background:var(--ink);font-size:.7rem}.footer .brand{color:var(--white)}.footer .brand-mark{color:var(--ink);background:#efaa96}
@keyframes signal-in{to{opacity:1;transform:scale(1)}}
@media(max-width:940px){.header{min-height:4.7rem}.header nav{gap:1rem;font-size:.75rem}.hero{grid-template-columns:minmax(0,1fr) minmax(19rem,.85fr);min-height:43rem;padding-top:5rem}.hero h1{font-size:clamp(3.3rem,8vw,5.8rem)}.hero-art{min-height:25rem}.steps article{padding-right:1rem}.steps article+article{padding-left:1rem}.direction-list{grid-template-columns:1fr}.direction-list a{min-height:6rem;padding:1rem 0}.direction-list a+a{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:700px){
html{scroll-padding-top:4.5rem}.header{position:sticky;top:0;min-height:4.35rem;padding:0 1.15rem;background:var(--paper)}.brand-mark{width:1.8rem;height:1.8rem}
.menu-toggle{display:inline-flex;align-items:center;gap:.55rem;padding:.7rem 0 .7rem .8rem;border:0;background:transparent;font-size:.76rem;font-weight:600}.menu-toggle i{display:block;width:1rem;height:1px;background:currentColor;transition:transform 170ms var(--ease)}.menu-toggle[aria-expanded=true] i:nth-of-type(1){transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:nth-of-type(2){transform:translateY(-3px) rotate(-45deg)}
.header nav{position:absolute;top:calc(100% + 1px);right:0;left:0;display:grid;gap:0;padding:.5rem 1.15rem 1rem;border-bottom:1px solid var(--line);background:var(--paper);opacity:0;pointer-events:none;transform:translateY(-.45rem);transition:opacity 160ms var(--ease),transform 160ms var(--ease)}.header nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.header nav a{padding:.9rem .25rem;border-bottom:1px solid var(--line)}.header nav .nav-cta{justify-content:center;margin-top:.7rem;border:0}
.hero{display:flex;flex-direction:column;min-height:auto;padding:4rem 1.2rem 6.5rem}.hero:before{inset:42% 0 0;background:linear-gradient(140deg,transparent 0 28%,#dde6e573 28% 28.2%,transparent 28.2%)}.hero-copy{padding:0}.location{margin-bottom:1.3rem}.hero h1{max-width:12ch;font-size:clamp(3.05rem,14.1vw,5rem);line-height:.99}.hero-intro{margin-top:1.3rem;font-size:.98rem}.actions{align-items:flex-start;gap:1rem;margin-top:1.6rem}.actions .button{min-height:3rem}.text-link{font-size:.75rem}.hero-proof{margin-top:2rem}.hero-art{width:100%;min-height:18rem;margin-top:1rem}.hero-art svg{width:115%;max-width:35rem}.art-caption{top:3%;right:3%;font-size:.73rem}.art-note{bottom:0;left:3%}
.hero-bottom{right:1.2rem;left:1.2rem;display:grid;grid-template-columns:1fr 1fr;min-height:4.6rem;gap:.4rem .7rem;padding:.7rem 0;font-size:.61rem}.hero-bottom a{grid-column:2;justify-self:end}.hero-bottom span:nth-child(2){grid-row:2}
.intro{grid-template-columns:1fr;gap:2rem;padding-top:4.8rem;padding-bottom:4.8rem}.side-label{flex-direction:row;align-items:center;gap:.65rem}.side-label i{width:2.4rem;height:1px}.intro h2,.section-title h2,.method-title h2,.experience h2,.contact h2{font-size:clamp(2.3rem,10.4vw,3.9rem)}.intro-bottom{display:grid;gap:1.4rem;margin-top:1.7rem}.intro-bottom p{font-size:1rem}
.noise,.directions{padding-top:4.7rem;padding-bottom:4.7rem}.section-title{margin-bottom:2rem}.noise-list article{grid-template-columns:2rem 1fr;gap:.8rem;min-height:auto;padding:1.35rem 0}.noise-list h3{font-size:1.23rem}.noise-list p{font-size:.8rem}.wave-icon{display:none}
.method{padding-top:4.7rem;padding-bottom:4.5rem}.method-title{margin-bottom:2.5rem}.steps{grid-template-columns:1fr}.steps article{min-height:auto;padding:1.2rem 0 1.45rem}.steps article+article{padding-left:0;border-left:0;border-top:1px solid #ebf2ed52}.steps article>span{margin-bottom:1.2rem}.steps p{max-width:33rem}.method-note{margin-top:1.6rem}
.experience{grid-template-columns:4.6rem 1fr;gap:1rem;padding-top:3.8rem;padding-bottom:3.8rem}.experience-mark{font-size:4.4rem}.years{grid-column:2;margin-top:.4rem;font-size:2.1rem}.years small br{display:none}
.directions .section-title{display:block}.section-note{margin-top:1.2rem}.direction-list a{grid-template-columns:2.8rem 1fr 1.3rem;gap:.7rem;min-height:5.8rem}
.contact{grid-template-columns:1fr;gap:2.4rem;padding-top:4.7rem;padding-bottom:4.7rem}.footer{display:grid;grid-template-columns:1fr auto;min-height:6rem;padding:1rem 1.15rem}.footer>span{grid-column:1/-1;grid-row:2}.footer>a:last-child{grid-column:2;grid-row:1}
}
@media(hover:hover) and (pointer:fine){.noise-list article:hover>span{color:var(--teal)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.wave{opacity:1;transform:none}}

.hero-photo{display:block;width:100%;height:100%;max-height:35rem;object-fit:cover;object-position:center;border-radius:2px}.hero-art{overflow:hidden}.art-caption{padding:.7rem 1rem;color:var(--ink);background:#f4f6f3e8}.art-note{padding:.5rem .65rem;color:var(--ink);background:#f4f6f3e8}
.company-range{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3rem;padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(5rem,9vw,8rem);color:var(--white);background:var(--ink)}.company-range>div:first-child{max-width:59rem}.company-range .eyebrow{color:#efaa96}.company-range h2{margin:0;font:500 clamp(2.5rem,5vw,4.8rem)/1.05 var(--head);letter-spacing:-.06em}.company-range>div>p:not(.eyebrow){max-width:47rem;color:#c3ceca;font-size:1rem;line-height:1.75}.range-links{display:flex;flex-wrap:wrap;gap:1.6rem;margin-top:2rem}.range-links a{padding-bottom:.35rem;border-bottom:1px solid #93aeb2;color:#fff;font-size:.82rem}.range-mark{display:flex;align-items:center;gap:.75rem;color:#efaa96}.range-mark span{font:500 clamp(4rem,8vw,7rem)/1 var(--head);letter-spacing:-.08em}.range-mark small{font-size:.72rem;line-height:1.45;color:#c3ceca}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:84rem;margin:0 auto;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{display:flex;min-height:14rem;flex-direction:column;align-items:flex-start;padding:1.55rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);transition:background 180ms var(--ease),color 180ms var(--ease)}.service-card>span{margin-bottom:2rem;color:var(--signal);font-size:.64rem;font-weight:700;letter-spacing:.08em}.service-card h3{margin:0 0 .55rem;font:500 clamp(1.12rem,1.7vw,1.45rem)/1.2 var(--head);letter-spacing:-.03em}.service-card p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.service-card b{margin-top:auto;padding-top:1.2rem;font-size:.66rem;color:#efaa96}.service-card:hover p{color:#d1dfdb}.service-card.featured{color:var(--white);background:var(--teal)}.service-card.featured p{color:#d1dfdb}.catalog-note{max-width:76rem;margin:1.4rem auto 0;color:var(--muted);font-size:.72rem;line-height:1.6}
.scene-gallery{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);background:var(--mist)}.scene-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.scene-grid figure{position:relative;min-width:0;margin:0;overflow:hidden;background:#ccd5d2}.scene-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 250ms var(--ease)}@media(hover:hover) and (pointer:fine){.scene-grid figure:hover img{transform:scale(1.025)}}.scene-grid figcaption{position:absolute;right:.8rem;bottom:.8rem;padding:.55rem .75rem;color:var(--white);background:#142229d9;font-size:.7rem}
.portfolio-preview{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.portfolio-grid>a{display:flex;min-width:0;flex-direction:column;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.portfolio-grid img{width:100%;aspect-ratio:1.55;object-fit:cover;background:var(--mist)}.portfolio-grid span{margin-top:1.05rem;color:var(--signal);font-size:.63rem;font-weight:700;letter-spacing:.08em}.portfolio-grid h3{margin:.5rem 0 0;font:500 clamp(1.1rem,1.8vw,1.5rem)/1.25 var(--head)}.archive-link{display:inline-flex;margin-top:1.7rem}
.archive-page{min-height:75vh;padding:clamp(3rem,7vw,6rem) var(--pad)}.archive-page>h1{max-width:15ch;margin:.2rem 0 1rem;font:500 clamp(3rem,7vw,6rem)/.98 var(--head);letter-spacing:-.07em}.archive-lead{max-width:54rem;color:#657379;font-size:1rem;line-height:1.7}.archive-toolbar{position:sticky;top:0;z-index:3;margin:2.5rem calc(var(--pad) * -1) 1.5rem;padding:1rem var(--pad);background:#f4f6f3ed;backdrop-filter:blur(14px);border-block:1px solid var(--line)}.archive-search{display:grid;max-width:36rem;gap:.35rem;font-size:.7rem;font-weight:600}.archive-search input{min-height:2.8rem;padding:.6rem .8rem;border:1px solid var(--line);background:#fff}.archive-filters{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.8rem}.archive-filters button{padding:.45rem .7rem;border:1px solid var(--line);border-radius:99px;background:transparent;color:var(--ink);font:500 .68rem var(--body);cursor:pointer}.archive-filters button[aria-pressed=true]{color:#fff;background:var(--teal);border-color:var(--teal)}.archive-count{margin:.75rem 0 0;color:var(--muted);font-size:.68rem}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.archive-card{display:flex;min-width:0;flex-direction:column;align-items:flex-start;min-height:16rem;padding:1.25rem;border:1px solid var(--line);background:var(--white)}.archive-meta{margin:0 0 1.1rem;color:var(--signal);font-size:.65rem;font-weight:700;letter-spacing:.06em}.archive-card h2{margin:0 0 .8rem;font:500 1.18rem/1.25 var(--head)}.archive-description{display:-webkit-box;overflow:hidden;margin:0;color:#657379;font-size:.78rem;line-height:1.65;-webkit-line-clamp:5;-webkit-box-orient:vertical}.archive-basis{margin-top:.65rem;color:var(--muted);font-size:.65rem;line-height:1.4}.archive-card a{margin-top:auto;padding-top:1rem;color:var(--teal);font-size:.7rem;font-weight:600}.archive-card details{margin-top:.8rem;font-size:.75rem;line-height:1.55}.archive-card details summary{cursor:pointer;font-weight:600}.archive-card details p{color:#657379}.archive-empty{padding:2rem 0;color:var(--muted)}.archive-header nav{gap:1.3rem}.archive-header nav a{font-size:.78rem}
.project-featured{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;gap:.8rem;margin:3.5rem 0 1.5rem}.project-featured-heading{grid-column:1/-1;display:flex;align-items:end;justify-content:space-between;gap:2rem;padding-bottom:.65rem}.project-featured-heading .eyebrow{margin:0;color:var(--signal)}.project-featured-heading h2{max-width:18ch;margin:0;font:500 clamp(1.6rem,3vw,2.5rem)/1.05 var(--head);letter-spacing:-.045em}.project-highlight{position:relative;display:block;grid-column:span 3;min-height:15rem;overflow:hidden;color:#fff;background:#142229;isolation:isolate}.project-highlight-main{grid-column:span 6;grid-row:span 2;min-height:31rem}.project-highlight img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 250ms var(--ease);z-index:-2}.project-highlight-main img{object-position:center}.project-highlight-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(8,17,21,.78) 100%);z-index:-1}.project-highlight-copy{position:absolute;inset:auto 1.1rem 1.05rem;display:grid;gap:.35rem}.project-highlight-copy>span{font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:#e3e9e7}.project-highlight-copy strong{max-width:24ch;font:500 clamp(1.15rem,2vw,1.75rem)/1.08 var(--head);letter-spacing:-.025em}.project-highlight-copy em{margin-top:.15rem;font-size:.7rem;font-style:normal;opacity:.8}@media(hover:hover) and (pointer:fine){.project-highlight:hover img{transform:scale(1.035)}}.project-highlight:focus-visible{outline:3px solid var(--signal);outline-offset:3px}.project-highlight-main .project-highlight-copy strong{font-size:clamp(1.5rem,3.1vw,2.5rem)}
@media(max-width:940px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.hero-photo{max-height:none;min-height:16rem}.company-range{grid-template-columns:1fr;gap:1.3rem;padding-top:4rem;padding-bottom:4rem}.range-mark{grid-row:1;justify-self:start}.range-mark span{font-size:3.6rem}.range-mark small br{display:none}.company-range h2{font-size:clamp(2.3rem,10vw,3.6rem)}.service-grid{grid-template-columns:1fr}.service-card{min-height:11rem;padding:1.2rem}.service-card>span{margin-bottom:1.35rem}.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-grid{grid-template-columns:1fr}.scene-grid img{aspect-ratio:1.2}.portfolio-grid img{aspect-ratio:1.35}.archive-grid{grid-template-columns:1fr}.archive-toolbar{top:4.35rem}.archive-header{position:sticky;top:0}.archive-header nav{gap:.65rem;font-size:.68rem}.archive-header nav a{font-size:.68rem}.archive-page{padding-top:3rem}}

/* Flagship apartment landing */
.apartment-page{background:var(--paper)}.apartment-header{position:sticky;top:0;background:#f4f6f3ed;backdrop-filter:blur(14px)}.apartment-header nav{gap:clamp(.8rem,1.7vw,1.65rem)}.apartment-header nav>a{white-space:nowrap}.apartment-page .eyebrow{margin:0 0 1rem;color:var(--signal);font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.apartment-hero{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr);min-height:min(48rem,calc(100svh - 5rem));padding:clamp(3.5rem,7vw,7rem) var(--pad) 6rem;overflow:hidden;background:var(--white)}.apartment-hero-copy{z-index:1;align-self:center;max-width:43rem;padding:1.5rem 0}.apartment-hero-copy h1{max-width:11ch;margin:0;font:500 clamp(3.4rem,7.2vw,7rem)/.96 var(--head);letter-spacing:-.078em}.apartment-hero-copy h1 em,.apartment-section-heading h2 em,.surface-layout h2 em,.apartment-proof-section h2 em{color:var(--teal);font-style:normal}.live-dot{display:inline-block;width:.48rem;height:.48rem;margin-right:.45rem;border-radius:50%;background:var(--signal);box-shadow:0 0 0 4px #c65b481d}.apartment-lead{max-width:34rem;margin:1.55rem 0 0;color:#5a696f;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.7}.apartment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:2rem}.apartment-proof{display:flex;align-items:baseline;gap:.7rem;margin-top:2.5rem;padding-top:1rem;border-top:1px solid var(--line);max-width:28rem}.apartment-proof strong{font:600 1.1rem var(--head)}.apartment-proof span{color:var(--muted);font-size:.72rem}.apartment-hero-visual{position:relative;min-height:32rem;margin:0 0 0 clamp(1rem,4vw,4.4rem);overflow:hidden;background:#c6ceca}.apartment-hero-visual:before{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,transparent 65%,#14222970)}.apartment-hero-visual img{display:block;width:100%;height:100%;min-height:32rem;object-fit:cover}.apartment-hero-visual figcaption{position:absolute;z-index:2;right:1.2rem;bottom:1.15rem;left:1.2rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;color:white;font-size:.75rem}.apartment-hero-visual figcaption small{max-width:13rem;color:#e7eeeb;text-align:right;font-size:.62rem;line-height:1.4}.visual-index{position:absolute;top:1rem;right:1rem;color:#fff;font:500 .67rem var(--head);letter-spacing:.15em}.scroll-cue{position:absolute;right:var(--pad);bottom:1.5rem;display:grid;width:2.4rem;height:2.4rem;place-items:center;border:1px solid #b9c6c2;border-radius:50%;color:var(--teal);transition:background 150ms ease,color 150ms ease}.apartment-intro{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(5rem,9vw,8rem);background:var(--paper)}.apartment-kicker{display:flex;align-items:center;gap:.7rem;color:var(--signal);font:600 .67rem var(--head);letter-spacing:.1em;text-transform:uppercase}.apartment-kicker>span:first-child{font-variant-numeric:tabular-nums}.apartment-kicker>span+span{padding-left:.7rem;border-left:1px solid var(--line);color:var(--muted)}.apartment-section-heading{max-width:60rem;margin:2.8rem 0 3.5rem auto}.apartment-section-heading h2,.method-head h2,.surface-layout h2,.brief-copy h2,.apartment-proof-section h2,.apartment-final h2{margin:0;font:500 clamp(2.8rem,6vw,5.9rem)/1.02 var(--head);letter-spacing:-.07em}.apartment-section-heading>p:last-child{max-width:37rem;margin:1.4rem 0 0;color:#66747a;font-size:1rem;line-height:1.75}.noise-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.noise-card{position:relative;display:flex;min-height:18rem;flex-direction:column;align-items:flex-start;padding:1.4rem 1.5rem 1.3rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fbfcfa;transition:background 180ms ease,color 180ms ease}.noise-number{color:var(--signal);font:600 .68rem var(--head)}.noise-glyph{position:relative;display:flex;width:4.3rem;height:2.7rem;align-items:center;justify-content:center;gap:.28rem;margin:1.2rem 0 1.1rem;color:var(--teal)}.noise-glyph i{display:block;width:1px;height:1.4rem;background:currentColor;transform-origin:center;opacity:.8}.glyph-air i:nth-child(1),.glyph-system i:nth-child(1){height:.7rem}.glyph-air i:nth-child(2){height:2.1rem}.glyph-air i:nth-child(3),.glyph-system i:nth-child(3){height:1rem}.glyph-impact i{width:.42rem;height:.42rem;border-radius:50%;background:var(--signal);opacity:1}.glyph-impact i:nth-child(2){width:2rem;height:1px;border-radius:0;background:var(--teal)}.noise-card h3{margin:0 0 .55rem;font:500 1.35rem var(--head);letter-spacing:-.035em}.noise-card p{max-width:27rem;margin:0;color:#68777c;font-size:.82rem;line-height:1.65}.noise-example{margin-top:auto;padding-top:1.2rem;color:var(--teal);font-size:.64rem;letter-spacing:.025em}.acoustic-note{display:flex;align-items:center;gap:.9rem;max-width:57rem;margin:1.4rem 0 0 auto;color:#69777c;font-size:.75rem;line-height:1.6}.acoustic-note>span{color:var(--signal);font-size:1.6rem}.apartment-method{padding:clamp(5rem,10vw,9rem) var(--pad);color:#fff;background:var(--ink)}.apartment-method-inner{max-width:84rem;margin:0 auto}.apartment-kicker.light>span+span{color:#b4c0bd;border-color:#516469}.method-head{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;margin:3rem 0}.method-head .eyebrow{grid-column:1/-1;margin-bottom:-2rem;color:#efaa96}.method-head h2{grid-column:1;max-width:13ch}.method-head>p:last-child{grid-column:2;max-width:28rem;margin:0 0 .3rem;color:#c0ceca;font-size:.91rem;line-height:1.7}.apartment-steps{border-top:1px solid #526367}.apartment-steps article{display:grid;grid-template-columns:3.5rem minmax(0,1fr) 7.5rem;align-items:start;gap:1.2rem;padding:1.45rem 0;border-bottom:1px solid #526367}.apartment-steps article>span{padding-top:.2rem;color:#efaa96;font:500 .72rem var(--head)}.apartment-steps h3{margin:0 0 .45rem;font:500 1.2rem var(--head)}.apartment-steps p{max-width:38rem;margin:0;color:#bcc9c6;font-size:.82rem;line-height:1.65}.apartment-steps b{justify-self:end;color:#aab9b7;font-size:.65rem;font-weight:500}.method-disclaimer{margin:1.2rem 0 0;color:#9aaba9;font-size:.67rem;line-height:1.6}.apartment-surfaces{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);background:var(--white)}.surface-layout{display:grid;grid-template-columns:.76fr 1.24fr;align-items:center;gap:clamp(2rem,7vw,7rem);margin-top:3rem}.surface-layout h2{max-width:8ch}.surface-layout>div:first-child>p:not(.eyebrow){max-width:30rem;color:#637278;font-size:.9rem;line-height:1.7}.surface-layout>div:first-child .text-link{margin-top:1rem}.surface-map{position:relative;display:grid;grid-template-columns:1fr 1.25fr 1fr;grid-template-rows:4rem minmax(12rem,1fr) 4rem;min-height:24rem;padding:.6rem;background:#e7eeeb;border:1px solid #d4ded9}.room-ceiling,.room-floor{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;color:#52666a;font:600 .64rem var(--head);letter-spacing:.1em}.room-ceiling{border-bottom:1px solid #a7b7b1}.room-floor{border-top:1px solid #a7b7b1}.room-ceiling span,.room-floor span,.room-wall span{color:#718087;font:400 .65rem var(--body);letter-spacing:0}.room-wall{display:flex;flex-direction:column;justify-content:center;gap:.6rem;padding:.65rem;color:#52666a;font:600 .62rem var(--head);letter-spacing:.08em}.room-wall.left{border-right:1px solid #a7b7b1}.room-wall.right{border-left:1px solid #a7b7b1}.room-core{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;background:#fbfcfa}.room-wave{color:var(--signal);font-size:2.3rem}.room-core strong{font:500 1.1rem var(--head)}.room-core small{color:#758187;font-size:.61rem}.apartment-brief{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(2rem,8vw,8rem);padding:clamp(5rem,10vw,9rem) var(--pad);color:#fff;background:#29434a}.brief-copy{position:sticky;top:7rem;align-self:start;max-width:34rem}.brief-copy .eyebrow{margin-top:3rem;color:#efaa96}.brief-copy h2{font-size:clamp(2.8rem,5vw,5rem)}.brief-copy>p:not(.eyebrow){max-width:29rem;color:#d0dcda;font-size:.9rem;line-height:1.75}.brief-side-note{display:flex;flex-direction:column;gap:.4rem;margin-top:2.5rem;padding-top:1rem;border-top:1px solid #678087;color:#b9c9c5;font-size:.67rem}.brief-side-note span:first-child{color:#efaa96;font:600 .68rem var(--head);letter-spacing:.1em}.brief-form{align-self:start;padding:clamp(1.3rem,3vw,2.3rem);color:var(--ink);background:var(--paper)}.brief-form fieldset{margin:0;padding:1.2rem 0 1.35rem;border:0;border-bottom:1px solid var(--line)}.brief-form legend{width:100%;padding:0 0 .8rem;font:500 1rem var(--head)}.brief-form legend span{margin-right:.65rem;color:var(--signal);font:600 .68rem var(--head)}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.choice-grid label{position:relative;display:flex;min-height:3rem;align-items:center;cursor:pointer}.choice-grid input{position:absolute;inset:auto auto auto .7rem;width:1rem;height:1rem;margin:0;accent-color:var(--teal)}.choice-grid label span{display:flex;width:100%;min-height:3rem;align-items:center;padding:.55rem .6rem .55rem 2.15rem;border:1px solid #d3dcd8;background:#fbfcfa;color:#47595f;font-size:.73rem;line-height:1.4;transition:border-color 150ms ease,background 150ms ease}.choice-grid input:checked+span{border-color:var(--teal);background:#e6efeb;color:var(--ink)}.choice-grid input:focus-visible+span{outline:3px solid var(--signal);outline-offset:2px}.brief-controls{display:flex;align-items:center;gap:1rem;margin-top:1.3rem}.brief-controls .button{min-height:3rem}.brief-reset{padding:.5rem;border:0;background:transparent;color:#68777c;font-size:.72rem;text-decoration:underline;text-underline-offset:.2rem;cursor:pointer}.brief-result{margin-top:1rem;padding:1rem;border-left:2px solid var(--signal);background:#e8eeeb}.brief-result h3{margin:0 0 .55rem;font:500 .92rem var(--head)}.brief-result p{margin:0;white-space:pre-line;color:#506168;font-size:.75rem;line-height:1.65}.brief-privacy{margin:.8rem 0 0;color:#778589;font-size:.64rem;line-height:1.5}.apartment-proof-section{display:grid;grid-template-columns:1fr .83fr;align-items:center;gap:clamp(2rem,7vw,7rem);padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(5rem,9vw,8rem)}.apartment-proof-section h2{font-size:clamp(2.5rem,5vw,4.8rem)}.apartment-proof-section>div>p:not(.eyebrow){max-width:37rem;color:#647379;font-size:.92rem;line-height:1.7}.proof-links{display:flex;flex-wrap:wrap;gap:1.3rem;margin-top:1.8rem}.proof-links a{padding-bottom:.3rem;border-bottom:1px solid #8ba29f;color:var(--teal);font-size:.75rem;font-weight:600}.apartment-proof-section figure{position:relative;margin:0}.apartment-proof-section img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover}.apartment-proof-section figcaption{position:absolute;right:.6rem;bottom:.6rem;padding:.45rem .6rem;color:#fff;background:#142229ce;font-size:.62rem}.apartment-final{display:flex;min-height:26rem;flex-direction:column;align-items:center;justify-content:center;padding:5rem var(--pad);text-align:center;background:#e5ebe8}.apartment-final .eyebrow{color:var(--signal)}.apartment-final h2{font-size:clamp(3rem,7vw,6rem)}.apartment-final>p:not(.eyebrow){max-width:33rem;color:#607077;font-size:.9rem;line-height:1.7}.apartment-final small{margin-top:.8rem;color:#768589;font-size:.63rem}
@media(max-width:940px){.apartment-hero{grid-template-columns:1fr 1fr;padding-top:4rem}.apartment-hero-copy h1{font-size:clamp(3rem,7vw,5.2rem)}.apartment-hero-visual{margin-left:1rem}.surface-layout{gap:2rem}.apartment-brief{gap:2rem}}
@media(max-width:700px){.apartment-header{min-height:4.35rem;padding:0 1.15rem}.apartment-header .menu-toggle{display:inline-flex}.apartment-header nav{position:absolute;top:calc(100% + 1px);right:0;left:0;display:grid;gap:0;padding:.5rem 1.15rem 1rem;border-bottom:1px solid var(--line);background:var(--paper);opacity:0;pointer-events:none;transform:translateY(-.45rem);transition:opacity 160ms var(--ease),transform 160ms var(--ease)}.apartment-header nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.apartment-header nav a{padding:.9rem .25rem;border-bottom:1px solid var(--line)}.apartment-header nav .nav-cta{justify-content:center;margin-top:.7rem;border:0}.apartment-hero{display:flex;min-height:0;flex-direction:column;padding:3rem 1.15rem 4rem}.apartment-hero-copy{padding:0}.apartment-hero-copy h1{max-width:10ch;font-size:clamp(3rem,12.6vw,4.7rem)}.apartment-lead{font-size:.96rem}.apartment-actions{gap:.9rem}.apartment-proof{margin-top:1.8rem}.apartment-hero-visual{min-height:18rem;margin:2rem 0 0}.apartment-hero-visual img{min-height:18rem}.apartment-hero-visual figcaption{right:.8rem;bottom:.8rem;left:.8rem}.apartment-hero-visual figcaption small{max-width:10rem}.scroll-cue{right:1.15rem;bottom:.8rem}.apartment-intro,.apartment-surfaces,.apartment-proof-section{padding-top:4.5rem;padding-bottom:4.5rem}.apartment-section-heading{margin:2rem 0}.apartment-section-heading h2,.method-head h2,.surface-layout h2,.brief-copy h2,.apartment-proof-section h2{font-size:clamp(2.7rem,11vw,4.2rem)}.noise-cards{grid-template-columns:1fr}.noise-card{min-height:14rem;padding:1.2rem}.noise-glyph{margin:.7rem 0}.acoustic-note{align-items:flex-start}.apartment-method{padding:4.5rem 1.15rem}.method-head{display:block;margin:2rem 0}.method-head .eyebrow{margin:0 0 1rem}.method-head>p:last-child{margin:1rem 0 0}.apartment-steps article{grid-template-columns:2rem 1fr;gap:.75rem;padding:1.1rem 0}.apartment-steps b{grid-column:2;justify-self:start}.surface-layout{grid-template-columns:1fr;gap:2rem;margin-top:2rem}.surface-map{grid-template-rows:3.4rem minmax(9rem,1fr) 3.4rem;min-height:19rem}.room-ceiling,.room-floor{font-size:.58rem}.room-ceiling span,.room-floor span,.room-wall span{font-size:.57rem}.room-wall{font-size:.57rem}.room-core small{font-size:.55rem}.apartment-brief{grid-template-columns:1fr;gap:2.5rem;padding:4.5rem 1.15rem}.brief-copy{position:static}.brief-copy .eyebrow{margin-top:2rem}.brief-side-note{margin-top:1.5rem}.brief-form{padding:1rem}.choice-grid{grid-template-columns:1fr}.choice-grid label,.choice-grid label span{min-height:2.8rem}.apartment-proof-section{grid-template-columns:1fr;gap:2rem}.apartment-proof-section figure{grid-row:1}.apartment-proof-section img{aspect-ratio:1.25}.apartment-final{min-height:24rem;padding:4rem 1.15rem}.apartment-final h2{font-size:clamp(3rem,13vw,4.7rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* AKUSTOV.BY visual polish: quiet editorial glass, architectural image framing, and restrained reveals. */
.header{position:sticky;top:0;background:rgba(244,246,243,.86);-webkit-backdrop-filter:saturate(145%) blur(18px);backdrop-filter:saturate(145%) blur(18px)}
.hero-art{isolation:isolate;border:1px solid rgba(255,255,255,.66);border-radius:10px;background:#c8cfcb;box-shadow:0 24px 70px rgba(20,34,41,.14),0 2px 8px rgba(20,34,41,.07)}
.hero-art:after{position:absolute;z-index:1;inset:0;border-radius:inherit;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(13,26,31,.17),transparent 24%,transparent 53%,rgba(13,26,31,.62))}
.hero-photo{position:relative;z-index:0;min-height:26rem;border-radius:inherit;filter:saturate(.9) contrast(1.025);animation:hero-photo-in 950ms 80ms var(--ease) both}
.apartment-hero-visual{border-radius:4px;box-shadow:0 24px 70px rgba(20,34,41,.13),0 2px 8px rgba(20,34,41,.06)}
.apartment-hero-visual img{animation:hero-photo-in 950ms 100ms var(--ease) both}
.art-scene{position:absolute;z-index:2;top:1rem;left:1rem;display:flex;align-items:center;gap:.55rem;margin:0;padding:.58rem .78rem;border:1px solid rgba(255,255,255,.34);border-radius:99px;color:#fff;background:rgba(20,34,41,.34);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:500 .65rem var(--body);letter-spacing:.025em}
.art-scene i{width:.25rem;height:.25rem;border-radius:50%;background:#f3b6a6;box-shadow:0 0 0 3px rgba(243,182,166,.2)}
.art-caption{top:auto;right:auto;bottom:17%;left:1.25rem;z-index:2;margin:0;padding:0;color:#fff;background:none;text-shadow:0 2px 18px rgba(0,0,0,.24);font:500 clamp(1.2rem,2.4vw,1.85rem)/1.15 var(--head);letter-spacing:-.045em}
.art-note{right:1.25rem;bottom:1.1rem;left:1.25rem;z-index:2;display:flex;justify-content:space-between;gap:1rem;margin:0;padding:.75rem 0 0;border-top:1px solid rgba(255,255,255,.4);color:rgba(255,255,255,.94);background:none;font-size:.62rem;line-height:1.4}
.art-note span{color:rgba(255,255,255,.74);text-align:right}
.motion-ready [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity 640ms var(--ease),transform 640ms var(--ease);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
.motion-ready [data-reveal="visual"]{transform:translateY(10px) scale(.99);transition-duration:780ms}
.motion-ready [data-reveal].is-visible{opacity:1;transform:none;will-change:auto}
@keyframes hero-photo-in{from{transform:scale(1.025)}to{transform:scale(1)}}
@media(max-width:700px){.header{background:rgba(244,246,243,.9)}.hero-art{border-radius:8px}.hero-photo{min-height:18rem}.art-scene{top:.75rem;left:.75rem}.art-caption{bottom:19%;left:.9rem;font-size:1.35rem}.art-note{right:.9rem;bottom:.8rem;left:.9rem;gap:.6rem;font-size:.56rem}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none}.motion-ready [data-reveal]{opacity:1;transform:none;will-change:auto}}
@media(max-width:940px){.project-highlight-main{grid-column:span 7}.project-highlight:not(.project-highlight-main){grid-column:span 5}}
@media(max-width:700px){.project-featured{grid-template-columns:1fr;gap:.65rem;margin:2.6rem 0 1rem}.project-featured-heading{display:grid;gap:.65rem;margin-bottom:.2rem}.project-highlight,.project-highlight-main{grid-column:auto;grid-row:auto;min-height:13rem}.project-highlight-main{min-height:19rem}.project-highlight-copy{inset:auto .9rem .9rem}.project-highlight-copy strong{font-size:1.28rem}.project-highlight-main .project-highlight-copy strong{font-size:1.7rem}.project-featured-heading h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.project-highlight img{transition:none}}
@media(min-width:701px){.project-featured{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:auto repeat(2,minmax(0,15rem));min-height:32rem}.project-featured-heading{grid-column:1/-1}.project-highlight-main{grid-column:1;grid-row:2/span 2;min-height:30.8rem}.project-highlight:nth-child(3){grid-column:2;grid-row:2}.project-highlight:nth-child(4){grid-column:2;grid-row:3}.project-highlight:not(.project-highlight-main){min-height:15rem}}
@media(max-width:940px) and (min-width:701px){.project-featured{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto repeat(2,minmax(0,12rem));min-height:26rem}.project-highlight-main{min-height:24.8rem}.project-highlight:not(.project-highlight-main){min-height:12rem}}
.brief-copy-button{text-decoration:none;display:inline-flex;min-height:2.6rem;align-items:center;margin-top:.9rem;padding:.55rem .8rem;border:1px solid #9cadaa;background:transparent;color:var(--teal);font:600 .7rem var(--body);cursor:pointer;transition:color 160ms ease,border-color 160ms ease,background-color 160ms ease}.brief-copy-button:active{border-color:var(--teal);background:var(--teal);color:#fff}.brief-copy-button:focus-visible{outline:3px solid var(--signal);outline-offset:3px}.brief-copy-status{display:block;min-height:1.2em;margin-top:.55rem;color:#52666a;font-size:.67rem;line-height:1.5}
@media(hover:hover) and (pointer:fine){.brief-copy-button:hover{border-color:var(--teal);background:var(--teal);color:#fff}}
@media(max-width:700px){.header nav,.apartment-header nav{visibility:hidden;transition:opacity 160ms var(--ease),transform 160ms var(--ease),visibility 0s linear 160ms}.header nav.open,.apartment-header nav.open{visibility:visible;transition-delay:0s}}

html{-webkit-tap-highlight-color:transparent}
a,button{touch-action:manipulation}
@media(hover:hover) and (pointer:fine){
.header nav>a:not(.nav-cta):hover{color:var(--signal)}
.nav-cta:hover{background:var(--teal);transform:translateY(-1px)}
.primary:hover{background:var(--teal)}
.text-link:hover{color:var(--signal);border-color:var(--signal)}
.direction-list a:hover{color:var(--signal)}
.service-card:hover{color:var(--white);background:var(--teal)}
.scroll-cue:hover{color:#fff;background:var(--teal)}
.noise-card:hover{background:#eaf0ed}
}
.direction-hero{padding:clamp(4.5rem,10vw,9rem) var(--pad) 4rem;background:var(--ink);color:var(--white)}.direction-hero>.eyebrow{color:#efaa96}.direction-hero h1{max-width:15ch;margin:0;font:500 clamp(3.1rem,7vw,6.8rem)/.98 var(--head);letter-spacing:-.075em}.direction-hero h1 em{color:#a8c0be;font-style:normal}.direction-hero>p:not(.eyebrow){max-width:43rem;color:#d1dfdb;font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.7}.direction-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.7rem;margin:2rem 0}.direction-hero-actions .text-link{color:#fff;border-color:#819497}.direction-scope{max-width:60rem;margin:2.4rem 0 0!important;padding-top:1.1rem;border-top:1px solid #53666a;color:#adbfbb!important;font-size:.74rem!important}.direction-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}.direction-detail{display:flex;min-height:18rem;flex-direction:column;align-items:flex-start;padding:clamp(1.3rem,3vw,2.1rem);border:1px solid var(--line);background:var(--white);scroll-margin-top:6rem}.direction-number{display:flex;align-items:center;gap:.7rem;margin:0 0 2.5rem;color:var(--signal);font:600 .68rem var(--head);letter-spacing:.07em}.direction-number span{color:var(--muted);font:600 .61rem var(--body)}.direction-detail h2{margin:0 0 .8rem;font:500 clamp(1.45rem,2.5vw,2.2rem)/1.1 var(--head);letter-spacing:-.045em;text-wrap:balance}.direction-detail>p:not(.direction-number){max-width:38rem;margin:0 0 1rem;color:#637278;font-size:.84rem;line-height:1.7}.direction-detail>a{margin-top:.7rem;color:var(--teal);font-size:.74rem;font-weight:600;text-underline-offset:.2rem}.direction-featured{color:#fff;border-color:var(--teal);background:var(--teal)}.direction-featured .direction-number span,.direction-featured>p:not(.direction-number){color:#d1dfdb}.direction-featured>a{color:#fff}.direction-footer{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;padding-top:4rem;padding-bottom:4rem;background:var(--mist)}.direction-footer .eyebrow{grid-column:1/-1;margin:0}.direction-footer h2{margin:0;font:500 clamp(2.5rem,5.5vw,5rem)/1.05 var(--head);letter-spacing:-.06em}.direction-footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}.direction-footer .text-link{white-space:nowrap}
@media(max-width:940px){.direction-detail-grid{gap:.75rem}.direction-detail{min-height:19rem}}
@media(max-width:700px){.direction-hero{padding:4rem 1.15rem 3rem}.direction-hero h1{font-size:clamp(3rem,12vw,4.8rem)}.direction-hero-actions{align-items:flex-start;flex-direction:column;gap:.7rem}.direction-detail-grid{grid-template-columns:1fr;gap:.6rem;padding-top:3rem;padding-bottom:3rem}.direction-detail{min-height:0;padding:1.25rem}.direction-number{margin-bottom:1.6rem}.direction-footer{grid-template-columns:1fr;gap:1.2rem;padding:3.2rem 1.15rem}.direction-footer .eyebrow{grid-column:auto}.direction-footer>div{align-items:flex-start;flex-direction:column;gap:.8rem}}


/* Mobile finishing: respect display cutouts and keep press feedback immediate. */
html{-webkit-text-size-adjust:100%}
.header{padding-top:env(safe-area-inset-top,0px)}
[role=button]{touch-action:manipulation}
.nav-cta:active,.text-link:active,.menu-toggle:active,.archive-filters button:active{transform:scale(.98)}
/* Keep every featured project in one explicit mobile grid column. */
@media(max-width:700px){.project-featured>.project-highlight{grid-column:1;grid-row:auto}}
/* Site-wide contact hub */
.contact-hub{position:fixed;z-index:40;right:max(1.5rem,env(safe-area-inset-right,0px));bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));font-family:var(--body);color:var(--ink)}
.contact-hub.is-near-brief{top:calc(5.75rem + env(safe-area-inset-top,0px));bottom:auto}
.contact-hub.is-near-brief,
.contact-hub.is-near-brief.is-visible{visibility:hidden;pointer-events:none;opacity:0}
.contact-hub.is-near-brief .contact-hub-panel{top:calc(100% + .8rem);bottom:auto;transform-origin:top right}
.contact-hub-trigger{display:flex;min-height:3.55rem;align-items:center;gap:1.15rem;padding:.4rem .55rem .4rem 1.25rem;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(20,34,41,.94);color:#fff;box-shadow:0 12px 36px rgba(20,34,41,.23);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);font:600 .83rem var(--body);cursor:pointer;transition:transform 220ms var(--ease),background-color 220ms var(--ease),box-shadow 220ms var(--ease)}
.contact-hub-trigger:active{transform:scale(.97)}
.contact-hub-trigger:focus-visible,.contact-hub-option:focus-visible,.contact-hub-apartment:focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.contact-hub-trigger-mark{display:grid;width:2.55rem;height:2.55rem;align-content:center;justify-content:center;gap:4px;border-radius:50%;background:var(--signal)}
.contact-hub-trigger-mark i{display:block;width:14px;height:1.5px;border-radius:2px;background:#fff;transition:transform 200ms var(--ease)}
.contact-hub-trigger[aria-expanded=true] .contact-hub-trigger-mark i:first-child{transform:translateY(2.75px) rotate(45deg)}
.contact-hub-trigger[aria-expanded=true] .contact-hub-trigger-mark i:last-child{transform:translateY(-2.75px) rotate(-45deg)}
.contact-hub-panel{position:absolute;right:0;bottom:calc(100% + .8rem);width:min(21rem,calc(100vw - 2rem));padding:1.2rem;border:1px solid rgba(20,34,41,.09);border-radius:1.25rem;background:rgba(250,251,249,.96);box-shadow:0 20px 70px rgba(20,34,41,.2);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);transform-origin:bottom right;animation:contact-hub-in 190ms var(--ease) both}
.contact-hub-panel[hidden]{display:none}
.contact-hub-heading{padding:.2rem .25rem 1rem}
.contact-hub-eyebrow{display:block;margin-bottom:.55rem;color:var(--signal);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.contact-hub-heading h2{margin:0;color:var(--ink);font:500 1.28rem/1.15 var(--head);letter-spacing:-.04em}
.contact-hub-heading p{margin:.45rem 0 0;color:#69777a;font-size:.7rem}
.contact-hub-option{display:flex;align-items:center;gap:.8rem;min-height:3.8rem;padding:.55rem .4rem;border-top:1px solid var(--line);color:var(--ink);text-decoration:none;transition:background-color 160ms ease,color 160ms ease}
.contact-hub-option b,.contact-hub-option small{display:block}
.contact-hub-option b{font-size:.77rem;font-weight:600}
.contact-hub-option small{margin-top:.16rem;color:#788588;font-size:.67rem}
.contact-hub-icon{display:grid;width:2.25rem;height:2.25rem;flex:0 0 auto;place-items:center;border-radius:50%;background:#e7ece8;color:var(--teal);font-size:.9rem;font-weight:700}
.contact-hub-apartment{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.65rem;padding:.8rem .9rem;border-radius:.7rem;background:var(--teal);color:#fff;text-decoration:none;font-size:.74rem;font-weight:600}
.contact-hub-apartment span{font-size:1rem}
@keyframes contact-hub-in{from{opacity:0;transform:translateY(.4rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(hover:hover) and (pointer:fine){.contact-hub-trigger:hover{transform:translateY(-2px);background:#203940;box-shadow:0 16px 42px rgba(20,34,41,.28)}.contact-hub-option:hover{background:#f0f3f0;color:var(--teal)}.contact-hub-apartment:hover{background:#294f55}}
@media(max-width:700px){.contact-hub{right:max(.9rem,env(safe-area-inset-right,0px));bottom:calc(.9rem + env(safe-area-inset-bottom,0px))}.contact-hub.is-near-brief{top:calc(5rem + env(safe-area-inset-top,0px));bottom:auto}.contact-hub.is-near-brief .contact-hub-panel{top:calc(100% + .65rem);bottom:auto}.contact-hub-trigger{min-height:3.2rem;padding-left:1rem;font-size:.78rem}.contact-hub-trigger-mark{width:2.35rem;height:2.35rem}.contact-hub-panel{bottom:calc(100% + .65rem);padding:1rem}}
@media(prefers-reduced-motion:reduce){.contact-hub-trigger,.contact-hub-trigger-mark i{transition:none}.contact-hub-panel{animation:none}}

/* Keep the universal contact action reachable on mobile. */
@media(max-width:700px){.contact-hub{opacity:1;pointer-events:auto}}

/* Real company photography in project and product archives */
.archive-card{overflow:hidden;padding:0 0 1.25rem}.archive-card-image{display:block;width:100%;height:auto;aspect-ratio:1.52;object-fit:cover;background:var(--mist)}.archive-card>.archive-meta,.archive-card>h2,.archive-card>.archive-description,.archive-card>details,.archive-card>.archive-basis,.archive-card>a{margin-left:1.25rem;margin-right:1.25rem}.archive-card>.archive-meta{margin-top:1.15rem}.archive-card>.archive-description{margin-bottom:0}.archive-card>.archive-basis{margin-top:.75rem}

/* Full contact hub inspired by the AKUSTOV.RF contact flow */
body.contact-modal-open{overflow:hidden}.contact-hub{position:fixed;z-index:40;right:max(1.5rem,env(safe-area-inset-right,0px));bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));font-family:var(--body)}.contact-hub-trigger{display:flex;min-height:3.6rem;align-items:center;gap:.8rem;padding:.38rem .45rem .38rem 1.3rem;border:1px solid #ffffff45;border-radius:999px;background:#142229f2;color:#fff;box-shadow:0 12px 36px #14222940;backdrop-filter:blur(18px);font:600 .84rem var(--body);cursor:pointer;transition:transform 180ms ease-out,background-color 180ms ease-out,box-shadow 180ms ease-out}.contact-hub-trigger:active{transform:scale(.97)}.contact-hub-trigger:focus-visible,.contact-modal button:focus-visible,.contact-modal-card:focus-visible{outline:3px solid #c65b48;outline-offset:3px}.contact-hub-trigger-mark{display:grid;width:2.7rem;height:2.7rem;place-items:center;align-content:center;gap:4px;border-radius:50%;background:#c65b48}.contact-hub-trigger-mark i{display:block;width:15px;height:1.5px;border-radius:2px;background:#fff;transition:transform 180ms ease-out}.contact-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:max(1.2rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1.2rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px));}.contact-modal[hidden]{display:none}.contact-modal-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:#071115a8;backdrop-filter:blur(12px);cursor:default;animation:contact-fade-in 180ms ease-out both}.contact-modal-dialog{position:relative;width:min(58rem,100%);max-height:min(88vh,58rem);max-height:min(88dvh,58rem);overflow:hidden;border:2px solid #142229;border-radius:2.1rem;background:#fbfcfb;box-shadow:0 30px 110px #07111559;animation:contact-dialog-in 220ms cubic-bezier(.2,.75,.25,1) both}.contact-modal-scroll{max-height:inherit;overflow-y:auto;padding:clamp(1.5rem,4vw,3rem);scrollbar-color:#92a19e transparent}.contact-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.6rem}.contact-modal-eyebrow{margin:0 0 .85rem;color:#657379;font-size:.68rem;font-weight:700;letter-spacing:.15em}.contact-modal-header h2{margin:0;color:#13191b;font:600 clamp(2.5rem,7vw,4.6rem)/.98 var(--head);letter-spacing:-.07em}.contact-modal-intro{margin:.9rem 0 0;color:#637176;font-size:clamp(.95rem,2vw,1.2rem);line-height:1.45}.contact-modal-close{display:grid;width:3.25rem;height:3.25rem;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:1.7rem;cursor:pointer;transition:transform 180ms ease-out,background-color 180ms ease-out}.contact-modal-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.contact-modal-card{display:flex;min-width:0;min-height:5.7rem;align-items:center;gap:.9rem;padding:.8rem 1rem;border:1px solid #dce3e1;border-radius:1.2rem;background:#fff;color:var(--ink);text-align:left;text-decoration:none;cursor:pointer;transition:transform 170ms ease-out,border-color 170ms ease-out,background-color 170ms ease-out}.contact-modal-card span:nth-child(2){min-width:0;flex:1}.contact-modal-card b,.contact-modal-card small{display:block}.contact-modal-card b{font-size:.95rem;line-height:1.25}.contact-modal-card small{margin-top:.35rem;color:#758287;font-size:.78rem;line-height:1.35;overflow-wrap:anywhere}.contact-modal-card>i{color:#809095;font-style:normal}.contact-modal-icon{display:grid;width:3.15rem;height:3.15rem;flex:0 0 auto;place-items:center;border-radius:1rem;background:#edf2f1;color:#19282d;font-size:1.3rem;font-weight:600}.contact-modal-wide{grid-column:1/-1}.contact-modal-card[data-contact-callback]{font:inherit}.contact-modal-footnote{margin:1rem .15rem 0;color:#859195;font-size:.75rem;line-height:1.5}.contact-callback{margin-top:1.25rem;padding:clamp(1.1rem,3vw,1.8rem);border-radius:1.4rem;background:#f0f3f3}.contact-callback[hidden],.contact-modal-back[hidden]{display:none}.contact-callback-heading h3{margin:0;color:#151b1d;font:600 1.4rem/1.2 var(--head);letter-spacing:-.04em}.contact-callback-heading p{margin:.3rem 0 1.1rem;color:#748186}.contact-callback>label:first-of-type{display:grid;gap:.45rem;margin-bottom:.9rem;font-size:.82rem;font-weight:600}.contact-callback input[type=tel]{width:100%;min-height:3.7rem;padding:.75rem 1rem;border:1px solid #cbd6d6;border-radius:.8rem;background:#fff;color:var(--ink);font:inherit;font-size:1.05rem}.contact-consent{display:flex;align-items:flex-start;gap:.65rem;color:#6f7e82;font-size:.76rem;line-height:1.5}.contact-consent input{width:1rem;height:1rem;flex:0 0 auto;margin:.12rem 0 0;accent-color:var(--teal)}.contact-consent a{color:var(--teal);text-underline-offset:3px}.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-callback-submit{display:flex;width:100%;min-height:3.9rem;align-items:center;justify-content:center;gap:.8rem;margin-top:1rem;border:0;border-radius:999px;background:var(--teal);color:#fff;font:600 1rem var(--body);cursor:pointer;transition:transform 160ms ease-out,background-color 160ms ease-out}.contact-callback-submit:active{transform:scale(.985)}.contact-callback-submit:disabled{opacity:.6;cursor:not-allowed}.contact-callback-status{min-height:1.3rem;margin:.65rem 0 0;color:#536267;font-size:.8rem}.contact-modal-back{margin-top:.9rem;padding:.4rem 0;border:0;background:none;color:var(--teal);font:600 .8rem var(--body);cursor:pointer}.contact-modal-back:not([hidden]){display:block}@keyframes contact-fade-in{from{opacity:0}to{opacity:1}}@keyframes contact-dialog-in{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(hover:hover) and (pointer:fine){.contact-hub-trigger:hover{transform:translateY(-2px);background:#203940;box-shadow:0 16px 42px #14222950}.contact-modal-card:hover{transform:translateY(-2px);border-color:#b4c3c0;background:#f8faf9}.contact-modal-close:hover{transform:rotate(4deg);background:#f1f4f3}}@media(max-width:700px){.contact-hub{right:max(.8rem,env(safe-area-inset-right,0px));bottom:calc(.8rem + env(safe-area-inset-bottom,0px))}.contact-hub-trigger{min-height:3.1rem;padding-left:1rem;font-size:.8rem}.contact-hub-trigger-mark{width:2.3rem;height:2.3rem}.contact-modal{padding:.5rem}.contact-modal-dialog{width:100%;max-height:calc(100dvh - 1rem);border-width:1.5px;border-radius:1.35rem}.contact-modal-scroll{padding:1.2rem;max-height:calc(100dvh - 1rem)}.contact-modal-header{margin-bottom:1.15rem}.contact-modal-close{width:2.6rem;height:2.6rem}.contact-modal-choices{gap:.55rem}.contact-modal-card{min-height:4.8rem;gap:.6rem;padding:.65rem;border-radius:.95rem}.contact-modal-card b{font-size:.79rem}.contact-modal-card small{font-size:.67rem}.contact-modal-icon{width:2.55rem;height:2.55rem;border-radius:.8rem}.contact-modal-footnote{font-size:.68rem}}@media(max-width:390px){.contact-modal-choices{grid-template-columns:1fr}.contact-modal-wide{grid-column:auto}}@media(prefers-reduced-motion:reduce){.contact-hub-trigger,.contact-hub-trigger-mark i,.contact-modal-card,.contact-modal-close,.contact-callback-submit{transition:none}.contact-modal-backdrop,.contact-modal-dialog{animation:none}}

/* Photographic direction cards and project strips */
.service-card--photo{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#142229!important}.service-card--photo::after{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#07111538 0%,#0711154d 38%,#071115e8 100%);content:""}.service-card-background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 260ms var(--ease)}.service-card--photo>*:not(.service-card-background){position:relative;z-index:1}.service-card--photo>span{color:#ffd0c2}.service-card--photo h3{max-width:17ch}.service-card--photo p{color:#eef3f1}.service-card--photo b{color:#ffd0c2}.service-card--photo.featured p{color:#eef3f1}.direction-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:1rem 0 1.15rem}.direction-photo-strip figure{position:relative;min-width:0;aspect-ratio:1.42;margin:0;overflow:hidden;background:#dbe2df}.direction-photo-strip img{display:block;width:100%;height:100%;object-fit:cover}.direction-photo-strip figcaption{position:absolute;inset:auto 0 0;padding:.8rem .55rem .45rem;overflow:hidden;background:linear-gradient(transparent,#0b171bd9);color:#fff;font-size:.58rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.direction-detail{overflow:hidden}.direction-featured .direction-photo-strip figcaption{background:linear-gradient(transparent,#0b171be8)}@media(hover:hover) and (pointer:fine){.service-card--photo:hover .service-card-background{transform:scale(1.035)}}@media(max-width:700px){.direction-photo-strip{gap:.35rem;margin:.85rem 0 1rem}.direction-photo-strip figcaption{font-size:.52rem;padding:.65rem .35rem .35rem}}

.form-consent{display:flex;align-items:flex-start;gap:.6rem;margin:.65rem 0;color:#6f7e82;font-size:.76rem;line-height:1.5}.form-consent input{width:1rem;height:1rem;flex:0 0 auto;margin:.12rem 0 0;accent-color:var(--teal)}.form-consent a{color:var(--teal);text-underline-offset:3px}.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

.privacy-page h1{max-width:18ch;margin:.25rem 0 1rem;font:500 clamp(2.8rem,7vw,5.5rem)/1 var(--head);letter-spacing:-.065em}.privacy-draft{max-width:54rem;margin:2rem 0;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line);background:var(--white);line-height:1.7}.privacy-draft h2{margin-top:0;font:500 1.5rem var(--head)}.privacy-draft li{margin:.5rem 0}.privacy-source{max-width:54rem;color:var(--muted);font-size:.78rem;line-height:1.7}

.apartment-section-visual{position:relative;margin:1.4rem 0 1.8rem;overflow:hidden;background:#dce3e0;isolation:isolate}.apartment-section-visual img{display:block;width:100%;height:auto;aspect-ratio:2.25;object-fit:cover}.apartment-section-visual figcaption{position:absolute;right:.75rem;bottom:.75rem;padding:.45rem .65rem;border-radius:99px;background:#142229d9;color:#fff;font-size:.62rem;line-height:1.3}.apartment-final .apartment-section-visual{margin:1.2rem 0 1.4rem}.apartment-method .apartment-section-visual{max-width:54rem}@media(max-width:700px){.apartment-section-visual{margin:1rem 0 1.25rem}.apartment-section-visual img{aspect-ratio:1.5}.apartment-section-visual figcaption{right:.45rem;bottom:.45rem;font-size:.56rem}}

/* Photo-led home sections: sourced project photography and clearly marked concept illustrations. */
#solution.intro{grid-template-columns:minmax(5rem,.22fr) minmax(0,1fr) minmax(15rem,.58fr);align-items:center}
.home-visual{position:relative;min-width:0;margin:0;overflow:hidden;border-radius:6px;background:#c8cfcb;isolation:isolate}
.home-visual::after{position:absolute;inset:35% 0 0;content:"";pointer-events:none;background:linear-gradient(180deg,transparent,rgba(12,24,29,.72))}
.home-visual img{display:block;width:100%;height:100%;min-height:13rem;object-fit:cover;filter:saturate(.9) contrast(1.025)}
.home-visual figcaption{position:absolute;z-index:1;right:.85rem;bottom:.75rem;left:.85rem;color:#fff;font:500 .65rem/1.35 var(--body);letter-spacing:.015em}
.home-visual--intro{min-height:17rem;border:1px solid #ffffff24;box-shadow:0 18px 48px #0002}
.noise-list article{grid-template-columns:3.25rem minmax(0,1fr) minmax(13rem,.62fr)}
.noise-list article>span{grid-column:1;grid-row:1}
.noise-list article>div{grid-column:2;grid-row:1}
.noise-list .home-visual--noise{grid-column:3;grid-row:1}
.noise-list .home-visual--noise img{min-height:9rem;aspect-ratio:1.72}
.noise-list .wave-icon{display:none}
.method-title .home-visual--method{max-height:21rem;margin:2rem 0 0}
.method-title .home-visual--method img{min-height:15rem;max-height:21rem;aspect-ratio:2.9}
@media(max-width:800px){#solution.intro{grid-template-columns:1fr;gap:1.5rem}.home-visual--intro{min-height:13rem}.noise-list article{grid-template-columns:2rem minmax(0,1fr);gap:.8rem}.noise-list article>span{grid-column:1;grid-row:1}.noise-list article>div{grid-column:2;grid-row:1}.noise-list .home-visual--noise{grid-column:2;grid-row:2}.noise-list .home-visual--noise img{min-height:11rem}.method-title .home-visual--method{margin-top:1.5rem}.method-title .home-visual--method img{min-height:12rem;aspect-ratio:1.8}}
.contact-modal-icon svg{display:block;width:1.45rem;height:1.45rem}
/* Photo density: one real/verified lead image plus two supporting project images per direction. */
.service-card--photo{min-height:18.5rem;background:#142229!important;color:#fff}
.service-card--photo::after{background:linear-gradient(180deg,#07111525 0%,#07111566 32%,#071115ee 100%)}
.service-card-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;width:100%;margin:.8rem 0 .2rem}
.service-card-gallery-image{display:block;position:relative;min-width:0;height:4.3rem;overflow:hidden;border:1px solid #fff4;border-radius:3px;background:#142229b3}
.service-card-gallery-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 220ms var(--ease)}
.service-card-gallery-image::after{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#07111585);content:"";pointer-events:none}
.service-card-gallery-image[title]::before{position:absolute;z-index:1;right:.4rem;bottom:.3rem;left:.4rem;overflow:hidden;color:#fff;font-size:.52rem;text-overflow:ellipsis;white-space:nowrap;content:attr(title)}
.service-card--photo b{padding-top:.6rem}
.home-visual--experience,.home-visual--company{min-height:11rem;margin:1.4rem 0 0;max-height:17rem}
.home-visual--experience img,.home-visual--company img{min-height:11rem;max-height:17rem;aspect-ratio:1.9}
@media(hover:hover) and (pointer:fine){.service-card-gallery-image:hover img{transform:scale(1.04)}}
@media(max-width:700px){.service-card--photo{min-height:15.5rem}.service-card-gallery-image{height:4.7rem}.home-visual--experience,.home-visual--company{min-height:9rem}.home-visual--experience img,.home-visual--company img{min-height:9rem}}

/* Photo-led explanations for apartment noise scenarios */
.noise-card{overflow:hidden;padding:0 1.45rem 1.45rem}
.noise-card>.noise-number,.noise-card>.noise-glyph,.noise-card>h3,.noise-card>p,.noise-card>.noise-example{margin-left:0}
.noise-card-photo{position:relative;margin:0 -1.45rem 1.1rem;aspect-ratio:1.85;overflow:hidden;background:#d8dfdc}
.noise-card-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 280ms cubic-bezier(.2,.7,.2,1)}
.noise-card-photo figcaption{position:absolute;right:0;bottom:0;left:0;padding:2rem 1rem .75rem;color:#fff;background:linear-gradient(transparent,#101b20c9);font-size:.65rem;line-height:1.4}
.noise-card .noise-number{display:block;margin-top:0}
@media(hover:hover) and (pointer:fine){.noise-card:hover .noise-card-photo img{transform:scale(1.025)}}
@media(max-width:700px){.noise-card{padding:0 1.2rem 1.2rem}.noise-card-photo{margin-right:-1.2rem;margin-left:-1.2rem;aspect-ratio:1.7}}
@media(prefers-reduced-motion:reduce){.noise-card-photo img{transition:none}}

/* Turn apartment section photography into readable, full-bleed heading scenes */
.apartment-section-heading,.method-head,.surface-layout>div:first-child,.brief-copy{position:relative;isolation:isolate;overflow:hidden;min-height:24rem;padding:clamp(1.5rem,4vw,3.2rem);border-radius:.35rem;background:#142229}
.apartment-section-heading>*,.method-head>*,.surface-layout>div:first-child>*,.brief-copy>*{position:relative;z-index:1}
.apartment-section-heading>.apartment-section-visual,.method-head>.apartment-section-visual,.surface-layout>div:first-child>.apartment-section-visual,.brief-copy>.apartment-section-visual{position:absolute;z-index:0;inset:0;margin:0!important}
.apartment-section-visual:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#101b20d9 0%,#101b20a6 54%,#101b2030 100%),linear-gradient(0deg,#101b2059,transparent 55%);pointer-events:none}
.apartment-section-visual img{width:100%;height:100%;min-height:100%;aspect-ratio:auto;object-fit:cover;filter:saturate(.82) contrast(1.04)}
.apartment-section-heading h2,.method-head h2,.surface-layout>div:first-child h2,.brief-copy h2{max-width:13ch;color:#fff}
.apartment-section-heading h2 em,.method-head h2 em,.surface-layout>div:first-child h2 em,.brief-copy h2 em{color:#f2a18c}
.apartment-section-heading>p:last-child,.method-head>p:last-child,.surface-layout>div:first-child>p:not(.eyebrow),.brief-copy>p:not(.eyebrow){max-width:34rem;color:#eef2f0}
.apartment-section-heading .eyebrow,.method-head .eyebrow,.surface-layout>div:first-child>.eyebrow,.brief-copy .eyebrow{color:#ffc2ad}
.surface-layout>div:first-child .text-link{color:#fff;border-color:#ffffff70}
.apartment-final:has(>.apartment-section-visual){position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#142229}
.apartment-final:has(>.apartment-section-visual)>.apartment-section-visual{position:absolute;z-index:0;inset:0;margin:0}
.apartment-final:has(>.apartment-section-visual)>:not(.apartment-section-visual){position:relative;z-index:1}
.apartment-final:has(>.apartment-section-visual)>.apartment-section-visual:after{position:absolute;inset:0;content:"";background:linear-gradient(0deg,#101b20dc,#101b2040);pointer-events:none}
.apartment-final:has(>.apartment-section-visual)>.apartment-section-visual img{width:100%;height:100%;min-height:100%;aspect-ratio:auto;object-fit:cover}
.apartment-final:has(>.apartment-section-visual) h2{color:#fff}
.apartment-final:has(>.apartment-section-visual)>p:not(.eyebrow){color:#eef2f0}
.apartment-final:has(>.apartment-section-visual) .eyebrow{color:#ffc2ad}
@media(max-width:700px){.apartment-section-heading,.method-head,.surface-layout>div:first-child,.brief-copy{min-height:21rem;padding:1.4rem}.apartment-section-heading h2,.method-head h2,.surface-layout>div:first-child h2,.brief-copy h2{max-width:12ch}.apartment-final:has(>.apartment-section-visual){min-height:27rem}}

.contact-direct{align-self:start;padding:1.35rem;border:1px solid var(--line);border-radius:1.2rem;background:#fff}.contact-direct p{margin:0;color:var(--muted);line-height:1.6}.contact-direct .button{margin-top:1rem}.contact-modal-icon svg{display:block;width:1.5rem;height:1.5rem}

/* Direction detail cards use one relevant lead photo as their backdrop plus two supporting images. */
.direction-detail--photo{position:relative;isolation:isolate;overflow:hidden;color:#fff;border-color:#ffffff30;background:#142229}
.direction-detail--photo::after{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(100deg,#0d191df2 0%,#0d191dd9 54%,#0d191d70 100%)}
.direction-detail-background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.83) contrast(1.04);transition:transform 280ms var(--ease)}
.direction-detail--photo>*:not(.direction-detail-background){position:relative;z-index:1}
.direction-detail--photo .direction-number,.direction-detail--photo .direction-number span{color:#ffc2ad}
.direction-detail--photo>p:not(.direction-number){color:#eef3f1}
.direction-detail--photo>a{color:#fff}
.direction-detail-credit{display:block;margin-top:auto;padding-top:1rem;color:#ffcfbf;font-size:.59rem;line-height:1.4}
.direction-detail--photo .direction-photo-strip{grid-template-columns:repeat(2,minmax(0,1fr))}

/* The homepage direction sequence uses one photo per card and a soft curved seam between scenes. */
#directions .service-grid{gap:clamp(.45rem,1vw,.85rem);border:0}
#directions .service-card{border:0}
#directions .service-card--photo{min-height:19rem;border:1px solid #ffffff3b;border-radius:2px 2px 2px 1.4rem;box-shadow:0 16px 34px #14222912,inset 0 1px #ffffff20}
#directions .service-card--photo::before{position:absolute;z-index:0;right:.9rem;bottom:.9rem;width:2.3rem;height:2.3rem;border:1px solid #ffd0c287;border-radius:0 0 100% 0;content:"";pointer-events:none;transition:width 220ms var(--ease),height 220ms var(--ease),opacity 220ms var(--ease);opacity:.8}
#directions .service-card--photo>*:not(.service-card-background){position:relative;z-index:1}
#directions .service-card--photo>span{margin-bottom:2.4rem}
#directions .service-card--photo h3{max-width:16ch}
#directions .service-card--photo b{max-width:26ch}
#directions .service-card[data-reveal]{transition-duration:560ms}
@media(hover:hover) and (pointer:fine){#directions .service-card--photo:hover::before{width:3.15rem;height:3.15rem;opacity:1}}
@media(max-width:700px){#directions .service-card--photo{min-height:16rem;border-radius:2px 2px 2px 1rem}#directions .service-card--photo>span{margin-bottom:1.6rem}}

/* The contact panel opens into a calm, photo-led room with a restrained glass contact card. */
#contact.contact{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#142229 url("/assets/illustrations/contact-interior.webp") center 53%/cover no-repeat}
#contact.contact::before{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(90deg,#0b171df0 0%,#0b171dd9 42%,#0b171d70 100%)}
#contact.contact>div{position:relative;z-index:1}
#contact.contact h2{color:#fff}
#contact.contact>div>p:not(.eyebrow){color:#e3e9e7}
#contact.contact .eyebrow{color:#ffc2ad}
#contact.contact .location{color:#fff}
#contact .contact-direct{padding:clamp(1.2rem,2.5vw,1.8rem);border:1px solid #ffffff55;border-radius:1rem;background:#1422299c;box-shadow:0 18px 48px #07111538;backdrop-filter:blur(12px)}
#contact .contact-direct p{color:#f0f3f1}
#contact .contact-direct .button{margin-top:1.25rem}
@media(max-width:700px){#contact.contact{background-position:58% center}#contact.contact::before{background:linear-gradient(180deg,#0b171ddc 0%,#0b171db5 55%,#0b171df0 100%)}#contact .contact-direct{backdrop-filter:blur(8px)}}

/* Keep the company count readable as a deliberate two-part typographic lockup. */
.range-mark{gap:1.15rem}
.range-mark small{margin-left:.15rem}
@media(hover:hover) and (pointer:fine){.direction-detail--photo:hover .direction-detail-background{transform:scale(1.025)}}
@media(prefers-reduced-motion:reduce){.direction-detail-background{transition:none}}
