/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-outline-style:solid}}}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-ext-wght-normal.BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@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-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme{:root,:host{--font-sans:"DM Sans Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-xs:20rem;--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.isolate{isolation:isolate}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.block{display:block}.contents{display:contents}.grid{display:grid}.inline{display:inline}.min-h-\[60vh\]{min-height:60vh}.max-w-xs{max-width:var(--container-xs)}.list-disc{list-style-type:disc}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color-scheme:light;--ink:#101d30;--muted:#526072;--line:#d8dfe5;--space:clamp(1.25rem, 5vw, 5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#faf9f6;margin:0;font-size:1rem;line-height:1.65}button,input,textarea,select{font:inherit}a{color:inherit;text-underline-offset:.25em}button,summary{cursor:pointer}::selection{color:#101d30;background:#c5d8ee}:focus-visible{outline-offset:5px;outline:3px solid #3865a2}.dark :focus-visible{outline-color:#b7d5ff}.wrap{width:min(1200px, calc(100% - 2 * var(--space)));margin-inline:auto}.section{padding-block:clamp(4rem,8vw,7rem)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#446287;margin:0 0 1.25rem;font-size:.73rem;font-weight:650}.dark .eyebrow{color:#aec7e5}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em;text-wrap:balance;font-weight:500;line-height:1.08}h1{font-size:clamp(2.8rem,5.6vw,5.5rem)}h2{font-size:clamp(2.2rem,4vw,3.7rem)}h3{font-size:clamp(1.4rem,2.2vw,1.9rem)}p{margin-bottom:1.2rem}.lead{color:var(--muted);max-width:45rem;font-size:clamp(1.1rem,1.5vw,1.32rem);line-height:1.65}.small{font-size:.87rem}.muted{color:var(--muted)}.dark{color:#fff;background:#101d30}.dark .lead,.dark .muted{color:#b5c2d2}.rule{border-top:1px solid var(--line)}.skip{z-index:50;color:#101d30;background:#fff;padding:.7rem 1rem;position:absolute;top:-8rem;left:1rem}.skip:focus{top:1rem}.review-note{text-align:center;color:#233a58;background:#e8eef5;border-bottom:1px solid #c7d3e0;padding:.5rem 1rem;font-size:.75rem}.site-header{background:#faf9f6;border-bottom:1px solid #d8dfe5}.nav-shell{justify-content:space-between;align-items:center;gap:2rem;min-height:90px;display:flex}.brand{letter-spacing:-.055em;align-items:center;gap:.65rem;font-size:1.55rem;font-weight:600;text-decoration:none;display:inline-flex}.brand svg{width:36px;height:32px}.desktop-nav{align-items:center;gap:1.8rem;font-size:.85rem;display:flex}.desktop-nav a{padding-block:.6rem;text-decoration:none}.desktop-nav a[aria-current=page]{box-shadow:0 2px #5078ac}.nav-cta{border:1px solid #aebac8;padding:.6rem 1rem!important}.mobile-nav{display:none}.button{color:#fff;background:#101d30;border:1px solid #101d30;justify-content:center;align-items:center;gap:1.5rem;min-height:50px;padding:.85rem 1.3rem;font-size:.9rem;font-weight:550;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#233a58;transform:translateY(-2px)}.button.light{color:#101d30;background:#faf9f6;border-color:#faf9f6}.button.light:hover{background:#dce7f1}.button.outline{color:inherit;background:0 0;border-color:#7c8ca2}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.text-link{border-bottom:1px solid #a8b7c6;align-items:center;gap:1.5rem;padding-bottom:.35rem;font-size:.9rem;font-weight:550;text-decoration:none;display:inline-flex}.actions{flex-wrap:wrap;gap:.9rem;margin-top:2rem;display:flex}.hero{position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.55fr .8fr;align-items:center;gap:2.5rem;min-height:640px;padding-block:5.5rem;display:grid}.hero h1{z-index:2;max-width:760px;margin-bottom:1.8rem;font-size:clamp(3.2rem,5.1vw,5rem);line-height:1.03;position:relative}.hero h1 span{color:#a9c1e0}.hero .lead{max-width:35rem;font-size:1.1rem}.hero-art{width:100%;overflow:visible}.hero-foot{letter-spacing:.13em;text-transform:uppercase;color:#aabbd0;border-top:1px solid #334156;justify-content:space-between;gap:1rem;padding-block:1.2rem;font-size:.69rem;display:flex}.intro-grid{grid-template-columns:.55fr 1fr;gap:5rem;display:grid}.section-top{justify-content:space-between;align-items:flex-end;gap:3rem;margin-bottom:2.5rem;display:flex}.section-top h2{max-width:42rem;margin-bottom:0}.service-row{border-top:1px solid var(--line);grid-template-columns:60px 1fr 1fr 35px;align-items:baseline;gap:1.7rem;padding:2rem 0;text-decoration:none;display:grid}.service-row h3{margin-bottom:0}.service-row p{color:var(--muted);max-width:29rem;margin:0}.service-row .number{color:#536d8c;font-variant-numeric:tabular-nums;font-size:.75rem}.service-row:hover h3{color:#446b9b}.work-section{background:#eef1f3}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.2rem 2rem;display:grid}.case-card{position:relative}.case-visual{background:#dce4ec;margin-bottom:1.5rem;padding:2rem;overflow:hidden}.case-card:nth-child(2n) .case-visual{background:#dde4e1}.case-card:nth-child(3n) .case-visual{background:#e5e1da}.case-card h3{margin-bottom:.8rem;font-size:1.8rem}.case-card h3 a{text-decoration:none}.case-card h3 a:after{content:"";position:absolute;inset:0}.case-card .eyebrow{margin-bottom:.65rem}.case-card p{color:var(--muted)}.case-card:hover .case-visual svg{transform:translateY(-3px)}.case-card .case-visual svg{transition:transform .25s}.tags{flex-wrap:wrap;gap:.5rem;margin:1.3rem 0 0;padding:0;list-style:none;display:flex}.tags li{color:#43556c;border:1px solid #c6d0da;border-radius:2px;padding:.22rem .55rem;font-size:.72rem;line-height:1.6}.steps{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}.step{border-top:1px solid #506077;padding-top:1.4rem}.step span{color:#a9c1e0;font-size:.8rem}.step h3{margin-top:1.5rem;font-size:1.55rem}.step p{color:#b5c2d2;font-size:.94rem}.principal{grid-template-columns:.85fr 1fr;align-items:center;gap:5rem;display:grid}.principal-mark{background:#e4e9ed;place-content:center;min-height:310px;display:grid;position:relative}.principal-mark span{letter-spacing:-.1em;color:#233a58;font-size:6rem;font-weight:350}.principal-mark small{text-align:center;letter-spacing:.16em;text-transform:uppercase;font-size:.7rem}.cta{background:#e5ebf0;padding-block:4.5rem}.cta .wrap{justify-content:space-between;align-items:center;gap:3rem;display:flex}.cta h2{max-width:40rem;margin-bottom:0;font-size:clamp(2rem,3.5vw,3rem)}.footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:3rem;padding-block:4rem;display:grid}.footer-grid ul{margin:0;padding:0;list-style:none}.footer-grid li{margin-bottom:.65rem}.footer-grid a:not(.brand){color:#b5c2d2;font-size:.9rem;text-decoration:none}.footer-grid a:hover{color:#fff;text-decoration:underline}.footer-bottom{color:#b5c2d2;border-top:1px solid #334156;justify-content:space-between;gap:1rem;padding-block:1.2rem;font-size:.75rem;display:flex}.page-hero{border-bottom:1px solid var(--line);padding-block:5rem 4rem}.page-hero h1{max-width:56rem;margin-bottom:1.5rem}.page-hero .lead{margin-bottom:0}.expertise-item{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr 1fr;gap:2.5rem;padding-block:3rem;display:grid}.expertise-item ul{color:var(--muted);padding-left:1rem}.expertise-item .number{color:#446287;font-size:.9rem}.process-item{border-top:1px solid var(--line);grid-template-columns:70px 1fr 1fr;gap:2.5rem;padding-block:2rem;display:grid}.process-item h3{font-size:1.6rem}.process-item p{color:var(--muted);margin:0}.split{grid-template-columns:1fr 1fr;gap:5rem;display:grid}.case-meta{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding-block:1.3rem;display:grid}.case-meta dt{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-size:.68rem}.case-meta dd{margin:0;font-size:.9rem}.case-body{grid-template-columns:220px minmax(0,1fr);gap:5rem;display:grid}.case-aside{font-size:.85rem}.case-aside nav{flex-direction:column;gap:.65rem;display:flex;position:sticky;top:2rem}.case-aside a{color:#526072;text-decoration:none}.prose{max-width:760px}.prose h2{margin-top:3rem;margin-bottom:1.2rem;font-size:2rem}.prose h2:first-child{margin-top:0}.prose h3{margin-top:2rem;font-size:1.4rem}.prose p,.prose li{color:#435166}.prose ul,.prose ol{margin-block:1rem 1.8rem;padding-left:1.35rem}.prose li{margin-bottom:.55rem}.prose table{border-collapse:collapse;width:100%;margin-block:1.5rem;font-size:.9rem}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.8rem}.prose pre{border-radius:2px;margin-block:1.8rem;padding:1.2rem;font-size:.83rem;overflow-x:auto}.diagram{background:#edf1f5;border:1px solid #d8e0e8;margin:2rem 0;padding:2rem}.diagram svg{width:100%;height:auto}.diagram figcaption{color:#526072;margin-top:1.2rem;font-size:.78rem}.diagram-list{padding-left:1rem;font-size:.85rem;display:none}.profile-grid{grid-template-columns:repeat(2,1fr);gap:3rem;display:grid}.profile-grid article{border-top:1px solid var(--line);padding-top:1.8rem}.profile-grid h3{font-size:1.6rem}.contact-grid{grid-template-columns:.75fr 1.25fr;gap:6rem;display:grid}.field-grid{grid-template-columns:1fr 1fr;gap:1.4rem;display:grid}.field{margin-bottom:1.5rem}label{margin-bottom:.5rem;font-size:.85rem;font-weight:550;display:block}input,select,textarea{color:#101d30;background:#fff;border:1px solid #9ba9b8;border-radius:0;width:100%;min-height:50px;padding:.75rem}textarea{resize:vertical;min-height:170px}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border:2px solid #9a3030}.field-error{color:#8d2727;margin:.35rem 0 0;font-size:.8rem}.form-status{background:#e8eef5;border-left:3px solid #5078ac;margin-block:1rem;padding:1rem;font-size:.9rem}.form-status:empty{display:none}.trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.notice{background:#eaf0f5;border-left:2px solid #8fa9c7;padding:.75rem 1rem;font-size:.87rem}.empty-state{max-width:40rem;padding-block:2rem}.hero-grid{min-height:560px;padding-block:4.5rem}.hero h1{font-size:clamp(3rem,5.2vw,4.9rem)}.hero-art{justify-self:end;max-width:360px}.selected-work{padding-top:4.5rem}.case-feature{background:#e9eef2;border-top:3px solid #233a58;grid-template-columns:1.15fr .85fr;align-items:center;gap:4rem;padding:3.2rem;display:grid}.case-feature h3{max-width:35rem;margin-bottom:1.5rem;font-size:clamp(2.4rem,3.7vw,3.5rem)}.case-feature h3 a{text-decoration:none}.case-feature h3 a:hover{text-decoration:underline 1px}.case-feature .lead{font-size:1.05rem}.case-feature .text-link{margin-top:1.5rem}.case-proof{gap:.8rem;margin:1.5rem 0 0;display:grid}.case-proof>div{grid-template-columns:6rem 1fr;gap:.7rem;display:grid}.case-proof dt{text-transform:uppercase;letter-spacing:.1em;color:#43556c;padding-top:.15rem;font-size:.67rem;font-weight:650}.case-proof dd{margin:0;font-size:.89rem;line-height:1.5}.supporting-work{gap:3rem;margin-top:3rem}.case-card{border-top:1px solid #9eafc0;flex-direction:column;padding:1.4rem 0 0;display:flex}.case-card-top{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.case-card .case-number{color:#526278;font-size:.85rem}.case-card h3{max-width:30rem;font-size:clamp(1.8rem,2.5vw,2.5rem)}.case-card .case-summary{max-width:36rem;margin-bottom:.6rem}.case-card .case-proof{margin-top:auto;padding-top:1.3rem}.case-card .tags{margin-top:1.5rem}.case-read{border-bottom:1px solid #c2cbd6;justify-content:space-between;margin-top:1.8rem;padding-bottom:1rem;font-size:.88rem;font-weight:550;display:flex}.case-card:focus-within{outline-offset:8px;outline:3px solid #3865a2}.work-context{color:#526072;max-width:49rem;margin:2.5rem 0 0;font-size:.82rem}.expertise-evidence{background:#eef1f3}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;display:grid}.capability-grid article{flex-direction:column;display:flex}.capability-grid h3{max-width:20rem;font-size:1.65rem}.capability-grid p{color:#435166;font-size:.95rem}.capability-grid .related-work{margin-top:auto;padding-top:1.3rem}.related-work{border-top:1px solid #b9c5d0;margin-top:2rem;padding-top:1.2rem}.related-work .eyebrow{margin-bottom:.6rem}.related-work a{justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;font-size:.94rem;line-height:1.45;text-decoration:none;display:flex}.related-work a:hover>span:first-child{text-decoration:underline}.related-work small{color:#526072;margin-top:.3rem;font-size:.79rem;font-weight:400;display:block}.principal-note{grid-template-columns:1fr 1fr;gap:5rem;padding-block:4rem;display:grid}.principal-note h2{font-size:2.3rem}.principal-note p:not(.eyebrow){color:#526072;max-width:39rem}.work-hero h1{max-width:59rem}.case-hero h1{max-width:62rem;font-size:clamp(2.8rem,5.6vw,5rem)}.case-hero .lead{max-width:52rem}.case-meta{grid-template-columns:1fr 1fr 1fr;margin-bottom:0}.case-meta small{color:#526072;margin-top:.35rem;font-size:.76rem;display:block}.architecture-section{padding-block:3.5rem 1rem}.architecture-intro{grid-template-columns:1fr 1fr;align-items:start;gap:1rem 4rem;display:grid}.architecture-intro .eyebrow{grid-column:1/-1;margin-bottom:0}.architecture-intro h2{font-size:2rem;line-height:1.2}.architecture-intro>p:last-child{color:#435166}.architecture{background:#e9eef2;border:1px solid #d1dbe4;margin:1.4rem 0 0;padding:2rem}.architecture figcaption{margin-bottom:1.8rem;display:block}.architecture figcaption .eyebrow{margin-bottom:.45rem;font-size:.65rem;display:block}.architecture figcaption>strong{font-size:1rem;font-weight:500}.architecture-steps{grid-template-columns:repeat(var(--node-count),minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.architecture-steps[data-node-count="3"]{--node-count:3}.architecture-steps[data-node-count="4"]{--node-count:4}.architecture-steps[data-node-count="5"]{--node-count:5}.architecture-steps[data-node-count="6"]{--node-count:6}.architecture-steps>li{min-width:0}.architecture-node{background:#faf9f6;border:1px solid #9fafbf;border-top:3px solid #4b6789;min-height:170px;padding:1rem}.node-number{color:#526b89;font-variant-numeric:tabular-nums;margin-bottom:.8rem;font-size:.68rem;display:block}.architecture-node strong{font-size:.97rem;font-weight:550;line-height:1.3;display:block}.architecture-node p{color:#465770;margin:.55rem 0 0;font-size:.875rem;line-height:1.5}.architecture-connection{color:#43556c;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem .2rem 0;font-size:.8rem;line-height:1.45;display:flex}.connection-arrow{font-size:1.35rem}.architecture-description{color:#526072;border-top:1px solid #b8c6d4;max-width:65rem;margin:1.6rem 0 0;padding-top:1rem;font-size:.875rem}.architecture-compact{background:0 0;border:0;margin:0;padding:0}.architecture-compact .architecture-steps{display:block}.architecture-compact .architecture-node{grid-template-columns:1.3rem 1fr;gap:.75rem;min-height:0;padding:.8rem 1rem;display:grid}.architecture-compact .node-number{margin:.15rem 0 0}.architecture-compact .architecture-node p{margin:.2rem 0 0}.architecture-compact .architecture-connection{justify-content:center;min-height:1.9rem;padding:.15rem 0}.architecture-compact .connection-arrow{transform:rotate(90deg)}.architecture-compact figcaption{margin-bottom:1rem}.case-body{padding-top:2.5rem}.case-body .prose{min-width:0;max-width:760px}.design-decisions{margin-block:2rem}.design-decision{border-top:1px solid #c1cdda;grid-template-columns:2.2rem minmax(0,1fr);gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:grid}.decision-number{color:#526b89;padding-top:.35rem;font-size:.75rem}.design-decision h3{margin-top:0;font-size:1.45rem}.decision-tradeoff{border-left:2px solid #9db0c4;padding-left:1rem;font-size:.92rem}.decision-tradeoff strong{font-weight:550}.prose .delivered-list{background:#eef1f3;padding:1.4rem 1.4rem 1.4rem 2.6rem}.prose .tags{padding:0}.prose .tags li{margin-bottom:0}@media (width<=1100px){.case-feature{gap:2rem;padding:2.4rem}.architecture-node{min-height:190px;padding:.8rem}.capability-grid{gap:1.8rem}}@media (width<=1000px){.architecture:not(.architecture-compact) .architecture-steps{display:block}.architecture:not(.architecture-compact) .architecture-node{grid-template-columns:2rem 1fr;gap:1rem;min-height:0;display:grid}.architecture:not(.architecture-compact) .architecture-connection{justify-content:center;padding:.25rem 0}.architecture:not(.architecture-compact) .connection-arrow{transform:rotate(90deg)}.architecture-intro{gap:1rem 2rem}}@media (width<=780px){.hero .hero-art{display:none}.hero .hero-grid{min-height:0;padding-block:3rem}.hero h1{font-size:clamp(3rem,8vw,4rem)}.case-feature{grid-template-columns:1fr;gap:2.4rem;padding:1.7rem}.case-feature h3{font-size:2.5rem}.case-feature .architecture-compact{border-top:1px solid #b9c5d0;padding-top:1.6rem}.capability-grid,.principal-note,.architecture-intro{grid-template-columns:1fr;gap:2rem}.principal-note h2{margin-bottom:0}.capability-grid article{border-top:1px solid #bac7d4;padding-top:1.5rem}.supporting-work{gap:2rem}.architecture-intro .eyebrow{grid-column:auto}.architecture-intro h2{margin-bottom:0}.case-meta{grid-template-columns:1fr;gap:1.3rem}.case-hero{padding-block:3rem}.architecture{padding:1.3rem}}@media (width<=1000px){.desktop-nav{gap:1rem}.hero-grid{grid-template-columns:1.2fr .8fr;gap:1rem;min-height:580px}.intro-grid,.principal,.split,.contact-grid{gap:3rem}.case-body{grid-template-columns:180px 1fr;gap:2.5rem}}@media (width<=780px){.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{border:1px solid #aebac8;padding:.5rem .8rem;font-size:.9rem;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav[open] nav{padding:1.5rem var(--space);z-index:20;background:#faf9f6;border-bottom:1px solid #c3cfdb;gap:.25rem;display:grid;position:absolute;top:100%;left:0;right:0}.mobile-nav nav a{padding:.7rem 0;text-decoration:none}.site-header{z-index:10;position:relative}.nav-shell{min-height:78px}.hero-grid{grid-template-columns:1fr;padding-block:3.5rem 1.5rem}.hero h1{max-width:600px}.hero-art{justify-self:end;max-width:440px;margin-block:-1rem}.hero-foot{flex-wrap:wrap;font-size:.6rem}.intro-grid,.principal,.split,.contact-grid,.case-body{grid-template-columns:1fr;gap:2.5rem}.service-row{grid-template-columns:35px 1fr 25px;gap:1rem}.service-row p{grid-area:2/2}.service-row .arrow{grid-area:1/3}.section-top{flex-direction:column;align-items:flex-start;gap:1.3rem}.steps{grid-template-columns:1fr;gap:1.5rem}.step h3{margin-top:.8rem}.work-grid{gap:2rem 1.5rem}.case-card h3{font-size:1.5rem}.case-visual{padding:1rem}.cta .wrap{flex-direction:column;align-items:flex-start;gap:2rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.expertise-item,.process-item{grid-template-columns:40px 1fr;gap:1rem}.expertise-item>div:last-child,.process-item>p{grid-column:2}.case-aside{display:none}.page-hero{padding-block:3.5rem}.case-meta{gap:1.5rem}}@media (width<=520px){.work-grid,.profile-grid,.field-grid,.case-meta{grid-template-columns:1fr}.hero-art{max-width:320px}.hero-foot span:last-child{display:none}.footer-bottom{flex-direction:column}.diagram{padding:1rem}.diagram-list{display:block}.prose table{font-size:.8rem}.prose th,.prose td{padding:.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
