:root{--paper:#faf8f6;--ink:#181a18;--muted:#50534e;--sage:#788d6e;--deep-sage:#4d6847;--soft-sage:#edf0e7;--line:#e1e3dc;--inset:clamp(24px, 3.6vw, 52px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}:root{--header-height:112px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--deep-sage);outline-offset:4px}h1,h2,h3,p{margin:0}.site{flex-direction:column;min-height:100vh;display:flex}.site>main{flex:1}.inset{padding-inline:var(--inset)}.header{z-index:10;background:var(--paper);min-height:var(--header-height);justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.045em;align-items:center;gap:10px;font-size:26px;font-weight:700;display:inline-flex}.brand img{object-fit:contain;width:34px;height:34px}.header .brand img{aspect-ratio:1;width:clamp(80px,8vw,96px);height:auto}.navigation,.footer nav{align-items:center;gap:clamp(20px,4vw,48px);font-size:15px;font-weight:600;display:flex}.navigation>a:not(.pill):hover,.footer nav a:hover{text-underline-offset:5px;text-decoration:underline}.pill{color:#fff;background:#6d8363;border-radius:999px;justify-content:center;align-items:center;padding:12px 24px;font-weight:600;transition:background .2s;display:inline-flex}.pill:hover{background:var(--deep-sage)}.menu-toggle,.mobile-cta{display:none}.hero-copy{padding-block:clamp(35px,5vw,68px) clamp(48px,7vw,98px)}h1{letter-spacing:-.069em;font-size:clamp(42px,7.3vw,100px);font-weight:600;line-height:1.01}.hero-copy p{color:var(--muted);margin-top:15px;font-size:clamp(16px,2.2vw,28px);line-height:1.3}.hero-art{position:relative}.hero-frame{aspect-ratio:1859/846;background:#d9cfb5;position:relative;overflow:hidden}.hero-frame img{object-fit:cover;animation:1.2s ease-out both settle}@keyframes settle{0%{transform:scale(1.035)}to{transform:scale(1)}}.arrow{border:1px solid var(--line);width:34px;height:34px;color:var(--deep-sage);border-radius:50%;flex:none;place-items:center;font-size:19px;line-height:1;transition:background .2s,color .2s,transform .2s;display:inline-grid}.hero-arrow{right:var(--inset);position:absolute;top:0;transform:translateY(-40%)}.hero-arrow .arrow{aspect-ratio:1;background:var(--sage);color:#fff;border:3px solid var(--paper);width:clamp(72px,13.5vw,160px);height:auto;font-size:clamp(32px,6vw,72px)}.hero-arrow:hover .arrow{background:var(--deep-sage);transform:rotate(8deg)}.intro h2{letter-spacing:-.066em;padding-block:clamp(32px,5vw,70px);font-size:clamp(33px,6.2vw,82px);font-weight:600;line-height:1.04}.infinity{color:var(--sage);font-size:1.22em;line-height:.65;display:inline-block;transform:rotate(-15deg)}.disciplines{background:var(--soft-sage);grid-template-columns:repeat(3,auto);justify-content:stretch;align-items:center;padding:clamp(12px,2vw,28px) 0;display:grid}.disciplines>span{letter-spacing:-.04em;justify-content:center;align-items:center;gap:clamp(8px,2vw,24px);padding:12px 8px;font-size:clamp(13px,2.65vw,32px);font-weight:700;display:flex}.disciplines>span+span{border-left:1px solid #d5dbcf}.discipline-icon{color:#8fa483;flex:none;width:1.15em;height:1em;display:inline-block;position:relative}.design{background:currentColor;border-radius:100% 0 0}.development:before,.development:after,.automation:before,.automation:after{content:"";background:currentColor;width:47%;height:76%;position:absolute;top:12%}.development:before{border-radius:0 100% 100% 0;left:0}.development:after{border-radius:100% 0 0 100%;right:0}.automation{width:1.65em}.automation:before,.automation:after{border-radius:50%}.automation:after{opacity:.45;right:0}.section{margin-top:clamp(36px,5vw,66px)}.section h2{letter-spacing:-.06em;margin-bottom:clamp(16px,2.4vw,30px);font-size:clamp(30px,4.5vw,59px);font-weight:600;line-height:1.06}.service-list{border-top:1px solid var(--line)}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{cursor:pointer;letter-spacing:-.035em;grid-template-columns:clamp(38px,8vw,100px) 1fr auto;align-items:center;gap:8px;min-height:clamp(50px,7vw,85px);font-size:clamp(17px,2.65vw,34px);font-weight:600;list-style:none;display:grid}.service-list summary::-webkit-details-marker{display:none}.number{color:var(--deep-sage);letter-spacing:0;font-size:.72em;font-weight:700}.service-list p{color:var(--muted);margin:0 44px 18px clamp(46px,8vw + 8px,108px);line-height:1.45}.service-list details[open] .arrow{transform:rotate(90deg)}.service-list summary:hover .arrow,.project:hover .arrow,.offer:hover .arrow,.carousel-controls button:hover .arrow{background:var(--deep-sage);color:#fff;border-color:var(--deep-sage)}.projects{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,25px);display:grid;position:relative}.project{text-align:left;background:0 0;border:0;min-width:0;padding:0;display:block}.project-art{aspect-ratio:2;background:var(--soft-sage);border:1px solid var(--line);border-radius:9px;position:relative;overflow:hidden}.project-art img{object-fit:contain;object-position:top}.project-caption{letter-spacing:-.035em;justify-content:space-between;align-items:center;gap:8px;padding-top:11px;font-size:clamp(15px,2.15vw,27px);font-weight:700;display:flex}.carousel-controls{display:none}.offers{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.8vw,24px);display:grid}.offer{border:1px solid var(--line);border-radius:8px;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(14px,2.2vw,28px);transition:background .2s;display:flex}.offer:hover{background:var(--soft-sage)}.offer-icon{color:#829b75;width:40px;height:40px}.offer h3,.process h3{letter-spacing:-.045em;margin-bottom:6px;font-size:clamp(17px,2.5vw,32px);line-height:1.1}.offer p,.process p{color:var(--muted);font-size:clamp(14px,1.65vw,20px);line-height:1.3}.offer .arrow{margin-top:auto}.process{margin-bottom:clamp(35px,4vw,55px)}.process ol{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.process li{grid-template-columns:auto 1fr;gap:clamp(12px,2vw,24px);padding:0 clamp(12px,3vw,38px);display:grid}.process li:first-child{padding-left:0}.process li+li{border-left:1px solid var(--line)}.process .number{font-size:clamp(15px,2vw,24px)}.contact{color:#fff;background:#6d8363}.contact a{justify-content:space-between;align-items:center;gap:24px;min-height:clamp(100px,12vw,160px);padding-block:22px;display:flex}.contact h2{letter-spacing:-.06em;font-size:clamp(34px,5.8vw,74px);font-weight:500;line-height:1}.contact .arrow{aspect-ratio:1;color:#fff;border-color:#fff;width:clamp(44px,7vw,76px);height:auto;font-size:clamp(24px,4vw,44px)}.contact a:hover .arrow{color:var(--deep-sage);background:#fff}.footer{color:#faf8f6;background:#20211f;justify-content:space-between;align-items:center;gap:20px;padding-block:18px;display:flex}.footer .brand{font-size:23px}.brand small{color:#d6d8d1;letter-spacing:0;font-size:11px;font-weight:400;display:block}.footer nav{font-size:13px}@media (max-width:700px){:root{--inset:clamp(18px, 7.5vw, 52px);--header-height:70px}.header .brand img{width:56px}.brand{font-size:25px}.brand img{width:32px;height:32px}.menu-toggle{background:0 0;border:0;align-content:center;gap:5px;width:42px;height:42px;padding:6px;display:grid}.menu-toggle span{background:#244c32;height:2px}.navigation{display:none}.navigation.is-open{z-index:2;top:100%;inset-inline:var(--inset);border:1px solid var(--line);background:var(--paper);border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:16px;display:flex;position:absolute}.hero-copy{padding-block:14px 17px}h1{letter-spacing:-.065em;max-width:8.5em;font-size:clamp(36px,7.6vw,54px)}.desktop-break{display:none}.hero-copy p{max-width:24em;margin-top:10px}.mobile-cta{margin-top:15px;padding:12px 25px;display:inline-flex}.hero-frame{aspect-ratio:2.56}.hero-arrow{display:none}.intro h2{padding-block:22px 16px;font-size:clamp(26px,6.45vw,44px)}.disciplines{padding-block:6px}.disciplines>span{gap:6px;padding-inline:4px}.section{margin-top:24px}.section h2{margin-bottom:12px;font-size:clamp(25px,5.4vw,38px)}.service-list summary{grid-template-columns:32px 1fr auto;min-height:44px;font-size:clamp(14px,3.1vw,22px)}.service-list p{margin-left:40px}.arrow{width:30px;height:30px;font-size:17px}.projects{scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px;scroll-padding:2px;display:flex;overflow-x:auto}.projects::-webkit-scrollbar{display:none}.project{scroll-snap-align:start;flex:0 0 82%}.project:last-child{margin-right:calc(18% - 2px)}.project .project-art{aspect-ratio:1.92}.project .project-art img{object-position:center top}.project-caption .arrow{display:none}.carousel-controls{color:var(--muted);justify-content:flex-end;align-items:center;gap:10px;margin-top:9px;font-size:13px;display:flex}.carousel-controls b{color:var(--deep-sage)}.carousel-controls button{background:0 0;border:0;padding:0}.offers{grid-template-columns:1fr;gap:7px}.offer{grid-template-columns:clamp(33px,12vw,75px) 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.offer-icon{justify-self:center;width:32px;height:32px}.offer .arrow{margin:0}.offer h3,.process h3{margin-bottom:3px}.offer p,.process p{font-size:clamp(13px,2.45vw,17px)}.process{margin-bottom:21px}.process ol{grid-template-columns:1fr;gap:9px}.process li,.process li:first-child{border:0;gap:13px;padding:0}.process .number{background:var(--soft-sage);border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.contact a{gap:12px;min-height:84px;padding-block:14px}.contact h2{max-width:10em;font-size:clamp(27px,5.7vw,40px)}.footer nav{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.navigation [aria-current=page]{text-decoration:underline;-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage);text-underline-offset:10px;text-decoration-thickness:3px}.work-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.work-heading>a{color:var(--deep-sage);align-items:center;gap:8px;font-weight:600;display:inline-flex}.work-hero{isolation:isolate;align-items:start;min-height:clamp(260px,32vw,425px);padding-block:clamp(28px,4.4vw,60px);display:grid;position:relative}.work-hero h1{max-width:none;font-size:clamp(56px,10.6vw,136px)}.work-hero p{max-width:20em;color:var(--muted);margin-top:18px;font-size:clamp(19px,2.75vw,35px);line-height:1.25}.work-hero-art{z-index:-1;width:43%;position:absolute;inset:0 0 0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 17%);mask-image:linear-gradient(90deg,#0000,#000 17%)}.work-hero-art img{object-fit:cover;object-position:center}.work-filters{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px;padding-block:clamp(22px,3.5vw,45px);display:flex}.work-filters button{background:0 0;border:1px solid #bfc9bc;border-radius:999px;padding:10px 22px;font-size:clamp(15px,2vw,23px)}.work-filters button:hover{background:var(--soft-sage)}.work-filters [aria-pressed=true]{color:#fff;background:#6d8363;border-color:#6d8363}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,32px);padding-bottom:clamp(22px,3vw,36px);display:grid}.work-card{text-align:left;background:0 0;border:0;min-width:0;padding:0}.work-preview{aspect-ratio:2;background:#e8e5df;border-radius:11px;position:relative;overflow:hidden}.work-preview img{object-fit:contain;transition:transform .25s}.work-card:hover img{transform:scale(1.025)}.work-card:hover .arrow{color:#fff;background:var(--deep-sage)}.work-caption{grid-template-columns:auto 1fr auto;align-items:start;gap:clamp(10px,1.65vw,22px);padding-top:13px;display:grid}.work-caption strong,.work-caption .number{letter-spacing:-.045em;font-size:clamp(18px,2.6vw,34px);line-height:1.1;display:block}.work-caption small{color:var(--muted);margin-top:3px;font-size:clamp(14px,1.75vw,22px);display:block}.work-caption .arrow{aspect-ratio:1;border-color:#bfc9bc;width:clamp(32px,4.4vw,54px);height:auto;font-size:clamp(19px,2.6vw,32px)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.work-hero{min-height:0;padding-top:20px;padding-bottom:0}.work-hero h1{font-size:clamp(44px,10.5vw,72px)}.work-hero p{margin-top:10px}.work-hero-art{aspect-ratio:1.75;width:100%;margin-top:10px;position:relative;-webkit-mask-image:linear-gradient(#0000,#000 18%);mask-image:linear-gradient(#0000,#000 18%)}.work-hero-art img{object-fit:contain;object-position:right center}.work-filters{gap:8px}.work-filters button{padding-inline:13px}.work-grid{grid-template-columns:1fr}.work-heading>a{font-size:13px}}@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--hero-title-size:72px;--page-title-size:88px;--section-title-size:40px;--item-title-size:24px;--hero-copy-size:20px}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:400;line-height:1.55}p{letter-spacing:normal}button,input,select,textarea{font-family:inherit}.navigation,.footer nav,.pill,.work-filters button,.work-heading>a{font-size:14px;font-weight:600}.hero-copy h1,.work-hero h1,.contact-intro h1{letter-spacing:-.04em;line-height:1.06}.hero-copy h1{font-size:var(--hero-title-size);font-weight:600}.work-hero h1,.contact-intro h1{font-size:var(--page-title-size);font-weight:700}.hero-copy p,.work-hero p,.contact-intro p{font-size:var(--hero-copy-size);font-weight:400;line-height:1.55}.intro h2,.section h2,.contact h2,.contact-next h2,.inquiry-form h2{font-size:var(--section-title-size);letter-spacing:-.04em;font-weight:600;line-height:1.1}.service-list summary,.project-caption,.work-caption strong,.offer h3,.process h3{font-size:var(--item-title-size);letter-spacing:-.025em;font-weight:600;line-height:1.1}.offer p,.process p,.service-list p,.work-caption small{font-size:16px;font-weight:400;line-height:1.55}.navigation .pill[aria-current=page]{background:var(--deep-sage);text-decoration:none}.work-filters button:not([aria-pressed=true]):hover{background:var(--soft-sage)}.work-filters button[aria-pressed=true]:hover{background:var(--deep-sage)}.contact-intro{border-bottom:1px solid var(--line);padding-block:clamp(22px,4vw,52px) 22px}.contact-intro h1{max-width:none}.contact-intro p{color:var(--muted);margin-top:14px}.contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);align-items:start;gap:clamp(18px,2.3vw,32px);padding-block:26px;display:grid}.contact-art{aspect-ratio:630/461;background:var(--soft-sage);border-radius:12px;position:relative;overflow:hidden}.contact-art img{object-fit:cover}.contact-next{justify-content:space-between;align-items:flex-start;gap:16px;margin-top:20px;display:flex}.contact-next p{color:var(--muted);margin-top:6px}.contact-next .arrow{border-color:#a1b29c;width:44px;height:44px;font-size:24px}.contact-next:hover .arrow{color:#fff;background:var(--deep-sage)}.inquiry-form{border:1px solid #c4cec1;border-radius:13px;min-width:0;padding:clamp(18px,2.5vw,32px)}.inquiry-form h2{margin-bottom:20px}.inquiry-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.inquiry-wide{grid-column:1/-1}.inquiry-form label{align-content:start;gap:5px;font-size:14px;font-weight:600;line-height:1.35;display:grid}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;min-width:0;color:var(--ink);background:0 0;border:1px solid #b8c1b6;border-radius:7px;padding:8px 11px;font-size:16px;font-weight:400;line-height:1.55;display:block}.inquiry-form textarea{resize:vertical}.inquiry-submit{color:#fff;background:#647a5b;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;margin-top:16px;padding:10px 18px;font-size:14px;font-weight:600;display:flex}.inquiry-submit:hover{background:var(--deep-sage)}.inquiry-submit .arrow{color:inherit;border:0;font-size:26px}.inquiry-note,.inquiry-copy{margin-top:10px}.inquiry-note{color:var(--muted)}.inquiry-note a{text-decoration:underline}@media (max-width:800px){.contact-layout{grid-template-columns:minmax(0,1fr)}.contact-aside{order:1}.contact-art{max-width:640px}}@media (max-width:700px){:root{--hero-title-size:40px;--page-title-size:44px;--section-title-size:30px;--item-title-size:20px;--hero-copy-size:17px}.contact-intro h1 br{display:none}}@media (max-width:480px){.inquiry-fields{grid-template-columns:minmax(0,1fr)}}.detail-link{color:var(--deep-sage);align-items:center;gap:10px;font-size:14px;font-weight:600;display:inline-flex}.detail-link:hover{text-underline-offset:4px;text-decoration:underline}.detail-page .contact-intro .detail-kicker{color:var(--deep-sage);margin-block:24px 8px;font-size:14px;font-weight:600}.detail-screens{gap:24px;max-width:1050px;margin:24px auto 0;display:grid}.detail-screens.has-mobile{grid-template-columns:minmax(0,1fr) minmax(180px,25%);align-items:start}.detail-shot{min-width:0;margin:0}.detail-shot figcaption{color:var(--deep-sage);margin-bottom:8px;font-size:14px;font-weight:600}.detail-shot-mobile>img{border:1px solid var(--line);border-radius:12px;width:100%;height:auto;display:block}.detail-preview{aspect-ratio:2;background:#e8e5df;border-radius:12px;position:relative;overflow:hidden}.detail-preview img{object-fit:contain}.work-search{gap:6px;width:min(100%,360px);font-size:14px;font-weight:600;display:grid}.work-search input{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 12px;font-weight:400}.work-result-count{color:var(--muted);margin-block:12px;font-size:14px}.work-preview-missing{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.deployment-link{margin-top:14px}.project-deployment .deployment-link{gap:10px}.project-deployment .project-url{overflow-wrap:anywhere;margin-top:8px;font-size:14px}.project-facts{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px 32px;padding-block:24px;display:grid}.project-facts h2{font-size:var(--item-title-size);margin-bottom:6px;font-weight:600}.project-facts p{color:var(--muted)}@media (max-width:700px){.project-facts{grid-template-columns:minmax(0,1fr)}}.featured-case{background:var(--soft-sage);grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center;gap:clamp(24px,4vw,64px);padding-block:clamp(30px,5vw,72px);display:grid}.featured-case-copy>p{color:var(--muted);margin-bottom:14px}.featured-case-copy .featured-case-label{color:var(--deep-sage);font-size:14px;font-weight:600}.featured-case-screens{grid-template-columns:minmax(0,1fr) minmax(0,25%);align-items:center;gap:clamp(8px,1.5vw,20px);display:grid}.featured-case-screens .detail-preview,.featured-case-phone{border:1px solid var(--line);border-radius:10px}.featured-case-phone{width:100%;height:auto;display:block}@media (max-width:700px){.featured-case{grid-template-columns:minmax(0,1fr)}}.detail-features{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.detail-features li{background:var(--soft-sage);color:var(--deep-sage);border-radius:999px;padding:6px 12px;font-size:14px}.detail-next{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-block:32px;padding:20px 0;display:flex}.detail-next small{color:var(--muted);font-size:14px;display:block}.detail-next strong{font-size:var(--item-title-size);font-weight:600;display:block}.detail-next:hover .arrow,.service-detail a:hover .arrow{background:var(--deep-sage);color:#fff}.service-detail{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(12px,3vw,38px);padding-block:24px;display:grid}.service-detail:last-child{border-bottom:1px solid var(--line)}.service-detail .number{font-size:16px}.service-detail h2{font-size:var(--item-title-size);letter-spacing:-.025em;font-weight:600;line-height:1.1}.service-detail p{color:var(--muted);margin:8px 0 14px}.services-process{padding-bottom:35px}.services-process p{color:var(--muted);margin-bottom:14px}@media (max-width:700px){.service-detail{gap:10px;padding-block:18px}.detail-features li{border-radius:8px}.detail-screens.has-mobile{grid-template-columns:minmax(0,1fr)}.detail-shot-mobile{order:-1;width:min(100%,390px);margin-inline:auto}}
