:root{--paper:#f4f2ed;--white:#fcfbf8;--ink:#171a18;--muted:#626862;--line:#d6d6cf;--forest:#183f34;--blue:#2e5266;--clay:#9b624d;--font-sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--font-display:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans),Arial,sans-serif}a,body,button{letter-spacing:0}a{text-decoration:none}a,button{color:inherit}button{font:inherit}img{display:block}.section-shell{width:min(1240px,calc(100% - 64px));margin-inline:auto}.eyebrow,.section-index{margin:0;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.12em}.section-index{color:var(--muted)}.light-index{color:#9eaaa4}.button{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;font-size:13px;font-weight:700}.button-light{background:var(--white);color:var(--ink)}.button-dark{background:var(--ink);color:white}.text-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.hero,.text-link-light{color:white}.hero{position:relative;min-height:720px;height:92vh;max-height:920px;overflow:hidden}.hero-image{object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:rgba(12,16,14,.5)}.site-header{position:fixed;z-index:15;top:0;left:0;width:100%;min-height:92px;padding-inline:max(35px,calc((100% - 1370px) / 2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.22);transition:min-height .25s ease,background-color .25s ease,box-shadow .25s ease}.site-header.is-scrolled{min-height:72px;background:rgba(23,26,24,.96);box-shadow:0 8px 30px rgba(0,0,0,.14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.wordmark{font-size:21px;font-weight:800}.wordmark span{color:#8eb49f}.site-header nav{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:600}.site-header nav>a:not(.nav-contact){color:rgba(255,255,255,.78)}.site-header nav>a:hover{color:white}.nav-contact{border-left:1px solid rgba(255,255,255,.24);padding-left:34px}.menu-button{display:none;width:42px;height:42px;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.35)}.hero-content{position:absolute;z-index:2;left:max(32px,calc((100% - 1240px) / 2));top:51%;transform:translateY(-50%);width:min(700px,calc(100% - 64px))}.availability{display:flex;align-items:center;gap:10px;margin:0 0 24px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.12em;color:rgba(255,255,255,.76)}.availability span{width:7px;height:7px;border-radius:50%;background:#8eb49f;box-shadow:0 0 0 4px rgba(142,180,159,.16)}.hero h1{margin:0;font-family:var(--font-display),Georgia,serif;font-size:clamp(65px,8vw,120px);line-height:.84;font-weight:400}.hero-role{margin:22px 0 0;font-size:21px;font-weight:500}.hero-copy{max-width:590px;margin:25px 0 0;font-size:17px;line-height:1.75;color:rgba(255,255,255,.76)}.hero-actions{margin-top:36px;display:flex;align-items:center;gap:28px}.hero-proof{position:absolute;z-index:2;right:max(32px,calc((100% - 1240px) / 2));bottom:38px;display:flex;gap:28px;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.1em;color:rgba(255,255,255,.65)}.intro{padding:120px 0 132px;display:grid;grid-template-columns:1fr 4fr}.intro-statement{max-width:970px}.intro-statement h2{max-width:890px;margin:0;font-family:var(--font-display),Georgia,serif;font-weight:400;font-size:clamp(46px,6vw,76px);line-height:1.04}.intro-statement>p{max-width:620px;margin:36px 0 0 auto;color:var(--muted);font-size:16px;line-height:1.8}.work-section{padding-bottom:140px}.section-heading{padding:42px 0;border-top:1px solid var(--ink);display:flex;justify-content:space-between;align-items:flex-end}.section-heading h2{margin:8px 0 0;font-family:var(--font-display),Georgia,serif;font-size:48px;font-weight:400}.section-heading>p{max-width:460px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:76px 24px;gap:76px 24px}.project-card:first-child{grid-column:1/-1}.project-image-link{display:block}.project-card-meta{margin-top:22px;display:flex;justify-content:space-between;align-items:center}.project-card-meta p{margin:0 0 7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.project-card h3{margin:0;font-family:var(--font-display),Georgia,serif;font-size:31px;font-weight:500}.project-summary{max-width:560px;margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.icon-button{width:42px;height:42px;flex:0 0 42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;cursor:pointer}.icon-button:hover{background:var(--ink);color:white;border-color:var(--ink)}.project-cover{position:relative;height:430px;overflow:hidden;transition:transform .35s ease}.project-card:first-child .project-cover{height:620px}.project-image-link:hover .project-cover{transform:scale(.985)}.cover-devices{position:absolute;inset:8% 9%;display:flex;align-items:center;justify-content:center;gap:clamp(12px,3vw,42px)}.cover-device{position:relative;height:88%;aspect-ratio:.56;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:4px;background:#f8f8f6;box-shadow:0 25px 55px rgba(20,30,25,.22)}.cover-device img{object-fit:cover}.cover-device-1{transform:rotate(-5deg) translateY(3%)}.cover-device-2{z-index:2;height:96%}.cover-device-3{transform:rotate(5deg) translateY(3%)}.cover-count-1 .cover-device{height:96%;transform:none}.project-card:not(:first-child) .cover-device-3{display:none}.project-art{position:relative;height:430px;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:transform .35s ease}.project-image-link:hover .project-art{transform:scale(.985)}.project-card:first-child .project-art{height:620px}.art-forest{background:#ccdbd2}.art-blue{background:#d2dce0}.art-clay{background:#dfd0c8}.mock-window{width:78%;height:72%;display:flex;background:#f9faf7;box-shadow:0 30px 70px rgba(31,52,42,.18);border:1px solid rgba(24,63,52,.15)}.mock-sidebar{width:18%;padding:10% 20px;background:var(--forest);display:flex;flex-direction:column;gap:14px}.mock-sidebar i{display:block;height:5px;background:rgba(255,255,255,.28)}.mock-content{flex:1 1;padding:7%}.mock-top{display:flex;justify-content:space-between}.mock-top b{width:32%;height:10px;background:#25493f}.mock-top span{width:15%;height:18px;background:#d8e2dc}.metric-row{display:flex;gap:12px;margin:12% 0}.metric-row i{flex:1 1;height:72px;border:1px solid #d9dedb;background:white}.table-lines{border-top:1px solid #ccd3ce}.table-lines span{display:block;height:32px;border-bottom:1px solid #e2e5e2}.analytics-shell{width:80%;height:70%;display:grid;grid-template-columns:35% 65%;background:#f9f9f7;box-shadow:0 30px 70px rgba(24,41,50,.18)}.analytics-copy{padding:16%;background:var(--blue);display:flex;flex-direction:column;gap:14px}.analytics-copy i{width:24px;height:24px;border:5px solid rgba(255,255,255,.7);border-radius:50%;margin-bottom:auto}.analytics-copy b{height:9px;width:74%;background:white}.analytics-copy span{height:4px;background:rgba(255,255,255,.3)}.chart{margin:13%;padding:0 6%;border-left:1px solid #c8d1d5;border-bottom:1px solid #c8d1d5;display:flex;gap:7%;align-items:flex-end}.chart i{flex:1 1;background:#7995a4}.chart i:first-child{height:28%}.chart i:nth-child(2){height:47%}.chart i:nth-child(3){height:39%}.chart i:nth-child(4){height:72%}.chart i:nth-child(5){height:61%}.chart i:nth-child(6){height:84%;background:var(--blue)}.phones{position:relative;width:72%;height:90%}.phone{position:absolute;width:42%;height:84%;top:8%;padding:7% 5%;border:7px solid #232725;border-radius:28px;background:#f8f6f1;box-shadow:0 25px 50px rgba(64,40,31,.2)}.phone-back{left:13%;transform:rotate(-7deg)}.phone-front{right:10%;transform:rotate(7deg)}.phone i{display:block;width:38%;height:5px;margin:0 auto 18%;background:#c4c8c4}.phone b{display:block;width:72%;height:10px;background:#6f4638;margin-bottom:14%}.phone span{display:block;height:16%;margin-top:6%;background:#e5ddd7}.phone em{display:block;height:9%;margin-top:13%;background:var(--clay)}.art-view-1 .analytics-shell,.art-view-1 .mock-window{transform:translateX(-6%) scale(.9)}.art-view-2 .analytics-shell,.art-view-2 .mock-window{transform:translateX(6%) scale(.94)}.art-view-1 .phones{transform:translateX(-5%) scale(.92)}.art-view-2 .phones{transform:translateX(5%) scale(.95)}.expertise-section{padding:120px 0;background:#18231f;color:white}.expertise-layout{display:grid;grid-template-columns:1fr 1.35fr;grid-gap:100px;gap:100px;margin:70px 0 90px 20%}.expertise-intro h2{max-width:500px;margin:16px 0 0;font-family:var(--font-display),Georgia,serif;font-size:53px;line-height:1.08;font-weight:400}.expertise-intro .eyebrow{color:#8eb49f}.service-list article{display:grid;grid-template-columns:48px 1fr;grid-gap:24px;gap:24px;padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid rgba(255,255,255,.16)}.service-list article>span{color:#8eb49f;font-size:11px;font-weight:700}.service-list h3{margin:0 0 11px;font-size:19px}.service-list p{margin:0;max-width:480px;color:#aeb9b3;font-size:13px;line-height:1.75}.stack-row{padding-top:28px;border-top:1px solid rgba(255,255,255,.22);display:flex;flex-wrap:wrap;gap:10px 24px}.stack-row span{color:#c5cdc8;font-size:12px}.process-section{padding:125px 0}.process-heading{margin:65px 0 70px 20%;display:flex;justify-content:space-between;align-items:flex-end}.process-heading h2{max-width:700px;margin:0;font-family:var(--font-display),Georgia,serif;font-size:57px;font-weight:400;line-height:1.08}.process-heading p{max-width:310px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.process-grid article{min-height:280px;padding:25px 25px 20px 0;border-right:1px solid var(--line)}.process-grid article:not(:first-child){padding-left:24px}.process-grid article:last-child{border-right:0}.process-grid span{font-size:10px;color:var(--muted);font-weight:700}.process-grid h3{margin:72px 0 15px;font-size:18px}.process-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.about-section{padding:130px 0;background:#e2e4df}.about-layout{display:grid;grid-template-columns:1fr 4fr}.about-copy{max-width:860px}.about-copy h2{margin:18px 0 32px;font-family:var(--font-display),Georgia,serif;font-weight:400;font-size:59px;line-height:1.08}.about-copy>p:not(.eyebrow){max-width:650px;margin:0 0 35px auto;color:var(--muted);line-height:1.8}.principles{max-width:650px;margin-left:auto;padding-top:24px;border-top:1px solid #bcc1bc;display:flex;gap:28px;flex-wrap:wrap}.principles span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.principles svg{color:var(--forest)}.contact-section{padding-top:120px;background:var(--ink);color:white}.contact-layout{display:grid;grid-template-columns:1fr 4fr;padding-bottom:110px}.contact-layout>div{max-width:840px}.contact-layout .eyebrow{color:#8eb49f}.contact-layout h2{margin:16px 0 24px;font-family:var(--font-display),Georgia,serif;font-size:70px;line-height:1;font-weight:400}.contact-layout p:not(.eyebrow){max-width:570px;margin:0 0 35px;color:#aeb6b1;line-height:1.75}.contact-actions{display:flex;flex-wrap:wrap;gap:12px}.button-outline-light{border-color:rgba(255,255,255,.35);color:white}.button-outline-light:hover{background:white;color:var(--ink)}.site-footer{min-height:90px;border-top:1px solid rgba(255,255,255,.18);display:grid;grid-template-columns:1fr 1fr auto;align-items:center;color:#8e9691;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.site-footer a{color:white}.dialog-backdrop{position:fixed;z-index:20;inset:0;padding:24px;background:rgba(14,17,15,.78);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-dialog{width:min(1120px,100%);max-height:calc(100vh - 48px);background:var(--paper);box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}.dialog-toolbar{min-height:68px;padding:0 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.dialog-toolbar>span{font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.1em;color:var(--muted)}.dialog-actions{display:flex;gap:8px}.dialog-scroll{max-height:calc(100vh - 116px);overflow-y:auto;padding:58px}.dialog-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:flex-end;grid-gap:40px;gap:40px;margin-bottom:50px}.dialog-heading h2{margin:0;font-family:var(--font-display),Georgia,serif;font-size:58px;line-height:1;font-weight:400}.dialog-heading p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.project-art-large{height:600px}.project-media-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:34px 20px;gap:34px 20px}.project-media{min-width:0;margin:0}.project-media:first-child{grid-column:1/-1}.project-media:not(:first-child) .project-art-large{height:380px}.project-media-image{position:relative;overflow:hidden;aspect-ratio:16/10;padding:24px;background:#d8dad5}.project-media-image img{object-fit:contain;padding:24px}.project-media:not(:first-child) .project-media-image{aspect-ratio:4/5}.project-media figcaption{margin-top:12px;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.case-study-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:50px;gap:50px;margin-top:64px}.case-study-grid section{border-top:1px solid var(--ink);padding-top:18px}.case-study-grid section>p:last-child{color:var(--muted);font-size:13px;line-height:1.8}.case-study-footer{margin-top:50px;padding:30px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px}.case-study-footer div>p:last-child{color:var(--muted);font-size:12px}.store-link{margin-top:18px}.project-page{width:min(1240px,calc(100% - 64px));margin:auto;padding-bottom:80px}.project-page-nav{min-height:90px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.project-page-nav>a{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}.project-page-heading{max-width:900px;padding:100px 0 75px}.project-page-heading h1{margin:17px 0 25px;font-family:var(--font-display),Georgia,serif;font-size:78px;line-height:1;font-weight:400}.project-page-heading>p:last-child{max-width:650px;color:var(--muted);line-height:1.75}.project-page-copy,.project-page-gallery{margin-bottom:70px}.project-page-details{padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.project-page-details div>p:last-child{color:var(--muted);font-size:13px}.project-next{padding:100px 0 30px;text-align:center}.project-next h2{margin:14px 0 30px;font-family:var(--font-display),Georgia,serif;font-size:52px;font-weight:400}@media (max-width:900px){.project-page,.section-shell{width:min(100% - 40px,1240px)}.site-header{padding-inline:20px}.site-header nav{display:none;position:absolute;top:76px;right:0;width:250px;padding:24px;background:var(--ink);flex-direction:column;align-items:stretch;gap:20px}.site-header nav.nav-open{display:flex}.nav-contact{border:0;border-top:1px solid rgba(255,255,255,.2);padding:20px 0 0}.menu-button{display:inline-flex}.about-layout,.contact-layout,.intro{grid-template-columns:1fr;gap:48px}.expertise-layout{margin-left:0;grid-template-columns:1fr;gap:70px}.process-heading{margin-left:0;flex-direction:column;align-items:flex-start;gap:28px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid article:nth-child(2){border-right:0}.dialog-heading{grid-template-columns:1fr}.project-art-large{height:480px}}@media (max-width:640px){.project-page,.section-shell{width:min(100% - 32px,1240px)}.site-header{padding-inline:16px}.hero{min-height:700px;height:100svh;max-height:820px}.hero-shade{background:rgba(10,15,12,.65)}.hero-image{object-position:64% center}.site-header{min-height:76px}.hero-content{left:16px;width:calc(100% - 32px);top:47%}.hero h1{font-size:63px;line-height:.91}.hero-role{font-size:17px}.hero-copy{font-size:14px;line-height:1.65}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-proof{left:16px;right:16px;bottom:20px;gap:8px;justify-content:space-between}.hero-proof span{max-width:90px;line-height:1.4}.intro{padding:90px 0}.intro-statement h2{font-size:46px}.intro-statement>p{margin-top:28px}.work-section{padding-bottom:90px}.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.section-heading h2{font-size:40px}.project-grid{grid-template-columns:1fr;gap:60px}.project-card:first-child{grid-column:auto}.project-card .project-art,.project-card .project-cover,.project-card:first-child .project-art,.project-card:first-child .project-cover{height:320px}.cover-devices{inset:8% 4%;gap:8px}.cover-device{height:78%}.cover-count-1 .cover-device,.cover-device-2{height:88%}.project-card h3{font-size:27px}.analytics-shell,.mock-window{width:88%;height:68%}.phones{width:90%}.expertise-section{padding:90px 0}.expertise-layout{margin:52px 0 60px}.about-copy h2,.expertise-intro h2,.process-heading h2{font-size:43px}.about-section,.process-section{padding:90px 0}.process-heading{margin-top:48px}.process-grid{grid-template-columns:1fr}.process-grid article,.process-grid article:not(:first-child){min-height:auto;padding:25px 0 35px;border-right:0;border-bottom:1px solid var(--line)}.process-grid h3{margin-top:40px}.principles{flex-direction:column;gap:15px}.contact-section{padding-top:90px}.contact-layout{padding-bottom:80px}.contact-layout h2{font-size:49px}.site-footer{padding:24px 0;grid-template-columns:1fr auto;gap:12px}.site-footer span:nth-child(2){display:none}.dialog-backdrop{padding:0}.project-dialog{max-height:100svh;height:100svh}.dialog-toolbar{min-height:62px;padding:0 14px}.dialog-scroll{max-height:calc(100svh - 62px);padding:36px 18px}.dialog-heading{margin-bottom:34px;gap:20px}.dialog-heading h2{font-size:43px}.project-art-large{height:340px}.project-media-gallery{grid-template-columns:1fr;gap:30px}.project-media:first-child{grid-column:auto}.project-media:not(:first-child) .project-art-large{height:300px}.project-media-image,.project-media:not(:first-child) .project-media-image{aspect-ratio:4/5;padding:0}.project-media-image img{padding:14px}.case-study-grid{grid-template-columns:1fr;gap:28px;margin-top:45px}.case-study-footer,.project-page-details{grid-template-columns:1fr;gap:20px}.project-page-heading{padding:70px 0 50px}.project-page-heading h1{font-size:52px}.project-next h2{font-size:42px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important}}