:root{--violet:#7654f8;--ink:#17151f;--paper:#f6f5f8;--muted:#6c6877;--line:#dddae4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:19.5px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:6px}::selection{background:#e9e1ff}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:450}h2{font-size:clamp(38px,4.6vw,70px);line-height:1.07;letter-spacing:-.055em}.violet{color:var(--violet)}.section{padding:80px 4%;}.eyebrow,.section-label{font-size:14.3px;font-weight:550;letter-spacing:.025em}.eyebrow{text-transform:uppercase}.section-label{display:flex;gap:10px;align-items:center;margin-bottom:34px}.section-label>span{background:var(--ink);color:white;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:13px}.header{position:fixed;top:16px;left:4%;right:4%;z-index:50;display:flex;align-items:center;gap:34px;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.8);border-radius:8px;padding:8px 10px 8px 17px;transition:box-shadow .3s}.header.scrolled{box-shadow:0 3px 20px #17151f0a;border-color:#e8e5ed}.wordmark{font-size:25px;font-weight:700;letter-spacing:-1.8px}.wordmark>span{color:var(--violet);font-size:15.6px;vertical-align:top;letter-spacing:0}.header nav{display:flex;gap:23px;font-size:14.3px}.header nav a:hover{color:var(--violet)}.header-right{margin-left:auto;display:flex;align-items:center;gap:28px}.location{font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:7px 7px 7px 16px;border-radius:25px;font-size:15.6px;line-height:1.2;min-height:36px;width:max-content;transition:background .25s,transform .25s}.button>span{display:grid;place-items:center;width:24px;height:24px;background:#fff;border-radius:50%;color:var(--ink);font-size:17px;transition:transform .3s}.button:hover>span{transform:rotate(45deg)}.button:hover{transform:translateY(-2px)}.dark{background:var(--ink);color:#fff}.violet-button{background:var(--violet);color:#fff}.white{background:#fff;color:var(--ink)}.white>span{background:var(--violet);color:white}.menu{display:none;border:0;background:none;font-size:23px}.hero{position:relative;min-height:790px;height:min(900px,100svh);background:linear-gradient(120deg,#f0f0ee 20%,#f4f0fa 100%);padding:0 4%;overflow:hidden;display:flex;align-items:flex-end}.bands{position:absolute;top:-160px;right:-40px;width:64%;height:570px;background:repeating-linear-gradient(90deg,transparent 0,rgba(118,84,248,.1) 12px,rgba(118,84,248,.7) 27px,#7654f8 35px,rgba(118,84,248,.25) 42px,transparent 48px);filter:blur(5px);mask-image:radial-gradient(ellipse at 65% 10%,black 33%,transparent 73%);transform:rotate(-2deg);animation:bandDrift 10s ease-in-out infinite alternate;pointer-events:none}.hero-content{z-index:1;width:100%;padding:250px 0 110px}.hero .eyebrow{margin-bottom:28px;font-size:13px}.hero h1{font-size:clamp(44px,5.6vw,86px);line-height:1.03;letter-spacing:-.059em;max-width:1260px}.line{display:block}.inline-art{display:inline-block;width:1.5em;height:.83em;vertical-align:baseline;overflow:hidden;border-radius:7px;margin:0 .08em -.025em .05em;transform:rotate(-5deg)}.inline-art img{object-position:73% 50%;transform:scale(1.3)}.hero-bottom{display:flex;align-items:center;gap:35px;margin-top:35px}.hero-bottom p{font-size:15.6px;line-height:1.5;color:#57525f}.scroll-link{margin-left:auto;font-size:14.3px;display:flex;gap:22px;align-items:center}.scroll-link>span{font-size:22px}.hero-foot{position:absolute;bottom:24px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:#77717e}.intro{padding-top:39px;padding-bottom:74px}.intro h2{max-width:1000px}.intro-grid{display:grid;grid-template-columns:24% 24% 1fr;gap:3%;align-items:start;margin-top:55px}.small-photo{align-self:end;margin-bottom:0}.small-photo img{aspect-ratio:1.45;border-radius:5px}.intro-copy{padding:0 4%;font-size:20.8px;line-height:1.45}.intro-copy .button{margin-top:23px}.large-photo img{aspect-ratio:1.48;border-radius:5px;object-position:50% 45%}figcaption{display:flex;justify-content:space-between;font-size:13px;margin-top:10px;color:var(--muted)}figcaption>span{color:#8d8795}.work{background:var(--paper);padding-top:65px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-heading p{font-size:14.3px;line-height:1.6;color:var(--muted)}.project{position:sticky;top:95px;background:var(--paper);padding-bottom:32px;transform-origin:50% 0}.project:nth-child(2){top:110px}.project:nth-child(3){top:125px}.project-image{height:590px;display:block;position:relative;overflow:hidden;border-radius:6px;padding:60px 9%}.concept-note{position:absolute;top:18px;left:20px;font-size:13px;letter-spacing:.04em;opacity:.65;z-index:2}.project-open{position:absolute;bottom:23px;right:24px;background:white;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:24px;color:#17151f;transition:transform .3s}.project-image:hover .project-open{transform:rotate(45deg)}.project-meta{display:flex;align-items:center;padding:19px 0 0;gap:25px;font-size:14.3px}.project-meta h3{font-size:19px;letter-spacing:-.025em;margin-right:auto}.project-meta>span:last-child{display:flex;align-items:center;gap:35px}.project-meta a{font-size:20px}.property{background:#d2d6ce}.property-window{position:relative;background:#f3f0e6;height:100%;overflow:hidden;box-shadow:0 15px 40px #262a2115}.mock-nav{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;font-size:18.2px}.mock-nav small{font-size:13px}.mock-nav b>span{display:block;font-size:5px;letter-spacing:2px}.property-title{font-family:Georgia,serif;font-size:clamp(25px,3.4vw,52px);line-height:1;position:relative;z-index:1;margin:18px 28px}.architecture{position:absolute;bottom:25px;right:0;width:60%;height:72%;transform:skewY(-8deg);background:repeating-linear-gradient(90deg,#8e8e79 0 6px,#c3c1aa 6px 35px,#5c685e 35px 38px);box-shadow:-30px 30px 0 #b4b6a2;display:flex;align-items:center;justify-content:space-around;overflow:hidden}.architecture i{height:90%;width:15%;background:repeating-linear-gradient(0deg,transparent 0 40px,#aca990 40px 44px),linear-gradient(90deg,#233e3e,#60736a);box-shadow:inset 7px 0 12px #142e35}.mock-bottom{position:absolute;bottom:0;left:0;right:0;background:#f3f0e6;padding:14px 28px;font-size:13px;display:flex;justify-content:space-between}.portfolio{background:#ede0f5}.portfolio-window{background:#fffdf8;height:100%;overflow:hidden;padding-bottom:20px;box-shadow:0 15px 40px #262a2115}.portfolio-title{font-size:clamp(30px,4.5vw,68px);line-height:.95;letter-spacing:-.055em;margin:25px 30px;position:relative}.portfolio-title em{font-family:Georgia,serif;font-weight:400;color:#8158cf}.spark{position:absolute;right:20px;top:-8px;color:#a58acb;font-size:130px}.portfolio-bottom{display:flex;justify-content:space-between;font-size:7px;padding:0 30px 22px}.portfolio-tiles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:0 30px;height:130px}.portfolio-tiles>span{background:#d5e5bb;padding:20px;font-size:22px;letter-spacing:-1px}.portfolio-tiles .tile-lilac{padding:0}.portfolio-tiles>span:last-child{background:#f7b86c}.norch{background:#e5dcfd;padding:0}.norch-art{position:absolute;inset:0;object-fit:cover;object-position:65%;}.norch-copy{position:relative;padding:55px 6%}.norch-copy>span{font-weight:650;font-size:22px;letter-spacing:-1px}.norch-copy h3{font-size:clamp(40px,6.5vw,90px);letter-spacing:-.06em;line-height:1;margin-top:65px}.norch-copy p{font-size:16.9px;margin-top:30px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}.mini-visual{height:370px;position:relative;overflow:hidden;padding:60px 35px}.mini-visual strong{font-size:62px;line-height:1;letter-spacing:-4px;font-weight:500;position:relative;z-index:1}.mini-visual strong>span{font-size:20px;vertical-align:top;letter-spacing:0}.lens{background:#222927;color:#fff}.lens small{position:absolute;bottom:30px;left:35px;font-size:14.3px}.lens-circle{width:300px;height:300px;border-radius:50%;position:absolute;right:-55px;bottom:-70px;background:repeating-radial-gradient(circle,#101b1d 0 10px,#5a6b64 12px,#253232 15px,#9bada3 16px,#203432 19px);box-shadow:0 0 70px #c1ccb128}.sybex{background:#dfed74}.sybex strong em{font-size:30px;letter-spacing:-1.5px;font-weight:400;font-style:normal}.sybex-shape{position:absolute;font-size:260px;line-height:1;bottom:-35px;right:0;transform:rotate(10deg)}.work-end{display:flex;justify-content:space-between;align-items:center;margin-top:55px;border-top:1px solid var(--line);padding-top:25px}.work-end p{font-size:16.9px}.services{padding-top:100px;padding-bottom:100px}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%}.services h2{font-size:clamp(35px,4vw,58px)}.section-description{font-size:18.2px;line-height:1.6;color:var(--muted);margin-top:27px}.service-art{width:240px;height:145px;margin-top:30px;border-radius:5px;overflow:hidden}.service-list{padding-top:5px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none;padding:27px 0;transition:color .25s}summary::-webkit-details-marker{display:none}summary>span{font-size:14.3px;color:var(--muted)}summary h3{font-size:clamp(20px,2vw,29px);letter-spacing:-.04em}summary i{font-style:normal;margin-left:auto;font-size:26px;transition:transform .3s}details[open] summary,summary:hover{color:var(--violet)}details[open] summary i{transform:rotate(90deg)}.service-detail{padding:0 30px 28px 35px;line-height:1.65;color:var(--muted);font-size:16.9px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tags span{border:1px solid var(--line);border-radius:20px;padding:4px 11px;font-size:13px;color:var(--ink)}.process{background:#f6f5f8;border-top:1px solid #ebe8f0}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.process-sticky{position:sticky;top:145px;align-self:start}.process-sticky h2{font-size:clamp(35px,4vw,58px)}.process-index{font-size:180px;line-height:1;letter-spacing:-14px;margin-top:50px;color:var(--violet)}.process-index span{font-size:16.9px;letter-spacing:0;color:var(--muted);margin-left:20px}.progress-track{height:2px;background:var(--line);max-width:300px;margin-top:24px}.progress-track i{display:block;width:25%;height:100%;background:var(--violet);transition:width .5s}.stage{min-height:450px;padding:45px 0 90px;border-top:1px solid var(--line)}.stage .eyebrow{font-size:13px;color:var(--muted)}.stage h3{font-size:58px;letter-spacing:-3px;margin:26px 0}.stage p{font-size:17px;line-height:1.65;max-width:400px}.stage-tags{font-size:13px;color:var(--muted);margin-top:35px}.stories{padding-top:75px;padding-bottom:90px}.stories-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end}.stories-layout>div{max-width:350px}.stories-layout p{font-size:17px;line-height:1.6}.text-link{display:flex;justify-content:space-between;font-size:15.6px;border-bottom:1px solid var(--line);padding:25px 0 10px}.text-link span{font-size:20px}.contact{position:relative;overflow:hidden;background:var(--violet);color:white;padding-top:55px;padding-bottom:75px;min-height:660px}.contact .section-label>span{background:white;color:var(--violet)}.contact h2{font-size:clamp(48px,7.2vw,105px);position:relative;z-index:2;max-width:1000px}.contact h2 em{font-family:Georgia,serif;font-weight:400}.contact .button{position:relative;z-index:2;margin-top:35px}.contact-email{position:relative;display:inline-block;margin-left:25px;z-index:2;font-size:15.6px}.contact-art{position:absolute;width:580px;height:420px;right:-130px;bottom:-10px;mix-blend-mode:soft-light;opacity:.7;transform:rotate(-25deg);pointer-events:none}.contact-glow{position:absolute;width:700px;height:700px;background:radial-gradient(circle,#bda0ff90,transparent 70%);right:-150px;top:-200px;animation:glow 12s ease-in-out infinite alternate}footer{padding-top:50px!important;padding-bottom:25px!important;background:#fff}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;font-size:15.6px;line-height:1.5}.footer-top>div{display:flex;flex-direction:column;gap:10px}.footer-top>div:last-child{align-items:flex-end}.footer-wordmark{display:block;font-size:clamp(80px,17.8vw,300px);font-weight:650;line-height:1.2;letter-spacing:-.09em;margin:45px 0 25px}.footer-wordmark>span{font-size:.16em;vertical-align:top;line-height:3;letter-spacing:0;color:var(--violet)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:15px;font-size:13px;color:var(--muted)}.skip{position:fixed;top:-80px;left:20px;z-index:1000;background:white;padding:15px}.skip:focus{top:10px}.preloader{position:fixed;inset:0;background:#f6f5f8;z-index:100;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;animation:hideLoader .5s 1.1s forwards}.preloader>span{font-size:50px;font-weight:650;letter-spacing:-3px}.preloader i{display:block;width:140px;height:2px;background:var(--violet);margin-top:20px;transform-origin:left;animation:load 1s both}@keyframes hideLoader{to{opacity:0;visibility:hidden}}@keyframes load{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bandDrift{to{transform:translateY(60px) rotate(2deg)}}@keyframes glow{to{transform:translate(-160px,180px)}}
@media(min-width:1600px){.section{padding-left:max(4%,calc((100% - 1480px)/2));padding-right:max(4%,calc((100% - 1480px)/2))}.hero{padding-left:max(4%,calc((100% - 1480px)/2))}}@media(max-width:1000px){.header{gap:20px}.location{display:none}.hero{min-height:710px}.hero-content{padding-bottom:100px}.hero h1{font-size:6.3vw}.intro-grid{grid-template-columns:24% 27% 1fr;gap:2%}.intro-copy{font-size:16.9px}.project-image{height:480px;padding:55px 7%}.norch{padding:0}.mini-visual{height:300px}.mini-visual strong{font-size:48px}.sybex strong em{font-size:23px}.services-layout{gap:5%}.process-index{font-size:140px}.contact{min-height:570px}}@media(max-width:700px){.section{padding:52px 6%}.header{top:10px;left:4%;right:4%;padding:9px 10px 9px 12px;gap:12px}.wordmark{font-size:23px}.header-right{gap:10px}.header .button{font-size:13px;gap:10px;min-height:32px;padding-left:11px}.header .button>span{width:20px;height:20px;font-size:19.5px}.menu{display:block}.header nav{display:none;position:absolute;top:60px;left:0;right:0;padding:24px;background:#fff;border-radius:5px;font-size:18px;box-shadow:0 10px 20px #17151f10}.header nav.open{display:flex;flex-direction:column;gap:22px}.hero{height:auto;min-height:760px;padding:0 6%}.bands{width:100%;right:-70px;top:-110px;height:440px;opacity:.8}.hero-content{padding:255px 0 100px}.hero .eyebrow{font-size:13px;letter-spacing:.02em;margin-bottom:22px}.hero h1{font-size:clamp(35px,7.7vw,54px);letter-spacing:-.065em;line-height:1.09}.hero-bottom{align-items:flex-start;gap:20px;flex-direction:column;margin-top:28px}.hero-bottom p{font-size:14.3px}.scroll-link{display:none}.hero-foot{left:6%;right:6%;font-size:7px}.intro{padding-top:32px}.intro h2{font-size:34px;line-height:1.12}.intro h2 br{display:none}.section-label{font-size:13px;margin-bottom:26px}.intro-grid{grid-template-columns:1fr 1fr;gap:25px 18px;margin-top:30px}.intro-copy{grid-column:2;grid-row:1;padding:0;font-size:16.9px}.small-photo{grid-column:1;grid-row:1;align-self:end}.small-photo img{aspect-ratio:.85}.large-photo{grid-column:1/-1}.large-photo img{aspect-ratio:1.4}figcaption{font-size:13px}.intro-copy .button{font-size:13px;padding-left:12px;gap:10px}.section-heading{align-items:start;gap:15px;flex-direction:column}.section-heading p{font-size:13px}.project{position:relative;top:auto!important;padding-bottom:27px}.project-image{height:325px;padding:40px 6%}.project-meta{gap:12px;flex-wrap:wrap;padding-top:14px}.project-meta h3{font-size:17px;width:100%}.project-meta>span{font-size:13px}.project-meta>span:last-child{margin-left:auto;gap:14px}.concept-note{font-size:7px;top:14px;left:14px}.mock-nav{padding:15px;font-size:13px}.mock-nav small{font-size:5px}.property-title{font-size:26px;margin:10px 15px}.mock-bottom{font-size:5px;padding:12px 15px}.architecture{height:62%;width:66%}.portfolio-title{font-size:36px;margin:12px 15px}.spark{font-size:70px;right:0;top:5px}.portfolio-bottom{font-size:4px;padding:0 15px 14px}.portfolio-tiles{margin:0 15px;gap:7px;height:70px}.portfolio-tiles>span{font-size:15.6px;padding:10px}.project-open{width:34px;height:34px;font-size:20px;bottom:14px;right:14px}.norch{padding:0}.norch-copy{padding:45px 7%}.norch-copy>span{font-size:19.5px}.norch-copy h3{font-size:45px;margin-top:38px}.norch-copy p{font-size:13px;margin-top:20px}.norch-art{object-position:60%;opacity:.8}.work-grid{grid-template-columns:1fr;gap:28px;margin-top:0}.mini-visual{height:300px}.work-end{margin-top:32px}.work-end p{font-size:14.3px}.services-layout{grid-template-columns:1fr;gap:36px}.service-art{display:none}.services h2{font-size:38px}.section-description{font-size:16.9px;margin-top:20px}.service-list h3{font-size:21px}.service-detail{padding-left:32px}.process-layout{grid-template-columns:1fr;gap:35px}.process-sticky{position:relative;top:auto}.process-index,.progress-track{display:none}.process-sticky h2{font-size:38px}.stage{min-height:0;padding:30px 0 40px}.stage h3{font-size:42px;margin:20px 0;letter-spacing:-2px}.stage p{font-size:19.5px}.stage-tags{margin-top:23px;font-size:13px}.stories-layout{grid-template-columns:1fr;gap:28px}.stories-layout p{font-size:19.5px}.contact{min-height:520px}.contact h2{font-size:45px;line-height:1.1}.contact-email{display:block;margin:24px 0 0;font-size:14.3px}.contact-art{width:400px;height:300px;bottom:-40px;right:-180px;opacity:.45}.footer-top{grid-template-columns:1.5fr 1fr 1fr;font-size:13px;gap:10px}.footer-wordmark{font-size:17vw;margin-top:40px;letter-spacing:-.085em}.footer-bottom{font-size:13px;flex-wrap:wrap;gap:14px}.footer-bottom>span:last-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.preloader{display:none}.project{position:relative;top:auto!important}.process-sticky{position:relative;top:auto}}
