
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700;750&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#101512;--surface:#181f1a;--surface-2:#1e2821;--text:#f0f2eb;--muted:#abb9ad;--dim:#829385;--line:#354339;--accent:#c7f69c;--accent-ink:#162017;--max:1260px;--gutter:clamp(20px,4.5vw,74px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'DM Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;z-index:-1;background-image:radial-gradient(#ffffff08 .45px,transparent .45px);background-size:8px 8px;pointer-events:none}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}p{color:var(--muted)}.container{width:min(100% - 2*var(--gutter),var(--max));margin-inline:auto}.eyebrow{font:700 11px/1.4 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.eyebrow.dim{color:var(--dim)}.accent{color:var(--accent)}.display,h1,h2,h3,h4{font-family:'Space Grotesk','DM Sans',sans-serif;letter-spacing:-.036em}h1,h2,h3,h4{margin:0;font-weight:600}h1{font-size:clamp(56px,7.2vw,104px);line-height:1.04;letter-spacing:-.045em}h2{font-size:clamp(37px,4.5vw,64px);line-height:1.12}h3{font-size:clamp(24px,2.45vw,33px);line-height:1.2}.lead{font-size:clamp(17px,1.55vw,21px);line-height:1.7;max-width:770px}.section{padding-block:clamp(76px,9vw,132px);border-top:1px solid var(--line)}.section-intro{display:flex;justify-content:space-between;gap:42px;align-items:end;margin-bottom:44px}.section-intro h2{margin:18px 0 0;max-width:780px}.section-intro p{max-width:370px;margin:0 0 5px;font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;border:1px solid #798c79;border-radius:999px;padding:12px 23px;font-size:13px;font-weight:700;letter-spacing:.01em;color:var(--text);background:transparent;transition:border-color .25s ease,background-color .25s ease,color .25s ease,transform .25s ease}.button:hover{border-color:var(--accent);transform:translateY(-2px)}.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.button.primary:hover{background:#defabf}.button svg,.text-link svg{width:17px;height:17px;flex:none;transition:transform .28s cubic-bezier(.2,.8,.2,1)}.button:hover svg,.text-link:hover svg{transform:translate(3px,-3px)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700;color:var(--accent)}.text-link:hover{color:#e3ffcd}.muted{color:var(--muted)}.small{font-size:13px}.rule{border:0;border-top:1px solid var(--line);margin:0}.site-header{position:fixed;top:0;left:0;right:0;z-index:60;background:rgba(16,21,18,.92);border-bottom:1px solid transparent;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transform:translate3d(0,0,0);transition:transform .68s cubic-bezier(.16,1,.3,1),border-color .3s,background-color .3s;will-change:transform}.site-header.scrolled{border-color:var(--line)}.site-header.hidden{transform:translate3d(0,-105%,0)}.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:700 24px/1 'Space Grotesk',sans-serif;letter-spacing:-.065em;white-space:nowrap}.brand span{color:var(--accent)}.header-links{display:flex;align-items:center;gap:32px}.header-links a{font-size:13px;font-weight:650;color:#cfd9cc;transition:color .2s}.header-links a:hover,.header-links a[aria-current=page]{color:var(--accent)}.header-links .header-cta{border:1px solid #687b69;border-radius:99px;padding:9px 16px}.menu{display:none}.page-content{padding-top:84px}.hero{padding-block:clamp(100px,12vw,175px) clamp(90px,11vw,155px);position:relative;overflow:hidden}.hero h1{max-width:1080px;margin:26px 0 28px}.hero .lead{max-width:670px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.hero-meta{display:flex;align-items:center;gap:16px;margin-top:64px;color:var(--dim);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hero-meta:before{content:"";display:block;width:38px;height:1px;background:#77927a}.hero-ornament{position:absolute;width:280px;right:7%;bottom:8%;opacity:.44;pointer-events:none}.hero-ornament .stroke{stroke-dasharray:540;stroke-dashoffset:540;animation:draw 1.9s .2s forwards cubic-bezier(.35,0,.2,1)}@keyframes draw{to{stroke-dashoffset:0}}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:var(--surface);min-height:485px;overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}.project-card:hover{transform:translateY(-5px);border-color:#667c67;box-shadow:0 20px 50px #0002}.project-visual{height:168px;position:relative;overflow:hidden;background:#1d2c22;border-bottom:1px solid #ffffff16;padding:26px}.project-visual:before{position:absolute;content:"";inset:0;background:radial-gradient(ellipse at 70% 0%,#c7f69c13,transparent 65%);pointer-events:none}.project-visual .visual-label{font:500 11px 'DM Sans';text-transform:uppercase;letter-spacing:.14em;color:#b2c2ad}.mini-lines{display:grid;gap:8px;margin-top:23px}.mini-lines span{height:8px;background:#b2cead1f;border-radius:2px}.mini-lines span:nth-child(1){width:70%}.mini-lines span:nth-child(2){width:88%}.mini-lines span:nth-child(3){width:50%}.visual-system{position:absolute;right:24px;bottom:22px;display:flex;align-items:center;gap:13px}.visual-system span{display:block;width:12px;height:12px;border:1.5px solid var(--accent);border-radius:50%;box-shadow:0 0 0 5px #c7f69c0a}.visual-system i{display:block;width:30px;height:1px;background:#62846c}.project-copy{display:flex;flex-direction:column;flex:1;padding:28px}.project-copy h3{font-size:clamp(23px,2.05vw,29px);margin:18px 0 12px}.project-copy p{font-size:14px;margin:0 0 26px}.project-copy .text-link{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);justify-content:space-between}.status{display:inline-flex;width:max-content;align-items:center;gap:7px;color:#cddaca;font-size:11px;font-weight:600;letter-spacing:.025em}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:#91ab8e}.status.paused:before{background:#b3ac8b}.status.active:before{background:var(--accent)}.number{color:#88a08a;font:600 11px 'DM Sans';letter-spacing:.08em}.thinking-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.thinking-grid h2{max-width:590px;margin:20px 0}.thinking-grid p{font-size:17px;margin:8px 0 24px}.process-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.process-item{border-top:1px solid #718574;padding-top:24px}.process-item h3{font-size:22px;margin:15px 0 8px}.process-item p{font-size:14px}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:end;padding-block:38px 50px}.footer-inner p{margin:8px 0 0;font-size:13px}.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:13px}.footer-links a:hover{color:var(--accent)}.case-hero{padding-block:clamp(80px,8vw,122px) clamp(68px,8vw,118px)}.case-hero h1{max-width:950px;margin:24px 0}.case-hero .lead{max-width:780px}.case-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:25px;margin-top:47px}.case-meta dt{font-size:10px;color:var(--dim);font-weight:700;text-transform:uppercase;letter-spacing:.13em;margin-bottom:7px}.case-meta dd{font-size:13px;font-weight:600;margin:0}.case-section{padding-block:clamp(70px,7.8vw,110px);border-bottom:1px solid var(--line)}.case-section h2{max-width:920px;margin:16px 0 28px}.case-section .lead{margin-bottom:40px}.case-cols{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.case-cols .section-marker{padding-top:8px}.fact-list{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:26px}.fact{border-top:1px solid #607462;padding-top:20px}.fact h3{font-size:20px;margin:9px 0}.fact p{font-size:14px}.artifact{border:1px solid #415549;border-radius:11px;background:#162018;overflow:hidden;margin:42px 0 10px}.artifact-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 21px;border-bottom:1px solid var(--line);color:#bed0be;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.artifact-body{padding:clamp(22px,4vw,52px)}.artifact-note{padding:0 21px 20px;color:#819a85;font-size:12px}.flow-diagram{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flow-node{min-height:125px;border:1px solid #516855;border-radius:8px;padding:18px;background:#1e2a20;position:relative}.flow-node b{display:block;color:var(--accent);font-size:11px;margin-bottom:15px}.flow-node strong{font:600 17px 'Space Grotesk'}.flow-node small{display:block;color:#a8bbaa;margin-top:8px}.flow-node:after{content:"→";position:absolute;right:-12px;top:48%;color:var(--accent);z-index:1}.flow-node:last-child:after{display:none}.architecture{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.architecture .flow-node{cursor:pointer;transition:border-color .25s,background .25s}.architecture .flow-node:hover,.architecture .flow-node[aria-pressed=true]{border-color:var(--accent);background:#29402a}.architecture .flow-node:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.diagram-detail{min-height:60px;padding-top:20px;color:var(--muted);font-size:14px}.decision-toggle{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.toggle{border:1px solid #6b816c;background:transparent;border-radius:999px;padding:10px 16px;color:#e2ede0;font-weight:650;font-size:12px;transition:background .2s,color .2s}.toggle[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.decision-panel{padding:25px;border:1px solid #4b624e;background:#1b281e;border-radius:8px}.decision-panel h3{margin:0 0 9px;font-size:23px}.decision-panel p{margin:0}.timeline{border-left:1px solid #677e69;padding-left:26px;margin:38px 0}.timeline-item{padding:1px 0 25px;position:relative}.timeline-item:before{content:"";position:absolute;left:-31px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.timeline-item h3{font-size:21px;margin:10px 0}.timeline-item p{margin:0;font-size:14px}.notice{border-left:2px solid var(--accent);padding:15px 24px;background:#1c281e;margin:30px 0;color:#b7c8b7;font-size:14px}.simple-copy{max-width:805px}.simple-copy h2{font-size:clamp(27px,3vw,36px);margin:32px 0 10px}.simple-copy p{margin:0 0 13px}.contact-box{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-box h2{margin:12px 0 16px}.privacy a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.privacy h2{margin-top:38px}
@media(min-width:900px){.hero .lead{margin-left:2px}}
@media(max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card:last-child{grid-column:span 2;min-height:0}.project-card:last-child .project-visual{height:120px}.thinking-grid{gap:45px}.case-cols{gap:42px}}
@media(max-width:760px){:root{--gutter:22px}.header-inner{height:71px}.page-content{padding-top:71px}.header-links{display:none}.menu{display:block;position:relative}.menu summary{display:flex;gap:8px;align-items:center;font-size:13px;list-style:none;cursor:pointer;border:1px solid #526a55;border-radius:100px;padding:9px 14px}.menu summary::-webkit-details-marker{display:none}.menu summary:after{content:"+";font-size:20px;line-height:.7}.menu[open] summary:after{content:"−"}.menu nav{position:absolute;right:0;top:45px;background:#1b281e;border:1px solid #526a55;box-shadow:0 20px 45px #0006;border-radius:10px;width:min(280px,calc(100vw - 44px));padding:14px;display:flex;flex-direction:column;gap:4px}.menu nav a{padding:11px 12px;font-size:14px;border-radius:5px}.menu nav a:hover{background:#2c3d30}.hero{padding-block:90px 80px}.hero h1{font-size:clamp(49px,12vw,76px);letter-spacing:-.035em}.hero-ornament{display:none}.hero-meta{margin-top:45px}.section-intro{display:block;margin-bottom:33px}.section-intro p{max-width:570px;margin-top:20px}.project-grid{grid-template-columns:1fr}.project-card,.project-card:last-child{grid-column:auto;min-height:0}.project-card:last-child .project-visual{height:168px}.project-copy{min-height:260px}.thinking-grid,.case-cols,.fact-list,.contact-box{grid-template-columns:1fr;display:grid;gap:20px}.case-meta{grid-template-columns:repeat(2,1fr)}.process-list{grid-template-columns:1fr}.flow-diagram,.architecture{grid-template-columns:repeat(2,1fr)}.flow-node:nth-child(2):after{display:none}.footer-inner{display:block}.footer-links{margin-top:21px}.case-hero{padding-top:75px}.case-cols .section-marker{margin-bottom:8px}}
@media(max-width:420px){.hero h1{font-size:48px}.flow-diagram,.architecture{grid-template-columns:1fr}.flow-node:after{display:none}.case-meta{gap:25px 14px}.hero-actions{align-items:stretch}.hero-actions .button{flex:1}}
@media(prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transform:translate3d(0,19px,0);transition:opacity .68s cubic-bezier(.2,.8,.2,1),transform .68s cubic-bezier(.2,.8,.2,1)}[data-reveal].in-view{opacity:1;transform:none}.project-card:nth-child(2){transition-delay:.065s}.project-card:nth-child(3){transition-delay:.12s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important}}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
