@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{font-family:DM Sans,sans-serif;color:#202923;background:#f7f8f4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper:#f7f8f4;--ink:#202923;--muted:#59625b;--line:#d9ddd5;--accent:#c63f20;--orange:#ff7853;--mono:"IBM Plex Mono",monospace}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}::selection{background:#ffc8b5;color:#202923}html{scroll-behavior:smooth;scroll-padding-top:100px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}a,button,summary,input,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section{padding-block:112px}.eyebrow{font-family:var(--mono);font-size:.75rem;font-weight:400;letter-spacing:.075em;text-transform:uppercase;line-height:1.6}.arrow{height:21px;width:21px;flex-shrink:0}.signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-160%);z-index:50;background:var(--ink);color:#fff;padding:12px 20px}.skip-link:focus{transform:none}.site-header{background:#f7f8f4f7;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.125rem;letter-spacing:.11em;line-height:1.1}.wordmark-sub{display:block;font-family:var(--mono);font-size:.75rem;letter-spacing:.12em;margin-top:5px}.brand-symbol{width:43px;height:43px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);font-size:2rem;letter-spacing:-.15em;padding-right:6px}.brand-symbol span{color:var(--orange);font-size:1.6rem;position:relative;top:-6px}.navigation{display:flex;align-items:center;gap:36px;font-size:.875rem}.navigation a{padding:12px 0;display:flex;align-items:center;gap:12px}.navigation a:hover{color:var(--accent)}.navigation a:last-child{border-bottom:1px solid var(--ink)}.menu-toggle{display:none}.hero{padding-block:90px 80px;display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}.hero h1{font-size:clamp(3.5rem,5.6vw,5.4rem);letter-spacing:-.065em;line-height:1.06}.hero h1>span{color:var(--accent)}.hero-description{font-size:1.0625rem;line-height:1.75;max-width:445px;margin-top:28px;color:var(--muted)}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 24px;min-height:54px;font-size:.875rem;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#36453a;transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:.875rem;border-bottom:1px solid var(--line);padding-bottom:6px}.text-link:hover{border-color:var(--accent);color:var(--accent)}.hero-footnote{display:flex;gap:26px;font:.75rem var(--mono);letter-spacing:.04em;color:var(--muted);margin-top:48px}.system-panel{border:1px solid #465047;background:#242e27;color:#eef3e9;align-self:stretch;display:flex;flex-direction:column;margin-block:15px 10px}.panel-heading{display:flex;align-items:center;gap:9px;padding:20px 23px;font:.75rem var(--mono);letter-spacing:.02em;border-bottom:1px solid #465047}.panel-heading>span:last-child{margin-left:auto;color:#b4beae}.panel-heading .signal{background:#d2e29e}.system-grid{flex:1;padding:36px 26px 26px;background-image:radial-gradient(#4e594e .7px,transparent .7px);background-size:16px 16px}.system-node{padding:18px;border:1px solid #6d7869;background:#2c372e}.system-node>span,.system-node>div>span{display:block;font:.75rem var(--mono);color:#bdcbb6;margin-bottom:12px}.system-node strong{font-size:1.02rem;font-weight:500;letter-spacing:-.01em}.system-node.source{max-width:270px;margin:auto;border-color:#c3d395}.system-node.source strong{font-size:1.625rem;line-height:1.2}.system-node small{display:block;color:#c3cebf;font:.75rem/1.6 var(--mono);margin-top:16px}.connector{height:33px;width:1px;background:#a2ad92;margin:auto;position:relative}.connector:after{content:"";position:absolute;bottom:0;left:-3px;width:7px;height:7px;border-right:1px solid #a2ad92;border-bottom:1px solid #a2ad92;transform:rotate(45deg)}.system-middle{display:grid;grid-template-columns:1fr 25px 1fr;align-items:center}.system-middle .system-node{min-height:100px;padding:16px 12px}.node-bridge{text-align:center;color:#c3d395}.output{background:#c3d395;color:#202923;display:flex;align-items:center;justify-content:space-between;padding:20px 23px}.system-node.output span{color:#3a4834}.output strong{font-size:1.25rem}.evaluation-line{font:.75rem/1.6 var(--mono);color:#c1cbbb;display:flex;align-items:center;gap:12px;margin-top:19px}.evaluation-line>span{font-size:1.2rem;color:#d2e29e}.panel-footer{padding:17px 23px;border-top:1px solid #465047;font:.75rem/1.6 var(--mono);color:#b8c2b2;display:flex;justify-content:space-between;gap:12px}.expertise-strip{border-block:1px solid var(--line)}.expertise-strip>.container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:25px}.expertise-strip p{font-size:.875rem;line-height:1.6;color:var(--muted);padding-right:30px;border-right:1px solid var(--line)}.expertise-strip strong{font-weight:500;color:var(--ink)}.expertise-strip>.container>span{font-size:1.1rem;font-weight:500;letter-spacing:-.04em}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:55px;margin-bottom:52px}.section-heading>.eyebrow{padding-top:9px;color:var(--accent)}h2{font-size:clamp(2.2rem,3.5vw,3.25rem);letter-spacing:-.05em;line-height:1.13}.section-heading>div>p{font-size:1rem;color:var(--muted);line-height:1.8;margin-top:22px;max-width:520px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.service{padding:32px 28px 34px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.service:first-child{padding-left:0}.service:last-child{padding-right:0;border:0}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.service-top>span{font:.875rem var(--mono);color:var(--muted)}.service-top .arrow{color:var(--accent)}.service>.eyebrow{color:var(--muted);margin-bottom:14px}.service h3{font-size:1.625rem;line-height:1.23;letter-spacing:-.04em;margin-bottom:18px;max-width:270px}.service>p:not(.eyebrow){font-size:1rem;line-height:1.75;color:var(--muted);margin-bottom:26px}.tags{list-style:none;padding:0;margin:0;display:flex;gap:7px;flex-wrap:wrap}.service .tags{margin-top:auto}.tags li{font-size:.875rem;line-height:1.4;border:1px solid var(--line);padding:5px 9px}.work-section{background:#202923;color:var(--paper)}.work-section .section-heading>.eyebrow{color:var(--orange)}.work-section .section-heading>div>p{color:#b9c3b7}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.project{border:1px solid #4a554c;padding:32px;display:flex;flex-direction:column;background:#253028}.project-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:23px}.project-top .eyebrow{color:#cad7be}.project-number{font:.75rem var(--mono);color:#a8b49f}.project h3{font-size:1.875rem;line-height:1.2;letter-spacing:-.035em;margin-bottom:16px}.project-description{font-size:1rem;line-height:1.75;color:#c0cabe;max-width:480px;flex:1}.project-flow{display:flex;align-items:center;justify-content:center;background:#1d261f;padding:25px 12px;margin-block:28px;min-height:108px;gap:8px;border:1px solid #465245}.project-flow>span{display:contents}.project-flow>span>span{font:.75rem/1.6 var(--mono);border:1px solid #718165;padding:9px;text-align:center;max-width:130px}.project-flow i{font-style:normal;color:#afc196}.project .tags li{border-color:#596553;color:#d1dccb}.project details{margin-top:26px;border-top:1px solid #4a554c;padding-top:18px}.project summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;list-style:none;min-height:28px}.project summary::-webkit-details-marker{display:none}.details-indicator{font-size:1.3rem;color:#c3d395;transition:transform .2s}.project details[open] .details-indicator{transform:rotate(45deg)}.project details>p{font-size:1rem;color:#c0cabe;line-height:1.75;margin-top:16px}.project details>small{display:block;font:.75rem/1.8 var(--mono);color:#c3d395;margin-top:18px}.outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.outcomes article{border-top:1px solid var(--ink);padding-top:24px}.outcomes .eyebrow{color:var(--muted)}.outcome-value{font-size:4.75rem;letter-spacing:-.065em;line-height:1.2;margin-top:24px}.outcomes h3{font-size:1.125rem;margin-top:5px;margin-bottom:18px}.outcomes article>p:not(.eyebrow):not(.outcome-value){font-size:1rem;color:var(--muted);line-height:1.75;max-width:340px}.stack-line{display:block;font:.75rem/1.8 var(--mono);margin-top:23px;color:var(--muted)}.about-section{background:#e9ede4;border-block:1px solid #d0d7c8}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-grid .eyebrow{color:var(--accent);margin-bottom:26px}.about-intro{font-size:1.125rem;line-height:1.7;margin-top:30px}.about-grid .text-link{margin-top:28px;border-color:#a8b49f}.about-copy{padding-top:46px}.about-copy>p{font-size:1.125rem;line-height:1.85;color:#414e40;margin-bottom:22px}.practice-facts{margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.practice-facts>div{border-top:1px solid #aab6a3;padding-top:14px;display:flex;flex-direction:column;gap:6px}.practice-facts>div:last-child{grid-column:1/-1}.practice-facts strong{font-size:1rem;font-weight:500}.practice-facts span{font-size:.875rem;color:var(--muted)}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-copy .eyebrow{color:var(--accent);margin-bottom:28px}.contact-copy h2{font-size:clamp(3.3rem,5vw,4.6rem)}.contact-copy h2 span{color:var(--accent)}.contact-copy>p:not(.eyebrow):not(.contact-location){color:var(--muted);font-size:1rem;line-height:1.8;max-width:390px;margin-top:24px}.contact-email{display:inline-flex;gap:18px;align-items:center;font-size:clamp(.95rem,1.7vw,1.25rem);padding-bottom:8px;border-bottom:1px solid var(--line);margin-top:32px;overflow-wrap:anywhere}.contact-email:hover{color:var(--accent)}.contact-location{font-size:.875rem;color:var(--muted);margin-top:20px}.contact-form{padding-top:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:25px}.field label{display:block;font-size:.875rem;margin-bottom:12px}.field input,.field textarea{width:100%;border:1px solid #bfc7b9;border-radius:0;background:transparent;padding:14px 15px;font-size:1rem;color:var(--ink);min-width:0}.field textarea{resize:vertical;min-height:150px;line-height:1.7}.field input::placeholder,.field textarea::placeholder{color:#727a6e}.form-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin-bottom:22px}.contact-form .button{width:100%;justify-content:space-between}.form-status{font-size:.875rem;line-height:1.75;margin-top:18px}.form-status.error{color:#a42c16}.form-status a{text-decoration:underline}.site-footer{background:var(--ink);color:#dce4d7;padding-block:35px}.site-footer>.container{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:.875rem}.footer-brand{font-size:.875rem;font-weight:600;letter-spacing:.07em}.footer-brand span{display:block;font-size:.875rem;letter-spacing:0;font-weight:400;color:#b3c0ad;margin-top:8px}.site-footer>.container>span{color:#b3c0ad}.site-footer a:hover{color:#fff}@media (min-width:1500px){.hero{padding-block:110px 100px}.hero h1{font-size:5.5rem}}@media (max-width:1100px){.container{width:calc(100% - 64px)}.hero{gap:35px}.hero-actions{gap:20px}.hero h1{font-size:4rem}.system-grid{padding:30px 20px}.hero-footnote{gap:15px;flex-wrap:wrap}.section{padding-block:88px}.section-heading{gap:35px}.service{padding-inline:22px}.project{padding:25px}.project-flow{padding-inline:8px;gap:6px}.project-flow>span>span{padding:8px}.about-grid,.contact-section{gap:50px}.form-row{grid-template-columns:1fr;gap:0}}@media (max-width:800px){.container{width:calc(100% - 40px)}.header-inner{height:76px}.navigation{gap:20px}.hero{grid-template-columns:1fr;gap:44px;padding-block:60px}.hero-copy{max-width:600px}.hero h1{font-size:clamp(3.5rem,9vw,5rem)}.hero-description{max-width:510px}.hero-footnote{margin-top:32px}.system-panel{width:100%;max-width:600px;margin-block:0}.system-grid{padding:28px 30px}.system-node.source{max-width:280px}.system-middle .system-node{padding:20px}.system-middle{grid-template-columns:1fr 45px 1fr}.system-node strong{font-size:1.1rem}.expertise-strip>.container{flex-wrap:wrap;justify-content:flex-start;gap:20px 28px}.expertise-strip p{width:100%;border:0;padding:0}.expertise-strip p br{display:none}.expertise-strip strong{margin-left:6px}.expertise-strip>.container>span{font-size:1rem}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:38px}.services-grid{grid-template-columns:1fr}.service,.service:first-child,.service:last-child{padding:30px 0;border:0;border-bottom:1px solid var(--line)}.service:last-child{border:0}.service-top{margin-bottom:22px}.service h3{max-width:none}.service>p:not(.eyebrow){max-width:600px}.projects-grid{gap:16px}.project h3{font-size:1.5rem}.project-flow{flex-direction:column;gap:8px}.project-flow>span>span{max-width:none;width:100%}.project-flow i{transform:rotate(90deg)}.outcomes{gap:24px}.outcome-value{font-size:3.6rem}.about-grid,.contact-section{grid-template-columns:1fr;gap:36px}.about-copy{padding:0}.contact-form{max-width:650px;width:100%}.form-row{grid-template-columns:1fr 1fr;gap:20px}.site-footer>.container{flex-wrap:wrap}.section{padding-block:70px}}@media (max-width:560px){html{scroll-padding-top:90px}.header-inner{height:72px}.wordmark{font-size:1rem}.brand-symbol{width:38px;height:38px}.menu-toggle{display:flex;align-items:center;gap:22px;background:transparent;border:1px solid var(--line);padding:9px 12px;font-size:.875rem;color:var(--ink)}.menu-toggle span{font-size:1.2rem}.navigation{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:20px;border-bottom:1px solid var(--line);box-shadow:0 12px 18px #20292312}.navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:6px}.navigation a{padding:14px 10px;font-size:1rem;justify-content:space-between}.navigation a:last-child{border:0}.hero{padding-top:45px;gap:38px}.hero .eyebrow{letter-spacing:.02em}.hero h1{font-size:clamp(3rem,12vw,4.2rem)}.hero-description{font-size:1rem}.hero-actions{gap:22px;align-items:flex-start;flex-direction:column}.hero-footnote{gap:16px;flex-wrap:wrap}.panel-heading{padding:18px}.panel-heading>span:last-child{display:none}.system-grid{padding:25px 16px}.system-middle{grid-template-columns:1fr 24px 1fr}.system-middle .system-node{padding:15px 10px}.system-node strong{font-size:.875rem}.system-node.output strong{font-size:1.1rem}.panel-footer{padding:17px}.projects-grid{grid-template-columns:1fr}.project{padding:25px}.project h3{font-size:1.75rem}.project-flow{flex-direction:row;gap:6px}.project-flow>span>span{width:auto;max-width:100px}.project-flow i{transform:none}.outcomes{grid-template-columns:1fr;gap:36px}.outcome-value{font-size:4.3rem;margin-top:18px}.outcomes article>p:not(.eyebrow):not(.outcome-value){max-width:none}.practice-facts{gap:20px}.practice-facts span{line-height:1.6}.form-row{grid-template-columns:1fr;gap:0}.contact-copy h2{font-size:3.6rem}.site-footer>.container{align-items:flex-start;gap:28px}.footer-brand{width:100%}.site-footer>.container>span{flex:1}.section{padding-block:60px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.primary:hover{transform:none}}
