@font-face{font-family:Interface;src:local('Inter'),local('Arial');font-display:swap}
:root{color-scheme:dark;--bg:#101416;--panel:#181e21;--panel-hover:#20282c;--text:#f4f5ee;--muted:#b2bbb9;--line:#354045;--accent:#c6ec7b;--ink:#152016;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Interface,Arial,sans-serif;font-size:1.0rem;line-height:1.6;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:hover{text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--ink)}.wrap{width:min(var(--max),calc(100% - 100px));margin:auto}.skip{position:fixed;top:-100px;left:16px;z-index:50;background:var(--accent);color:var(--ink);padding:12px}.skip:focus{top:12px}.header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:20}.nav{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:30px}.identity{display:flex;align-items:center;gap:14px;font-weight:600;letter-spacing:-.02em}.mark{width:39px;height:39px;background:var(--accent);color:var(--ink);display:grid;place-items:center;font-family:Georgia,serif;font-size:1.3125rem;border-radius:3px}.identity small{display:block;color:var(--muted);font-size:0.75rem;letter-spacing:.08em;font-weight:400;text-transform:uppercase;line-height:1.3}.nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:34px;font-size:0.875rem}.nav-links a{padding:12px 0;position:relative;color:var(--muted)}.nav-links a[aria-current=page]{color:var(--text)}.nav-links a[aria-current=page]:after{content:'';height:2px;background:var(--accent);position:absolute;bottom:1px;left:0;right:0}.nav-links a:hover,.footer a:hover,.text-link:hover{color:var(--accent)}.eyebrow{display:block;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin-bottom:22px}.hero{padding:77px 0 60px;display:grid;grid-template-columns:1.12fr .88fr;gap:80px;align-items:center}h1,h2,h3,p{margin:0}h1,h2,h3{overflow-wrap:break-word}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.07;letter-spacing:-.04em}h1{font-size:clamp(2.875rem,5.6vw,4.875rem);max-width:730px}h1 em{color:var(--accent);font-weight:400}h2{font-size:clamp(2.0rem,3.4vw,2.875rem)}h3{font-size:1.375rem;line-height:1.25;letter-spacing:-.03em;font-weight:500}.intro{font-size:1.125rem;line-height:1.7;color:var(--muted);max-width:610px;margin-top:27px}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);padding:11px 21px;border-radius:3px;font-size:0.875rem;font-weight:500;background:transparent;transition:background .15s,color .15s}.button.primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}.button:hover{background:var(--panel-hover);border-color:var(--muted)}.button.primary:hover{background:#dbf7a7;border-color:#dbf7a7}.location{margin-top:29px;font-size:0.875rem;color:var(--muted);display:flex;gap:12px;align-items:center}.location svg{width:17px;height:17px;flex-shrink:0;color:var(--accent)}.ledger{border:1px solid var(--line);border-radius:4px;overflow:hidden;box-shadow:14px 14px 0 #171d1f}.ledger-head{display:flex;align-items:center;justify-content:space-between;padding:19px 24px;background:var(--panel);font-size:0.75rem;letter-spacing:.1em;text-transform:uppercase}.ledger-head span:last-child{color:var(--muted);font-family:monospace}.ledger-title{padding:26px 24px 22px;font-family:Georgia,serif;font-size:1.9375rem;line-height:1.25;letter-spacing:-.02em}.ledger-row{margin:0 24px;display:grid;grid-template-columns:26px 1fr auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding:18px 0}.ledger-num{font-family:monospace;color:var(--muted);font-size:0.75rem}.ledger-row strong{font-size:1.0rem;font-weight:500;display:block}.ledger-row small{display:block;font-size:0.75rem;color:var(--muted);margin-top:3px}.ledger-label{font-size:0.75rem;color:var(--accent);border:1px solid #4f6337;border-radius:2px;padding:3px 7px}.ledger-foot{padding:17px 24px;background:#1d2820;color:var(--accent);font-size:0.875rem;border-top:1px solid #3b4c34}.section{border-top:1px solid var(--line);padding:54px 0 60px}.section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:33px}.section-header p{color:var(--muted);max-width:465px;font-size:1.0rem}.kicker{font-size:0.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:12px}.text-link{font-size:0.875rem;text-decoration:underline;text-underline-offset:5px}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.featured{padding:27px 0 0;border-top:2px solid var(--accent);display:flex;flex-direction:column;gap:18px}.featured .serial{font-family:monospace;font-size:0.75rem;color:var(--muted)}.featured p{color:var(--muted);font-size:1.0rem;flex:1}.featured a{align-self:flex-start;margin-top:2px}.featured .label{font-size:0.75rem;color:var(--accent)}.quote-section{display:grid;grid-template-columns:.6fr 1.4fr;gap:70px}.quote-section blockquote{font-family:Georgia,serif;font-size:1.9375rem;line-height:1.45;letter-spacing:-.015em;margin:0}.quote-section .caption{color:var(--muted);font-size:0.875rem;margin-top:21px;max-width:620px}.career-strip{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:30px;margin-top:42px;padding-top:25px;border-top:1px solid var(--line)}.career-strip .value{font-family:Georgia,serif;font-size:2.125rem;line-height:1.25;color:var(--accent);display:block}.career-strip small{font-size:0.875rem;color:var(--muted)}.career-label{font-size:0.75rem;color:var(--muted);margin-top:12px}.contact-band{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-band p{color:var(--muted);margin-top:13px;font-size:1.0rem}.footer{border-top:1px solid var(--line);padding:27px 0}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:22px;color:var(--muted);font-size:0.75rem}.footer-links{display:flex;gap:23px;flex-wrap:wrap}.footer-links a{font-size:0.875rem}.page-intro{padding:56px 0 33px}.page-intro .eyebrow{margin-bottom:18px}.page-intro h1{font-size:clamp(2.75rem,5vw,4.0625rem)}.page-intro p{margin-top:21px;color:var(--muted);max-width:740px;font-size:1.125rem}.explorer{padding-bottom:63px}.explorer-tools{display:flex;flex-direction:column;gap:22px;border-top:1px solid var(--line);padding-top:25px;margin-top:8px}.view-switch{display:inline-flex;align-self:flex-start;padding:4px;border:1px solid var(--line);border-radius:4px;gap:4px}.view-switch button{padding:8px 18px;border:0;background:transparent;border-radius:2px;font-size:0.875rem;color:var(--muted)}.view-switch button[aria-pressed=true]{background:var(--text);color:var(--bg)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{padding:8px 14px;border:1px solid var(--line);border-radius:3px;background:transparent;color:var(--muted);font-size:0.875rem}.filter:hover{border-color:var(--muted);color:var(--text)}.filter[aria-pressed=true]{background:#243122;color:var(--accent);border-color:#6b8251}.result-line{margin:25px 0 18px;font-size:0.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.project-card{border:1px solid var(--line);border-radius:4px;background:var(--panel);padding:26px;display:flex;flex-direction:column;min-height:320px;transition:background .15s,border-color .15s}.project-card:hover{background:var(--panel-hover);border-color:#74816d}.card-top{display:flex;justify-content:space-between;gap:12px;font-size:0.75rem;color:var(--muted);margin-bottom:25px}.card-top span:first-child{font-family:monospace}.card-top span:last-child{color:var(--accent)}.project-card h2{font-family:Interface,Arial,sans-serif;line-height:1.25;letter-spacing:-.025em;font-size:1.4375rem;font-weight:500}.project-card .summary{color:var(--muted);font-size:1.0rem;margin:15px 0 20px;flex:1}.card-proof{font-size:0.875rem;line-height:1.6;padding-top:17px;border-top:1px solid var(--line);color:var(--text)}.card-scope{font-size:0.75rem;color:var(--muted);margin-top:8px}.card-button{background:transparent;border:0;padding:0;display:flex;justify-content:space-between;width:100%;font-size:0.875rem;text-align:left;margin-top:22px;color:var(--accent);align-items:center}.card-button svg{width:19px;height:19px}.empty{padding:45px;border:1px solid var(--line);grid-column:1/-1;color:var(--muted)}.evidence-note{font-size:0.875rem;color:var(--muted);margin-top:28px;max-width:850px}.dialog{color:var(--text);background:var(--bg);border:1px solid #68766b;border-radius:6px;width:min(810px,calc(100% - 32px));max-height:90dvh;padding:0;box-shadow:0 30px 100px #000b}.dialog::backdrop{background:#070a0ddc;backdrop-filter:blur(5px)}body:has(.dialog[open]){overflow:hidden}.dialog-header{padding:27px 32px 23px;border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.dialog-header .eyebrow{margin-bottom:10px}.dialog-header h2{font-size:2.1875rem}.close{background:var(--panel);border:1px solid var(--line);border-radius:3px;min-width:42px;height:42px;display:grid;place-items:center}.close svg{width:19px;height:19px}.dialog-body{padding:27px 32px}.detail-hook{font-size:1.125rem;color:var(--muted);margin-bottom:24px}.brief{margin:0}.brief-row{display:grid;grid-template-columns:150px 1fr;gap:23px;padding:18px 0;border-top:1px solid var(--line)}.brief-row dt{font-size:0.875rem;font-weight:500;color:var(--accent)}.brief-row dd{margin:0;color:var(--muted);font-size:1.0rem}.scope-box{padding:18px 20px;border:1px solid var(--line);background:var(--panel);font-size:0.875rem;color:var(--muted);margin-top:23px}.scope-box strong{font-weight:500;color:var(--text)}.stack{font-size:0.75rem;color:var(--muted);margin-top:21px}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}.approach-lead{display:grid;grid-template-columns:1.3fr .7fr;gap:55px;padding:55px 0}.approach-lead h1{font-size:clamp(2.75rem,5vw,4.0625rem)}.approach-lead .intro{max-width:650px}.principle-card{padding:32px;border:1px solid var(--line);background:var(--panel);align-self:center}.principle-card .number{font-family:Georgia,serif;font-size:3.375rem;line-height:1;color:var(--accent)}.principle-card p{font-size:1.3125rem;margin-top:18px;line-height:1.45}.principle-card small{display:block;color:var(--muted);font-size:0.875rem;margin-top:17px}.questions{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.questions>div>p{color:var(--muted);font-size:1.0rem;margin-top:19px}.questions details{border-top:1px solid var(--line);padding:20px 0}.questions details:last-child{border-bottom:1px solid var(--line)}.questions summary{font-size:1.25rem;letter-spacing:-.015em;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.questions summary::-webkit-details-marker{display:none}.questions summary:after{content:'+';color:var(--accent);font-size:1.5rem;line-height:1}.questions details[open] summary:after{content:'−'}.question-number{font-family:monospace;font-size:0.75rem;letter-spacing:.08em;color:var(--accent);margin-right:17px;align-self:center}.questions details p{font-size:1.0rem;color:var(--muted);margin-top:18px;max-width:710px}.boundary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:35px;border:1px solid var(--line);border-radius:4px;overflow:hidden}.boundary>div{padding:27px;border-right:1px solid var(--line)}.boundary>div:last-child{border-right:0;background:#1f2b23}.boundary .n{font-family:monospace;font-size:0.75rem;color:var(--accent);display:block;margin-bottom:16px}.boundary h3{font-size:1.25rem}.boundary p{color:var(--muted);font-size:0.875rem;margin-top:14px}.boundary .role{font-size:0.75rem;display:block;margin-top:21px;text-transform:uppercase;letter-spacing:.09em;color:var(--accent)}.working-with{display:grid;grid-template-columns:1fr 1fr;gap:70px}.working-with .intro{margin-top:22px}.work-facts{margin:0}.work-facts>div{padding:17px 0;border-top:1px solid var(--line)}.work-facts dt{font-size:0.75rem;text-transform:uppercase;letter-spacing:.09em;color:var(--accent);margin-bottom:7px}.work-facts dd{margin:0;font-size:1.0rem;color:var(--muted)}.contact-email{display:inline-block;font-size:1.125rem;text-decoration:underline;text-underline-offset:6px;margin-top:25px;overflow-wrap:anywhere}.js-fallback{padding:23px;border:1px solid var(--line);margin-bottom:20px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.project-card .project-sector,.featured .project-sector,.dialog-header .project-sector{margin:7px 0 0;color:var(--accent);font-size:.8125rem;font-weight:500;line-height:1.4;letter-spacing:.04em;flex:none}
@media(min-width:1500px){.hero{padding-top:93px;padding-bottom:77px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:40px;grid-template-columns:1.05fr .95fr}h1{font-size:3.6875rem}.ledger-title{font-size:1.6875rem}.ledger-row{grid-template-columns:22px 1fr}.ledger-label{display:none}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-section,.questions{gap:40px}.boundary>div{padding:21px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.nav{gap:15px;min-height:84px;flex-wrap:wrap;padding:18px 0 12px}.identity{font-size:1.0rem}.nav-links{gap:23px}.nav-links a{padding:4px 0;font-size:0.875rem}.identity small{font-size:0.75rem}.hero{grid-template-columns:1fr;gap:42px;padding:45px 0}.hero h1{font-size:clamp(2.9375rem,9vw,3.9375rem)}.intro{font-size:1.0625rem}.ledger{box-shadow:7px 7px 0 #171d1f}.ledger-row{grid-template-columns:24px 1fr auto}.ledger-label{display:block}.ledger-title{font-size:1.8125rem}.section{padding:40px 0}.section-header{display:block}.section-header p{margin-top:18px}.section-header .text-link{display:inline-block;margin-top:20px}.featured-grid{grid-template-columns:1fr;gap:27px}.featured{gap:12px}.quote-section,.questions,.working-with,.approach-lead{grid-template-columns:1fr;gap:30px}.quote-section blockquote{font-size:1.6875rem}.career-strip{gap:20px;grid-template-columns:1fr}.career-strip .value{font-size:1.875rem}.contact-band{display:block}.contact-band .button{margin-top:25px}.footer-row{align-items:flex-start;flex-direction:column;gap:17px}.page-intro{padding:43px 0 30px}.page-intro h1,.approach-lead h1{font-size:2.9375rem}.page-intro p{font-size:1.0625rem}.project-grid{grid-template-columns:1fr}.project-card{min-height:0;padding:24px}.card-top{margin-bottom:19px}.project-card .summary{margin-bottom:18px}.view-switch button{padding:8px 14px}.boundary{grid-template-columns:repeat(2,1fr)}.boundary>div{border-bottom:1px solid var(--line)}.boundary>div:nth-child(2){border-right:0}.boundary>div:nth-child(3),.boundary>div:nth-child(4){border-bottom:0}.approach-lead{padding:43px 0 40px}.principle-card{padding:26px}.principle-card .number{font-size:2.4375rem}.principle-card p{font-size:1.25rem}.questions summary{font-size:1.125rem}.dialog-header,.dialog-body{padding:24px}.dialog-header h2{font-size:1.875rem}.brief-row{grid-template-columns:1fr;gap:8px;padding:16px 0}.location{align-items:flex-start}.location svg{margin-top:4px}}
@media(max-width:440px){.nav{flex-direction:column;align-items:flex-start}.nav-links{width:100%;justify-content:space-between;gap:15px}.boundary{grid-template-columns:1fr}.boundary>div{border-right:0}.boundary>div:nth-child(3){border-bottom:1px solid var(--line)}.ledger-row{grid-template-columns:22px 1fr}.ledger-label{display:none}.ledger-head{padding:17px 21px}.ledger-head span:last-child{letter-spacing:0}.ledger-title{padding:23px 21px}.dialog-header,.dialog-body{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

