@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2")}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-wght-normal.Xz1IZZA0.woff2)format("woff2")}@layer base{:root{--paper:#f6f5ef;--ink:#222b29;--muted:#59615b;--line:#d8dbd1;--green:#c7ef7d;--green-dark:#4b632f;--soft:#e9ece3;--font:"DM Sans Variable", sans-serif;--display:"Manrope Variable", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green-dark);outline-offset:6px;border-radius:2px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--green-dark);outline-offset:3px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;font-weight:550;line-height:1.12}h1{font-size:clamp(2.9rem,5.3vw,5.2rem)}h2{font-size:clamp(2rem,3.2vw,3.05rem)}h3{letter-spacing:-.025em;font-size:1.3rem}p{color:var(--muted)}img,svg{max-width:100%;display:block}img{height:auto}::selection{background:var(--green);color:var(--ink)}.wrap{width:min(1280px,100% - 112px);margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.69rem;font-weight:650;line-height:1.5}.button{cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:space-between;align-items:center;gap:36px;min-height:52px;padding:14px 23px;font-size:.84rem;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.dark{color:var(--paper);background:var(--ink)}.button.dark:hover{background:#3b493d}.button span{font-size:1.2rem}.text-link{align-items:center;gap:22px;font-size:.83rem;font-weight:550;line-height:1.5;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.text-link span{font-size:1.15rem}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:12px 24px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.small-note{font-size:.78rem;line-height:1.6}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{border:1px solid var(--line);color:var(--muted);border-radius:3px;padding:4px 10px;font-size:.65rem;line-height:1.6}}@layer components{.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:112px;display:flex}.wordmark{font-family:var(--display);letter-spacing:-.06em;align-items:center;gap:10px;font-size:1.45rem;font-weight:750;line-height:1;display:inline-flex}.wordmark>span{display:inline-block}.wordmark-light{font-weight:450}.brand-dot{color:var(--green-dark)}.desktop-nav{align-items:center;gap:35px;font-size:.82rem;display:flex}.desktop-nav>a{padding:10px 0}.desktop-nav>a:hover,.desktop-nav>a[aria-current]{text-underline-offset:7px;text-decoration:underline}.desktop-nav .nav-contact{border:1px solid var(--ink);border-radius:4px;align-items:center;gap:28px;margin-left:14px;padding:9px 17px;display:flex}.mobile-nav{display:none}.hero{grid-template-columns:1.22fr 1fr;column-gap:7%;padding-top:100px;display:grid}.hero-copy>.eyebrow{align-items:center;gap:10px;margin-bottom:31px;display:flex}.tiny-cross{color:var(--green-dark);font-size:1.1rem}.hero h1{letter-spacing:-.055em;white-space:nowrap;font-size:clamp(3rem,4.8vw,4.75rem);line-height:1.13}.hero h1>span{color:#6a7567}.hero-intro{margin-top:27px;font-size:1.05rem;line-height:1.7}.hero-actions{align-items:center;gap:26px;margin-top:34px;display:flex}.hero-actions .text-link{gap:10px;font-size:.75rem}.hero-foot{border-bottom:1px solid var(--line);letter-spacing:.11em;color:var(--muted);grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:80px;padding-bottom:25px;font-size:.62rem;display:flex}.hero-foot>a{letter-spacing:0;gap:40px;font-size:.72rem;display:flex}.system-diagram{background:var(--ink);color:#f2f4e9;background-image:radial-gradient(#465047 1px,#0000 1px);background-size:19px 19px;border-radius:7px;align-self:center;min-height:380px;position:relative;overflow:hidden}.diagram-top{letter-spacing:.095em;background:var(--ink);border-bottom:1px solid #4a534c;align-items:center;gap:8px;padding:20px 21px;font-size:.52rem;display:flex}.diagram-top>span:last-child{color:#b4bcb0;margin-left:auto}.status-dot{background:var(--green);border-radius:50%;width:6px;height:6px;display:inline-block}.diagram-core{text-align:center;padding:26px 28px 28px}.diagram-label{letter-spacing:.16em;color:#bdc7b7;font-size:.5rem}.diagram-problem{background:#2e3830;border:1px solid #65715e;border-radius:4px;justify-content:center;align-items:center;gap:14px;width:84%;margin:9px auto 0;padding:12px;font-size:.73rem;display:flex}.diagram-problem>span{color:var(--green);font-size:1rem}.connector{background:#839575;width:1px;height:23px;margin:auto}.diagram-engine{background:var(--green);color:var(--ink);text-align:left;border-radius:4px;justify-content:space-between;align-items:center;padding:17px 22px;display:flex;box-shadow:0 0 40px #b4dd6714}.diagram-engine>span{font-size:1rem;font-weight:500;line-height:1.45}.diagram-engine strong{font-weight:650}.diagram-engine .engine-spark{font-size:2.3rem;font-weight:400}.diagram-branches{justify-content:space-around;height:26px;margin-inline:15%;display:flex;position:relative}.diagram-branches:before{content:"";background:#8a9b7b;height:1px;position:absolute;top:12px;left:0;right:0}.diagram-branches i{background:#8a9b7b;width:1px;margin-top:12px}.diagram-branches i:nth-child(2){margin-top:0}.diagram-outputs{gap:8px;display:flex}.diagram-outputs>div{background:#2d372f;border:1px solid #607057;border-radius:4px;flex-direction:column;flex:1;align-items:center;gap:6px;padding:11px 3px;font-size:.62rem;display:flex}.diagram-outputs>div>span{color:#c7ef7d;font-size:1.15rem;line-height:1}.diagram-bottom{color:#cad5c0;background:#29332c;border-top:1px solid #465342;justify-content:space-between;padding:13px 21px;font-size:.6rem;display:flex}.diagram-bottom>span:last-child{color:var(--green)}.intro-section{grid-template-columns:1fr 2.2fr;gap:8%;padding-block:77px 90px;display:grid}.intro-section>.eyebrow{padding-top:9px}.intro-section h2{font-size:clamp(1.7rem,2.65vw,2.55rem)}.intro-section p:not(.eyebrow){max-width:660px;margin-top:24px;font-size:.95rem}.intro-section .text-link{margin-top:25px}.section-heading{justify-content:space-between;align-items:end;gap:35px;margin-bottom:42px;display:flex}.section-heading h2{margin-top:15px}.section-heading>p{font-size:.87rem}.work-section{padding-block:25px 96px}.project-grid{grid-template-columns:1fr 1fr;gap:54px 35px;display:grid}.project-card:first-child{grid-column:1/-1;grid-template-columns:1.5fr 1fr;align-items:start;column-gap:55px;display:grid}.project-card:first-child .project-visual{grid-row:1/5}.project-card:first-child .project-caption{align-self:end;margin-top:36px}.project-card:first-child .project-description{max-width:310px;margin-block:15px;font-size:1.35rem;line-height:1.5}.project-card:first-child .tags{align-self:start;margin-top:16px}.project-visual{background:#dfe7dc;border-radius:5px;height:310px;min-height:310px;padding:57px 35px 0;transition:background .3s;display:block;position:relative;overflow:hidden}.project-card:first-child .project-visual{height:390px}.project-thriving-fries .project-visual{background:#e7e3d7}.project-h2-sanacion .project-visual{background:#dce8e5}.project-story-x-ai .project-visual{background:#e3deeb}.project-number{letter-spacing:.12em;color:#465444;font-size:.53rem;position:absolute;top:20px;left:24px}.browser-frame{background:#fff;border:1px solid #00000013;border-radius:5px 5px 0 0;width:100%;height:100%;transition:transform .35s;overflow:hidden;transform:translateY(6px)rotate(-2deg);box-shadow:0 16px 30px #202d2824}.project-visual:hover .browser-frame{transform:translateY(-1px)rotate(0)}.browser-bar{background:#fff;border-bottom:1px solid #d8dbd1;align-items:center;gap:4px;height:23px;padding:0 10px;display:flex}.browser-bar i{background:#d3d5cf;border-radius:50%;width:4px;height:4px}.browser-bar>span{color:#59615b;margin:auto;font-size:.35rem}.browser-frame>img{object-fit:cover;object-position:top;width:100%;height:auto;min-height:100%}.image-arrow{background:var(--paper);border-radius:50%;place-items:center;width:37px;height:37px;font-size:1.2rem;display:grid;position:absolute;bottom:17px;right:17px}.project-caption{justify-content:space-between;align-items:center;margin-top:21px;display:flex}.project-caption h3{margin-top:7px;font-size:1.55rem}.project-caption h3 a:hover{text-underline-offset:5px;text-decoration:underline}.project-caption .eyebrow{font-size:.6rem}.project-caption>span{font-size:1.5rem}.project-description{margin-block:12px 16px;font-size:.9rem}.archive-art{flex-direction:column;justify-content:space-between;height:100%;padding:20px 10px;display:flex}.archive-art>span:first-child{font-family:var(--display);letter-spacing:-.05em;font-size:2.8rem;line-height:1.15}.archive-art>span:last-child{letter-spacing:.08em;padding-bottom:30px;font-size:.7rem}.capabilities-section{background:var(--ink);color:var(--paper);padding-block:78px 74px}.capabilities-section .eyebrow{color:#c1cbb8}.capabilities-section .section-heading>p{color:#b9c1b4}.service-list{border-top:1px solid #55604f}.service-row{border-bottom:1px solid #55604f;grid-template-columns:45px 1fr 1fr 27px;align-items:center;gap:25px;padding:27px 0;transition:background .2s;display:grid}.service-row:hover{background:#2e392e}.service-n{color:var(--green);font-size:.63rem}.service-row h3{font-size:1.15rem;font-weight:500}.service-row p{color:#bdc6b8;max-width:355px;font-size:.79rem}.service-arrow{color:var(--green);font-size:1.3rem}.approach-section{grid-template-columns:1fr 1fr;gap:9%;padding-block:95px;display:grid}.approach-section h2{margin-block:22px 30px;font-size:2.45rem}.approach-section h2>span{color:#6a7567}.steps{margin:0;padding:0;list-style:none}.steps li{border-bottom:1px solid var(--line);gap:26px;padding-block:24px;display:flex}.steps li:first-child{padding-top:0}.steps li>span{color:var(--green-dark);padding-top:4px;font-size:.63rem}.steps h3{font-size:1.12rem}.steps p{max-width:340px;margin-top:10px;font-size:.83rem}.contact-band{background:var(--green);border-radius:5px;margin-bottom:85px;padding:41px 45px 46px}.contact-band>.eyebrow{color:#465b2e}.contact-band>div{justify-content:space-between;align-items:end;gap:30px;margin-top:17px;display:flex}.contact-band h2{font-size:clamp(1.9rem,3vw,2.8rem)}.contact-band h2>span{color:#4d6338}.site-footer{padding-bottom:26px}.footer-top{justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px;display:flex}.footer-top>p{font-size:.75rem;line-height:1.6}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:21px;font-size:.62rem;display:flex}.footer-bottom>a:hover{text-decoration:underline}.wordmark.small{font-size:1.3rem}.page-heading{padding-block:78px 66px}.page-heading>.eyebrow{margin-bottom:26px}.page-heading h1{max-width:1080px}.page-heading h1>span{color:#6a7567}.page-heading>p:not(.eyebrow){max-width:690px;margin-top:28px;font-size:1.08rem;line-height:1.75}.portfolio-list{padding-block:6px 90px}.portfolio-list .project-card:first-child{grid-column:auto;display:block}.portfolio-list .project-card:first-child .project-visual{height:310px}.portfolio-list .project-card:first-child .project-caption{margin-top:21px}.portfolio-list .project-card:first-child .project-description{max-width:none;margin-block:12px 16px;font-size:.9rem}.portfolio-list .project-card:first-child .tags{margin-top:0}.case-heading{padding-block:40px 50px}.back-link{margin-bottom:50px;font-size:.75rem;display:inline-block}.back-link:hover{text-decoration:underline}.case-heading>.eyebrow{margin-bottom:20px}.case-heading h1{font-size:clamp(3rem,6vw,5.5rem)}.case-subtitle{margin-top:16px;font-size:clamp(1.3rem,2.2vw,2rem);line-height:1.4}.case-heading .tags{margin-top:25px}.case-image{background:var(--soft);border-radius:5px;padding:40px 50px 0}.case-image>img{object-fit:cover;object-position:top;width:min(100%,1000px);max-height:650px;margin-inline:auto;box-shadow:0 0 20px #0001}.case-image figcaption{color:var(--muted);padding:15px 0;font-size:.66rem}.case-body{grid-template-columns:1fr 2fr;gap:10%;padding-block:76px 80px;display:grid}.case-body aside{border-top:1px solid var(--line);align-self:start;padding-top:20px}.case-body aside h2{font-family:var(--font);letter-spacing:0;margin-block:22px 7px;font-size:.73rem}.case-body aside p:not(.eyebrow){font-size:.8rem}.case-body aside .text-link{margin-top:23px}.case-body .source-note{margin-top:28px;font-size:.67rem!important}.prose{max-width:760px;font-size:1rem;line-height:1.8}.prose h2{margin-block:38px 18px;font-size:1.7rem}.prose h2:first-child{margin-top:0}.prose p+p{margin-top:18px}.prose a:not(.text-link){text-underline-offset:4px;text-decoration:underline}.prose ul{color:var(--muted);padding-left:20px}.prose li+li{margin-top:10px}.prose figure{margin-top:35px}.prose figure img{border-radius:4px}.prose figcaption{color:var(--muted);margin-top:12px;font-size:.68rem}.next-project{border-top:1px solid var(--line);padding-block:26px 80px}.next-project>a{font-family:var(--display);letter-spacing:-.04em;justify-content:space-between;margin-top:20px;font-size:2.4rem;display:flex}.about-grid{grid-template-columns:1fr 1.7fr;gap:12%;padding-block:10px 80px;display:grid}.name-block{background:var(--soft);border-radius:5px;align-self:start;padding:30px}.name-block .eyebrow{font-size:.58rem}.monogram{font-size:8rem;line-height:1.7;font-family:var(--display);letter-spacing:-.12em;justify-content:space-between;align-items:center;display:flex}.monogram>span{letter-spacing:0;color:var(--green-dark);padding-top:30px;font-size:3rem;font-weight:300}.name-block h2{font-size:2rem}.name-block>p{margin-top:16px;font-size:.7rem}.experience-section{grid-template-columns:1fr 2fr;gap:10%;padding-block:0 90px;display:grid}.timeline>div{border-top:1px solid var(--line);padding:26px 0}.timeline>div>span{color:var(--green-dark);font-size:.67rem}.timeline h3{margin-block:10px;font-size:1.25rem}.timeline p{font-size:.86rem}.timeline .small-note{margin-top:15px;font-size:.72rem}.service-details{padding-bottom:75px}.service-details>article{border-top:1px solid var(--line);grid-template-columns:1fr 2.2fr;gap:8%;padding-block:40px;display:grid}.service-index{font-size:3rem;font-family:var(--display);letter-spacing:-.07em;color:#7c8874;line-height:1}.service-details h2{margin-bottom:20px;font-size:2rem}.service-details article p{max-width:650px;font-size:.95rem}.service-details ul{color:var(--muted);margin-block:22px;padding-left:18px;font-size:.85rem}.service-details li+li{margin-top:7px}.engagement{border-top:1px solid var(--line);padding-block:48px 75px}.engagement h2{margin-block:20px 36px}.engagement-grid{grid-template-columns:repeat(3,1fr);gap:45px;display:grid}.engagement-grid span{color:var(--green-dark);letter-spacing:.1em;font-size:.6rem}.engagement-grid h3{margin-block:15px;font-size:1.2rem}.engagement-grid p{font-size:.86rem}.contact-layout{grid-template-columns:1fr 1.6fr;gap:11%;padding-block:0 100px;display:grid}.contact-layout aside{padding-top:10px}.contact-layout h2{margin-block:20px;font-size:1.8rem}.contact-layout aside>p:not(.eyebrow){margin-bottom:24px;font-size:.86rem}.contact-signature{border-top:1px solid var(--line);padding-top:23px;font-size:.85rem}.contact-signature span{color:var(--muted);margin-top:4px;font-size:.72rem;display:block}.contact-form{gap:22px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:22px;display:grid}.contact-form label{font-size:.78rem;font-weight:550;line-height:1.5;display:block}.contact-form label span{color:var(--muted);font-size:.67rem;font-weight:400}.contact-form input:not([type=hidden]),.contact-form textarea{width:100%;color:var(--ink);background:#fcfcf7;border:1px solid #b8c1b3;border-radius:3px;min-height:48px;margin-top:9px;padding:12px;font-size:.9rem;display:block}.contact-form textarea{resize:vertical;min-height:170px}.contact-form .button{justify-self:start}.form-privacy{font-size:.7rem;line-height:1.7}.form-privacy a{text-decoration:underline}.contact-layout form+p{margin-top:20px}.legal{margin-inline:auto;padding-bottom:90px}.legal h2{font-size:1.65rem}.not-found .button{margin-top:32px;margin-right:28px}.not-found{min-height:70vh}@media (width>=1450px){.hero{padding-top:110px}.hero h1{font-size:4.75rem}.system-diagram{min-height:400px}.diagram-core{padding-block:30px}.project-card:first-child .project-visual{height:430px}}@media (width<=1100px){.wrap{width:calc(100% - 72px)}.hero{gap:5%;padding-top:70px}.hero h1{font-size:4.5vw}.hero-actions{flex-direction:column;align-items:start;gap:18px}.hero-intro{font-size:.93rem}.system-diagram{min-height:360px}.diagram-core{padding:22px 19px}.diagram-engine{padding:16px}.diagram-engine>span{font-size:.88rem}.diagram-engine .engine-spark{font-size:1.8rem}.hero-foot{margin-top:65px}.project-card:first-child{column-gap:32px}.project-card:first-child .project-description{font-size:1.15rem}.service-row{grid-template-columns:30px 1fr 1fr 20px;gap:20px}.service-row h3{font-size:1rem}.approach-section h2{font-size:2rem}.contact-band{padding:32px}.contact-band .button{white-space:nowrap;gap:20px}.project-visual{height:280px;min-height:280px;padding-inline:25px}.project-card:first-child .project-visual{height:360px}.case-body{gap:7%}}@media (width<=800px){.wrap{width:calc(100% - 48px)}.site-header{height:88px}.desktop-nav{gap:23px}.desktop-nav .nav-contact{gap:15px;margin-left:0}.hero{grid-template-columns:1fr;gap:0;padding-top:54px}.hero h1{font-size:clamp(2.9rem,7.5vw,4.5rem)}.hero-intro{font-size:1.05rem}.hero-actions{flex-direction:row;align-items:center;gap:30px}.system-diagram{justify-self:center;width:100%;max-width:600px;min-height:370px;margin-top:45px}.diagram-core{padding:25px 40px}.diagram-engine{padding-inline:30px}.diagram-engine>span{font-size:1.1rem}.diagram-engine .engine-spark{font-size:2.4rem}.hero-foot{margin-top:45px}.intro-section{grid-template-columns:1fr;gap:20px;padding-block:55px 65px}.intro-section h2{font-size:2.1rem}.project-card:first-child{grid-column:auto;display:block}.project-card:first-child .project-visual{height:280px}.project-card:first-child .project-caption{margin-top:21px}.project-card:first-child .project-description{margin-block:12px 16px;font-size:.9rem}.project-card:first-child .tags{margin-top:0}.project-grid{gap:36px 24px}.project-visual{height:250px;min-height:250px;padding:50px 18px 0}.project-caption h3{font-size:1.3rem}.project-caption .eyebrow{font-size:.54rem}.project-number{left:18px}.service-row{grid-template-columns:25px 1fr 20px;gap:15px;padding-block:24px}.service-row p{grid-area:2/2;max-width:none}.service-arrow{grid-area:1/3/3}.service-row h3{font-size:1.2rem}.section-heading>p{display:none}.approach-section{grid-template-columns:1fr;gap:40px;padding-block:65px}.steps p{max-width:none}.contact-band>div{flex-direction:column;align-items:start}.contact-band h2{font-size:2.3rem}.contact-band{margin-bottom:60px}.footer-top{gap:20px}.footer-top>p,.footer-bottom>span:nth-child(2){display:none}.page-heading{padding-block:55px}.page-heading h1{font-size:clamp(2.7rem,6.6vw,4rem)}.case-body{grid-template-columns:1fr;gap:45px;padding-top:45px}.case-body aside{grid-template-columns:1fr 1fr;column-gap:30px;display:grid}.case-body aside .eyebrow{grid-column:1/-1}.case-body aside h2{grid-column:1}.case-body aside p:not(.eyebrow){grid-column:2}.case-body aside h2+p{margin-top:16px}.case-body aside .text-link,.case-body aside .source-note{grid-column:1/-1}.case-image{padding:25px 25px 0}.about-grid{grid-template-columns:1fr;gap:40px}.name-block{display:none}.experience-section{grid-template-columns:1fr;gap:25px}.service-details>article{grid-template-columns:50px 1fr;gap:20px}.engagement-grid{grid-template-columns:1fr;gap:32px}.engagement-grid p{max-width:530px}.contact-layout{grid-template-columns:1fr;gap:38px}.contact-layout aside{grid-template-columns:1fr 1fr;column-gap:35px;display:grid}.contact-layout aside>.eyebrow,.contact-layout aside>h2,.contact-signature{grid-column:1/-1}.archive-art>span:first-child{font-size:2rem}}@media (width<=540px){.wrap{width:calc(100% - 40px)}.site-header{height:80px}.wordmark{gap:8px;font-size:1.3rem}.wordmark>svg{width:27px}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav>summary{cursor:pointer;align-items:center;gap:24px;padding:10px 0;font-size:.75rem;list-style:none;display:flex}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav[open]>summary>span{transform:rotate(45deg)}.mobile-nav>nav{background:var(--ink);width:210px;color:var(--paper);z-index:20;border-radius:4px;padding:10px 20px;position:absolute;top:48px;right:0;box-shadow:0 10px 25px #0002}.mobile-nav nav a{border-bottom:1px solid #52604d;padding:12px 0;font-size:.9rem;display:block}.mobile-nav nav a:last-child{color:var(--green);border:0}.hero{padding-top:46px}.hero-copy>.eyebrow{margin-bottom:25px;font-size:.58rem}.hero h1{white-space:normal;letter-spacing:-.055em;font-size:clamp(2.25rem,9.3vw,3.3rem)}.hero-intro{margin-top:23px;font-size:.94rem}.hero-actions{flex-direction:column;align-items:start;gap:20px;margin-top:27px}.hero-actions .text-link{font-size:.77rem}.hero-actions .button{min-height:50px}.system-diagram{min-height:340px;margin-top:36px}.diagram-top{gap:6px;padding:16px;font-size:.45rem}.diagram-core{padding:23px 20px}.diagram-problem{gap:10px;width:91%;padding:10px;font-size:.67rem}.diagram-engine{padding:14px 18px}.diagram-engine>span{font-size:.95rem}.diagram-engine .engine-spark{font-size:2rem}.diagram-outputs>div{font-size:.57rem}.diagram-bottom{padding:12px 17px;font-size:.56rem}.hero-foot{margin-top:30px;padding-bottom:20px}.hero-foot>span{letter-spacing:.08em;max-width:200px;font-size:.5rem}.hero-foot>a{white-space:nowrap;gap:18px;font-size:.6rem}.intro-section{padding-block:45px 55px}.intro-section h2{font-size:1.9rem}.intro-section p:not(.eyebrow){margin-top:20px;font-size:.9rem}.intro-section .text-link{font-size:.76rem}.section-heading{gap:15px;margin-bottom:28px}.section-heading h2{font-size:2rem}.section-heading>.text-link{white-space:nowrap;gap:10px;font-size:.69rem}.work-section{padding-block:0 60px}.project-grid{grid-template-columns:1fr;gap:38px}.project-visual,.project-card:first-child .project-visual,.portfolio-list .project-card:first-child .project-visual{height:290px;min-height:0;padding-inline:26px}.project-caption h3{font-size:1.45rem}.project-caption .eyebrow{font-size:.57rem}.project-description{font-size:.88rem}.project-card:first-child .project-description{max-width:none}.tags span{font-size:.6rem}.capabilities-section{padding-block:50px}.capabilities-section h2{font-size:2rem}.service-row{grid-template-columns:23px 1fr 18px;gap:9px}.service-row h3{font-size:1rem;line-height:1.4}.service-row p{font-size:.77rem}.approach-section{gap:36px;padding-block:55px}.approach-section h2{font-size:2rem}.steps li{gap:22px}.steps h3{font-size:1rem}.steps p{font-size:.81rem}.contact-band{width:calc(100% - 40px);margin-bottom:48px;padding:28px 23px 30px}.contact-band h2{font-size:1.8rem;line-height:1.2}.contact-band>div{gap:26px}.contact-band .button{min-height:48px;font-size:.78rem}.footer-top{flex-direction:column;align-items:start;gap:25px;padding-bottom:30px}.footer-top>.text-link{font-size:.78rem}.footer-bottom{gap:15px;font-size:.58rem}.page-heading{padding-block:45px}.page-heading>.eyebrow{margin-bottom:24px;font-size:.6rem}.page-heading h1{font-size:clamp(2.3rem,9vw,3.3rem);line-height:1.16}.page-heading>p:not(.eyebrow){margin-top:23px;font-size:.96rem}.portfolio-list{padding-bottom:60px}.case-heading{padding-block:25px 35px}.back-link{margin-bottom:36px}.case-heading h1{font-size:2.7rem}.case-heading>.eyebrow{font-size:.56rem}.case-subtitle{font-size:1.3rem}.case-image{padding:18px 15px 0}.case-image figcaption{font-size:.6rem}.case-body{padding-block:40px 55px}.prose{font-size:.93rem}.prose h2{font-size:1.5rem}.case-body aside{display:block}.case-body aside h2+p{margin-top:0}.case-body aside h2{margin-top:18px}.case-body aside .text-link{font-size:.78rem}.case-body .source-note{margin-top:16px}.next-project{padding-bottom:50px}.next-project>a{font-size:1.9rem}.about-grid{padding-bottom:45px}.experience-section{padding-bottom:50px}.timeline h3{font-size:1.15rem}.service-details{padding-bottom:30px}.service-details>article{grid-template-columns:1fr;gap:18px;padding-block:30px}.service-index{font-size:1.8rem}.service-details h2{font-size:1.65rem;line-height:1.25}.service-details article p{font-size:.9rem}.service-details .text-link{font-size:.78rem;display:inline}.engagement{padding-block:35px 55px}.engagement h2{font-size:1.9rem}.contact-layout{padding-bottom:65px}.contact-layout aside{display:block}.contact-layout h2{margin-block:15px}.contact-layout aside>p:not(.eyebrow){font-size:.83rem}.contact-signature{margin-top:5px}.form-row{grid-template-columns:1fr;gap:22px}.contact-form label{font-size:.75rem}.contact-form input:not([type=hidden]),.contact-form textarea{font-size:16px}.legal{padding-bottom:55px}.not-found .text-link{margin-top:25px;display:flex}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-visual:hover .browser-frame,.button:hover{transform:none}}}.anchor-target{pointer-events:none;width:1px;height:1px;display:block;position:absolute}.platform-map{background:var(--soft);border:1px solid var(--line);border-radius:5px;margin-top:46px;padding:28px}.platform-map h2{margin-top:12px;font-size:1.6rem}.platform-layers{grid-template-columns:1fr;gap:12px;margin-top:24px;display:grid}.platform-layer{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:20px}.platform-index{letter-spacing:.09em;color:var(--green-dark);font-size:.59rem;font-weight:650;line-height:1.5;display:block}.platform-layer h3{margin-top:12px;font-size:1.16rem}.platform-layer p{margin-top:9px;font-size:.83rem;line-height:1.65}.platform-boundary{color:var(--green-dark);border-top:1px solid var(--line);margin-top:16px;padding-top:12px;font-size:.65rem;line-height:1.6;display:block}.platform-learning{border-style:dashed}.prose .platform-map-note{margin-top:19px;font-size:.7rem;line-height:1.7}@media (width<=540px){.platform-map{padding:21px 15px}.platform-layer{padding:17px}}
