@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--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]){-webkit-text-decoration:underline dotted;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;-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}.relative{position:relative}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.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{--paper:#f4f1e9;--paper-deep:#e8e3d7;--ink:#14231e;--ink-soft:#4d5a54;--line:#cbc6b9;--forest:#234c3d;--forest-deep:#16362b;--accent:#d75f3c;--accent-soft:#edc8b9;--surface:#fbf9f4;--shadow:#14231e24;--header-bg:#f4f1e9e0;--display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--display-ar:"Noto Naskh Arabic", "Segoe UI", Tahoma, Arial, sans-serif;--container:1240px}:root[data-theme=dark]{--paper:#101411;--paper-deep:#181e1a;--ink:#edf0e7;--ink-soft:#aeb8b0;--line:#35413a;--forest:#9cc9b5;--forest-deep:#c0dece;--accent:#f0815f;--accent-soft:#633424;--surface:#161b18;--shadow:#00000057;--header-bg:#101411e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;-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,summary{-webkit-tap-highlight-color:transparent}svg{stroke-width:1.7px}::selection{background:var(--accent);color:#fff}.container{width:min(calc(100% - 48px), var(--container));margin-inline:auto}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.eyebrow,.micro-label{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700;line-height:1.3}.eyebrow{color:var(--accent)}.micro-label{color:var(--ink-soft)}.site-header{z-index:50;border-bottom:1px solid var(--line);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent)}}.site-header{background:var(--header-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;min-height:76px;display:grid}.wordmark{letter-spacing:.02em;align-items:center;gap:.75rem;width:fit-content;font-size:.82rem;font-weight:700;display:inline-flex}.wordmark>span:first-child{background:var(--forest);width:38px;height:38px;color:var(--paper);letter-spacing:-.06em;border-radius:50%;place-items:center;display:grid}.desktop-nav{gap:2.15rem;font-size:.82rem;font-weight:600;display:flex}.desktop-nav a,.footer-links a{position:relative}.desktop-nav a:after,.footer-links a:after{content:"";background:var(--accent);height:1px;transition:right .25s;position:absolute;bottom:-.35rem;left:0;right:100%}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.footer-links a:hover:after,.footer-links a:focus-visible:after{right:0}.header-actions{justify-self:end;align-items:center;gap:.4rem;display:flex}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:border-color .2s,background .2s,transform .2s;display:inline-grid}.icon-button:hover{border-color:var(--ink);background:var(--surface)}.icon-button:active{transform:scale(.96)}.icon-button svg{width:18px;height:18px}.theme-toggle{position:relative;overflow:hidden}.theme-icon{transition:opacity .2s,transform .35s;position:absolute}:root[data-theme=light] .theme-icon-moon{opacity:1;transform:translateY(0)rotate(0)}:root[data-theme=light] .theme-icon-sun{opacity:0;transform:translateY(20px)rotate(70deg)}:root[data-theme=dark] .theme-icon-sun{opacity:1;transform:translateY(0)rotate(0)}:root[data-theme=dark] .theme-icon-moon{opacity:0;transform:translateY(-20px)rotate(-70deg)}.mobile-menu{display:none;position:relative}.mobile-menu summary{list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{background:var(--surface);border:1px solid var(--line);min-width:210px;box-shadow:0 20px 50px var(--shadow);padding:.8rem;position:absolute;top:52px;right:0}.mobile-menu nav a{padding:.7rem .8rem;font-size:.9rem;font-weight:600;display:block}.hero{border-bottom:1px solid var(--line);flex-direction:column;min-height:calc(100vh - 77px);display:flex;overflow:hidden}.hero-grid{flex:1;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);align-items:center;gap:clamp(3rem,7vw,8rem);padding-block:clamp(4rem,9vh,8rem);display:grid}.hero-copy h1,.page-intro h1,.case-hero h1,.not-found h1{font-family:var(--display);letter-spacing:-.052em;margin:1.3rem 0 1.5rem;font-weight:500;line-height:.96}.hero-copy h1{max-width:760px;font-size:clamp(3rem,4.6vw,5.15rem)}.hero-copy h1 em{color:var(--forest);font-weight:inherit}.hero-kicker{align-items:center;gap:.6rem;display:flex}.status-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 5px var(--accent);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.status-dot{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 16%, transparent)}}.hero-intro{max-width:650px;color:var(--ink-soft);margin:0;font-size:clamp(1.08rem,1.5vw,1.3rem)}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.4rem;margin-top:2.4rem;display:flex}.primary-link,.secondary-link{justify-content:center;align-items:center;gap:.7rem;min-height:48px;font-size:.85rem;font-weight:700;display:inline-flex}.primary-link{background:var(--forest);color:var(--paper);padding:.8rem 1.15rem}.primary-link:hover{background:var(--forest-deep)}.primary-link svg,.secondary-link svg{width:17px;height:17px}.secondary-link{border-bottom:1px solid var(--ink)}.hero-footnote{border-top:1px solid var(--line);min-height:62px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.hero-footnote a{color:var(--ink);align-items:center;gap:.5rem;font-weight:700;display:flex}.hero-footnote svg{width:15px}.architecture{isolation:isolate;min-height:540px;position:relative}.architecture-grid{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.42;background-size:42px 42px;position:absolute;inset:3%;-webkit-mask-image:radial-gradient(circle,#000,#0000 73%);mask-image:radial-gradient(circle,#000,#0000 73%)}.architecture-core{background:var(--forest);width:174px;height:174px;color:var(--paper);text-align:center;box-shadow:0 18px 50px var(--shadow);border-radius:50%;place-content:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.architecture-core:after{content:"";border:1px solid var(--paper);position:absolute;inset:12px}@supports (color:color-mix(in lab, red, red)){.architecture-core:after{border:1px solid color-mix(in srgb, var(--paper) 30%, transparent)}}.architecture-core:after{border-radius:50%}.architecture-core span{letter-spacing:.16em;text-transform:uppercase;font-size:.66rem}.architecture-core strong{font-family:var(--display);font-size:2rem;font-weight:500}.architecture-orbit{border:1px solid var(--line);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-one{width:330px;height:330px}.orbit-two{border-style:dashed;width:490px;height:490px}.architecture-node{background:var(--surface);border:1px solid var(--line);min-width:110px;box-shadow:0 8px 24px color-mix(in srgb, 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 50%, transparent);padding:.78rem .95rem;font-size:.78rem;font-weight:700;position:absolute}@supports (color:color-mix(in lab, red, red)){.architecture-node{box-shadow:0 8px 24px color-mix(in srgb, var(--shadow) 50%, transparent)}}.architecture-node span{color:var(--accent);font-family:var(--mono);letter-spacing:.1em;font-size:.6rem;display:block}.architecture-node:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute}.node-ui{top:13%;left:2%}.node-ui:after{bottom:-4px;right:-4px}.node-access{top:20%;right:1%}.node-access:after{bottom:-4px;left:-4px}.node-services{bottom:16%;right:0}.node-services:after{top:-4px;left:-4px}.node-data{bottom:11%;left:3%}.node-data:after{top:-4px;right:-4px}.node-delivery{top:2%;left:50%;transform:translate(-50%)}.node-delivery:after{bottom:-4px;left:calc(50% - 3px)}.architecture-note{white-space:nowrap;text-transform:uppercase;letter-spacing:.15em;color:var(--ink-soft);margin:0;font-size:.66rem;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.section{border-bottom:1px solid var(--line);padding-block:clamp(5rem,10vw,9rem)}.section-heading{margin-bottom:clamp(3rem,6vw,5rem)}.section-heading h2,.experience-title h2,.about-grid h2,.contact-grid h2,.case-section h2,.next-case a,.not-found h1{font-family:var(--display);letter-spacing:-.045em;margin:.75rem 0 0;font-size:clamp(2.25rem,4vw,4.1rem);font-weight:500;line-height:1}.split-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:4rem;display:grid}.split-heading>p{max-width:490px;color:var(--ink-soft);margin:0 0 .25rem}.selected-work{background:var(--surface)}.project-list{border-top:1px solid var(--ink)}.project-row{border-bottom:1px solid var(--line);grid-template-columns:72px minmax(0,1fr) 56px;align-items:start;gap:1.5rem;padding-block:2.25rem;transition:padding .25s,background .25s;display:grid}.project-row:hover{background:var(--paper-deep);padding-inline:1rem}@supports (color:color-mix(in lab, red, red)){.project-row:hover{background:color-mix(in srgb, var(--paper-deep) 42%, transparent)}}.project-index{color:var(--ink-soft);font-family:var(--mono);font-size:.74rem}.project-row-main h3{font-family:var(--display);letter-spacing:-.035em;margin:.5rem 0 .6rem;font-size:clamp(2rem,4vw,3.7rem);font-weight:500;line-height:1}.project-row-main>p:not(.eyebrow){max-width:730px;color:var(--ink-soft);margin:0}.project-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:48px;height:48px;transition:background .2s,color .2s,transform .2s;display:grid}.project-row:hover .project-arrow{background:var(--forest);color:var(--paper);transform:rotate(5deg)}.project-arrow svg{width:20px}.tag-list{flex-wrap:wrap;gap:.5rem;margin:1.15rem 0 0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);color:var(--ink-soft);font-family:var(--mono);padding:.32rem .58rem;font-size:.66rem}.section-action{justify-content:flex-end;margin-top:2rem;display:flex}.section-action a,.about-links a{border-bottom:1px solid var(--ink);align-items:center;gap:.65rem;padding-bottom:.25rem;font-size:.82rem;font-weight:700;display:inline-flex}.section-action svg,.about-links svg{width:16px}.practice-section{--practice-foreground:#f4f1e9;--practice-border:var(--practice-foreground)}@supports (color:color-mix(in lab, red, red)){.practice-section{--practice-border:color-mix(in srgb, var(--practice-foreground) 30%, transparent)}}.practice-section{background:var(--forest-deep);color:var(--practice-foreground)}:root[data-theme=dark] .practice-section{background:#1c382e}.practice-section .eyebrow{color:var(--accent)}.practice-section .split-heading>p{color:var(--practice-foreground)}@supports (color:color-mix(in lab, red, red)){.practice-section .split-heading>p{color:color-mix(in srgb, var(--practice-foreground) 70%, transparent)}}.practice-grid{border-top:1px solid var(--practice-border);grid-template-columns:repeat(4,1fr);display:grid}.practice-item{border-right:1px solid var(--practice-border);min-height:330px;padding:2rem 1.4rem 1rem;position:relative}.practice-item:last-child{border-right:0}.practice-item>svg{width:28px;height:28px;color:var(--accent)}.practice-item>span{font-family:var(--mono);opacity:.6;font-size:.68rem;position:absolute;top:2rem;right:1.4rem}.practice-item h3{font-family:var(--display);margin:8.5rem 0 .7rem;font-size:1.7rem;font-weight:500}.practice-item p{color:var(--practice-foreground);margin:0}@supports (color:color-mix(in lab, red, red)){.practice-item p{color:color-mix(in srgb, var(--practice-foreground) 72%, transparent)}}.practice-item p{font-size:.9rem}.evidence-map{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:minmax(230px,.36fr) minmax(0,1fr);display:grid}.evidence-tabs{border-right:1px solid var(--line);flex-direction:column;display:flex}.evidence-tab{border:0;border-bottom:1px solid var(--line);width:100%;min-height:72px;color:var(--ink-soft);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:1.2rem;padding:1rem 1.2rem;font-size:.85rem;font-weight:650;display:flex}.evidence-tab:last-child{border-bottom:0}.evidence-tab span{color:var(--ink-soft);font-family:var(--mono);font-size:.65rem}.evidence-tab.is-active{background:var(--forest);color:var(--paper)}.evidence-tab.is-active span{color:var(--accent-soft)}.evidence-panel{padding:clamp(2rem,5vw,4.5rem)}.evidence-summary{max-width:760px;font-family:var(--display);margin:0 0 3rem;font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.12}.evidence-columns{grid-template-columns:1.2fr .8fr;gap:3rem;display:grid}.skill-cloud{flex-wrap:wrap;gap:.6rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.skill-cloud li{background:var(--paper-deep);padding:.55rem .8rem;font-size:.8rem;font-weight:650}.proof-list{margin:1rem 0 0;padding:0;list-style:none}.proof-list li{border-bottom:1px solid var(--line);color:var(--ink-soft);padding:.55rem 0 .55rem 1.2rem;font-size:.86rem;position:relative}.proof-list li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:1.05rem;left:0}.experience-section{background:var(--paper-deep)}.experience-layout{grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,10vw,9rem);display:grid}.experience-title{align-self:start;position:sticky;top:120px}.timeline{border-top:1px solid var(--ink)}.timeline-entry{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;gap:2rem;padding-block:2rem 3rem;display:grid}.timeline-period{font-family:var(--mono);text-transform:uppercase;margin:.2rem 0 0;font-size:.68rem}.timeline-entry h3{font-family:var(--display);margin:0;font-size:2rem;font-weight:500}.timeline-company{text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--accent)!important;margin:.2rem 0 1rem!important;font-size:.78rem!important}.timeline-entry div p:last-child{max-width:650px;color:var(--ink-soft);margin:0}.about-grid{grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,10vw,9rem);display:grid}.about-copy .large-copy{font-family:var(--display);margin:0 0 2rem;font-size:clamp(1.65rem,3vw,2.8rem);line-height:1.18}.about-copy>p:not(.large-copy){max-width:700px;color:var(--ink-soft)}.education-list{border-top:1px solid var(--ink);margin-top:3rem}.education-list>div{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr;gap:1rem;padding:1.25rem 0;display:grid}.education-list span{font-family:var(--mono);font-size:.72rem}.education-list p{margin:0;line-height:1.3}.education-list strong,.education-list small{display:block}.education-list small{color:var(--ink-soft);margin-top:.2rem}.about-links{flex-wrap:wrap;gap:1rem 2rem;margin-top:2.2rem;display:flex}.contact-section{background:var(--accent);color:#fffaf2;padding-block:clamp(5rem,10vw,9rem)}.contact-section .eyebrow{color:#fffaf2;opacity:.72}.contact-grid{grid-template-columns:1.15fr .85fr;gap:clamp(3rem,9vw,8rem);display:grid}.contact-grid h2{max-width:740px}.contact-actions>p{max-width:520px;margin:0 0 2rem}.contact-actions .primary-link{color:#2b241f;background:#fffaf2;justify-content:flex-start;width:100%;padding-inline:1.2rem}.contact-actions .primary-link svg:last-child{margin-left:auto}.contact-actions .secondary-link{border-color:#fffaf2;margin-top:1.1rem}.location-line{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.6rem;margin-top:2.2rem;font-size:.77rem;display:flex}.location-line svg{width:16px}.site-footer{background:var(--ink);color:var(--paper);padding-block:4rem 2rem}.footer-grid{grid-template-columns:1fr auto;gap:4rem;display:grid}.footer-statement{max-width:670px;font-family:var(--display);margin:1rem 0 0;font-size:clamp(1.8rem,3.5vw,3.4rem);line-height:1.08}.footer-links{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.footer-links a{align-items:center;gap:.5rem;font-size:.82rem;display:inline-flex}.footer-links svg{width:15px}.footer-meta{border-top:1px solid var(--paper);justify-content:space-between;margin-top:5rem;padding-top:1.2rem;display:flex}@supports (color:color-mix(in lab, red, red)){.footer-meta{border-top:1px solid color-mix(in srgb, var(--paper) 22%, transparent)}}.footer-meta{color:var(--paper)}@supports (color:color-mix(in lab, red, red)){.footer-meta{color:color-mix(in srgb, var(--paper) 65%, transparent)}}.footer-meta{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.page-shell{min-height:80vh;padding-block:clamp(4rem,9vw,8rem)}.page-intro{grid-template-columns:1.2fr .8fr;align-items:end;gap:4rem;margin-bottom:clamp(4rem,8vw,7rem);display:grid}.page-intro .eyebrow{grid-column:1/-1}.page-intro h1{max-width:800px;margin:0;font-size:clamp(3.2rem,6vw,6.4rem)}.page-intro>p:last-child{max-width:480px;color:var(--ink-soft);margin:0 0 .75rem}.case-hero{border-bottom:1px solid var(--line);background:var(--surface);padding-block:clamp(3rem,8vw,7rem)}.back-link{align-items:center;gap:.55rem;margin-bottom:clamp(4rem,8vw,7rem);font-size:.76rem;font-weight:700;display:inline-flex}.back-link svg{width:16px}.case-hero h1{margin:.8rem 0 1.5rem;font-size:clamp(4.2rem,9vw,8.5rem)}.case-intro{max-width:920px;color:var(--ink-soft);font-family:var(--display);margin:0;font-size:clamp(1.45rem,2.7vw,2.4rem);line-height:1.25}.case-meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:4rem;padding-top:1.4rem;display:grid}.case-meta span,.case-meta strong{display:block}.case-meta span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.35rem;font-size:.66rem}.case-meta strong{font-size:.82rem;font-weight:650}.case-section{border-bottom:1px solid var(--line);padding-block:clamp(4.5rem,9vw,8rem)}.section-number{color:var(--ink-soft);font-family:var(--mono);margin:0;font-size:.68rem}.case-lead{grid-template-columns:100px 1fr;display:grid}.case-lead h2{max-width:1080px;font-size:clamp(2.2rem,4.5vw,4.8rem);line-height:1.05}.case-columns,.proof-section{grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,9vw,8rem);display:grid}.statement-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.statement-list li{border-bottom:1px solid var(--line);color:var(--ink-soft);grid-template-columns:22px 1fr;gap:.9rem;padding:1.3rem 0;display:grid}.statement-list svg{width:17px;color:var(--accent)}.case-section-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;margin-bottom:3rem;display:grid}.case-section-heading>p{max-width:500px;color:var(--ink-soft);margin:0 0 .3rem}.system-flow{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.system-flow>div{border-right:1px solid var(--line);min-height:180px;padding:1.5rem}.system-flow>div:last-child{border-right:0}.system-flow span{color:var(--accent);font-family:var(--mono);font-size:.65rem}.system-flow p{margin:4rem 0 0;font-weight:650;line-height:1.4}.case-tags{margin-top:1rem}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem 1.25rem;display:grid}.gallery-item{margin:0}.gallery-placeholder{aspect-ratio:8/5;border:1px solid var(--line);background:var(--paper-deep);width:100%;color:var(--ink);cursor:zoom-in;text-align:left;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:1.5rem;display:flex;position:relative;overflow:hidden}.placeholder-grid{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.35;background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.placeholder-status{text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.5rem;font-size:.67rem;display:flex;position:absolute;top:1.5rem;left:1.5rem}.placeholder-status svg{width:15px}.placeholder-title{font-family:var(--display);font-size:clamp(1.5rem,3vw,2.7rem);position:relative}.placeholder-file{color:var(--ink-soft);font-family:var(--mono);font-size:.62rem;position:relative}.placeholder-expand{width:20px;position:absolute;bottom:1.5rem;right:1.5rem}.gallery-item figcaption{color:var(--ink-soft);margin-top:.75rem;font-size:.75rem}.lightbox{z-index:100;background:var(--ink);flex-direction:column;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.lightbox{background:color-mix(in srgb, var(--ink) 96%, transparent)}}.lightbox{color:var(--paper)}.lightbox-topbar{border-bottom:1px solid var(--paper);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}@supports (color:color-mix(in lab, red, red)){.lightbox-topbar{border-bottom:1px solid color-mix(in srgb, var(--paper) 20%, transparent)}}.lightbox-topbar p{text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.7rem}.lightbox-close{border-color:var(--paper)}@supports (color:color-mix(in lab, red, red)){.lightbox-close{border-color:color-mix(in srgb, var(--paper) 30%, transparent)}}.lightbox-close{color:var(--paper)}.lightbox-content{flex:1;grid-template-columns:56px minmax(0,980px) 56px;justify-content:center;align-items:center;gap:2rem;min-height:0;padding:2rem;display:grid}.lightbox-nav{border:1px solid var(--paper);place-items:center;width:48px;height:48px;display:grid}@supports (color:color-mix(in lab, red, red)){.lightbox-nav{border:1px solid color-mix(in srgb, var(--paper) 30%, transparent)}}.lightbox-nav{color:var(--paper);cursor:pointer;background:0 0;border-radius:50%}.lightbox-placeholder{aspect-ratio:8/5;border:1px solid var(--paper);flex-direction:column;justify-content:center;align-items:center;width:100%;padding:2rem;display:flex}@supports (color:color-mix(in lab, red, red)){.lightbox-placeholder{border:1px solid color-mix(in srgb, var(--paper) 25%, transparent)}}.lightbox-placeholder{background-image:linear-gradient(var(--paper) 1px, transparent 1px), linear-gradient(90deg, var(--paper) 1px, transparent 1px)}@supports (color:color-mix(in lab, red, red)){.lightbox-placeholder{background-image:linear-gradient(color-mix(in srgb, var(--paper) 10%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--paper) 10%, transparent) 1px, transparent 1px)}}.lightbox-placeholder{text-align:center;background-size:42px 42px}.lightbox-placeholder>svg{width:34px;height:34px;color:var(--accent)}.lightbox-placeholder h2{margin:.7rem 0;font-size:clamp(2rem,5vw,4rem)}.lightbox-placeholder>p:not(.micro-label){max-width:580px;color:var(--paper);margin:0}@supports (color:color-mix(in lab, red, red)){.lightbox-placeholder>p:not(.micro-label){color:color-mix(in srgb, var(--paper) 70%, transparent)}}.lightbox-placeholder code{color:var(--accent);margin-top:1.5rem;font-size:.72rem}.lightbox-placeholder>span{color:var(--paper);margin-top:.6rem}@supports (color:color-mix(in lab, red, red)){.lightbox-placeholder>span{color:color-mix(in srgb, var(--paper) 52%, transparent)}}.lightbox-placeholder>span{font-size:.7rem}.case-proof{margin-top:0}.confidentiality{border-left:3px solid var(--accent);background:var(--paper-deep);color:var(--ink-soft);align-items:flex-start;gap:.65rem;margin:2rem 0 0;padding:1rem;font-size:.8rem;display:flex}.confidentiality svg{flex:none;width:17px}.external-links{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.external-links a{border:1px solid var(--line);align-items:center;gap:.5rem;padding:.65rem .8rem;font-size:.76rem;font-weight:700;display:inline-flex}.external-links svg{width:15px}.next-case{background:var(--forest);color:var(--paper);padding-block:clamp(4rem,8vw,7rem)}.next-case .eyebrow{color:var(--accent-soft)}.next-case a{justify-content:space-between;align-items:center;margin-top:1rem;font-size:clamp(3rem,8vw,8rem);display:flex}.next-case svg{width:.7em;height:.7em}.not-found{place-items:center;min-height:75vh;display:grid}.not-found-grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.error-code{font-family:var(--display);color:var(--paper-deep);margin:0;font-size:clamp(10rem,28vw,25rem);line-height:.7}.not-found h1{font-size:clamp(3rem,6vw,5.5rem)}.not-found div>p:not(.eyebrow){color:var(--ink-soft)}.not-found .primary-link{margin-top:1rem}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:980px){.desktop-nav{display:none}.mobile-menu{display:block}.header-inner{grid-template-columns:1fr auto}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-visual{width:min(100%,650px);margin-inline:auto}.split-heading,.page-intro,.contact-grid,.case-section-heading{grid-template-columns:1fr;gap:1.5rem}.practice-grid{grid-template-columns:repeat(2,1fr)}.practice-item:nth-child(2){border-right:0}.practice-item:nth-child(-n+2){border-bottom:1px solid var(--practice-border)}.experience-layout,.about-grid,.case-columns,.proof-section{grid-template-columns:1fr;gap:3rem}.experience-title{position:static}.system-flow{grid-template-columns:repeat(2,1fr)}.system-flow>div:nth-child(2){border-right:0}.system-flow>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.case-meta{grid-template-columns:1fr 1fr}}@media (max-width:700px){.container{width:min(calc(100% - 32px), var(--container))}.wordmark-name{display:none}.header-inner{min-height:66px}.hero-copy h1{font-size:clamp(2.7rem,12vw,3.65rem)}.hero-grid{gap:2rem;padding-block:3.5rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .primary-link,.hero-actions .secondary-link{width:100%}.architecture{min-height:430px;margin-inline:-5%;transform:scale(.92)}.orbit-two{width:390px;height:390px}.orbit-one{width:270px;height:270px}.architecture-core{width:145px;height:145px}.architecture-node{min-width:96px;padding:.55rem .65rem}.node-ui{left:0}.node-access,.node-services{right:0}.node-data{left:0}.hero-footnote span{display:none}.hero-footnote{justify-content:flex-end}.project-row{grid-template-columns:38px minmax(0,1fr);gap:.8rem}.project-arrow{display:none}.project-row-main h3{font-size:2.2rem}.practice-grid{grid-template-columns:1fr}.practice-item,.practice-item:nth-child(2){border-right:0;border-bottom:1px solid var(--practice-border);min-height:250px}.practice-item h3{margin-top:5rem}.evidence-map{grid-template-columns:1fr}.evidence-tabs{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.evidence-tab:nth-child(odd){border-right:1px solid var(--line)}.evidence-columns,.timeline-entry{grid-template-columns:1fr;gap:1.2rem}.footer-grid,.not-found-grid{grid-template-columns:1fr}.footer-meta{flex-direction:column;gap:1rem}.page-intro h1{font-size:3.2rem}.case-hero h1{font-size:3.7rem}.case-meta{grid-template-columns:1fr}.case-lead{grid-template-columns:1fr;gap:1rem}.system-flow{grid-template-columns:1fr}.system-flow>div,.system-flow>div:nth-child(2){border-right:0;border-bottom:1px solid var(--line);min-height:140px}.system-flow>div:last-child{border-bottom:0}.system-flow p{margin-top:2.5rem}.gallery-grid{grid-template-columns:1fr}.lightbox-content{grid-template-columns:40px minmax(0,1fr) 40px;gap:.4rem;padding:.7rem}.lightbox-nav{width:38px;height:38px}.lightbox-placeholder{aspect-ratio:auto;min-height:70vh}.next-case a{font-size:2.7rem}.error-code{font-size:12rem}}.language-switch{color:var(--ink-soft);letter-spacing:.08em;align-items:center;gap:.38rem;padding-inline:.35rem;font-size:.68rem;font-weight:750;display:inline-flex}.language-switch a{text-align:center;border-bottom:1px solid #0000;min-width:24px;padding:.35rem .2rem}.language-switch a.is-active{color:var(--ink);border-color:var(--accent)}.arabic-page{font-family:Segoe UI,Tahoma,Arial,sans-serif}.arabic-page h1,.arabic-page h2,.arabic-page h3,[dir=rtl] .footer-statement{font-family:var(--display-ar);letter-spacing:-.025em}[dir=rtl] .eyebrow,[dir=rtl] .micro-label{letter-spacing:.04em}[dir=rtl] .hero-kicker,[dir=rtl] .primary-link,[dir=rtl] .secondary-link,[dir=rtl] .location-line{flex-direction:row-reverse;justify-content:flex-end}[dir=rtl] .project-arrow svg,[dir=rtl] .section-action svg,[dir=rtl] .about-links svg,[dir=rtl] .next-case svg{transform:scaleX(-1)}[dir=rtl] .placeholder-status{left:auto;right:1.5rem}[dir=rtl] .placeholder-expand{left:1.5rem;right:auto}[dir=rtl] .confidentiality{border-left:0;border-right:3px solid var(--accent)}[dir=rtl] .proof-list li{padding-left:0;padding-right:1.2rem}[dir=rtl] .proof-list li:before{left:auto;right:0}[dir=rtl] .mobile-menu nav{text-align:right;left:0;right:auto}[dir=rtl] .architecture-note{letter-spacing:.04em}.french-page .hero-copy h1{font-size:clamp(2.8rem,4.2vw,4.8rem)}@media (max-width:640px){.french-page .hero-copy h1{font-size:clamp(2.55rem,11vw,3.4rem)}}
