@font-face{font-family:display;src:url(../media/manrope-s.p.df202f3d.woff2)format("woff2");font-display:swap;font-weight:200 800}@font-face{font-family:display Fallback;src:local(Arial);ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.0%;size-adjust:100.14%}.display_c26c06e6-module___E1WdW__className{font-family:display,display Fallback}.display_c26c06e6-module___E1WdW__variable{--font-display:"display","display Fallback"}
@font-face{font-family:body;src:url(../media/dm_sans-s.p.5330d2bb.woff2)format("woff2");font-display:swap;font-weight:100 1000}@font-face{font-family:body Fallback;src:local(Arial);ascent-override:94.36%;descent-override:29.49%;line-gap-override:0.0%;size-adjust:105.13%}.body_2f3aa1b6-module__gtdGsa__className{font-family:body,body Fallback}.body_2f3aa1b6-module__gtdGsa__variable{--font-body:"body","body Fallback"}
@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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:"SFMono-Regular",Consolas,monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-bold:700;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-body),sans-serif;--default-mono-font-family:"SFMono-Regular",Consolas,monospace}}@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,ui-sans-serif,system-ui,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{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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.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}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:#364153;--tw-prose-headings:#101828;--tw-prose-lead:#4a5565;--tw-prose-links:#101828;--tw-prose-bold:#101828;--tw-prose-counters:#6a7282;--tw-prose-bullets:#d1d5dc;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#101828;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6a7282;--tw-prose-kbd:#101828;--tw-prose-kbd-shadows:#1018281a;--tw-prose-code:#101828;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1e2939;--tw-prose-th-borders:#d1d5dc;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5dc;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#99a1af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#99a1af;--tw-prose-invert-bullets:#4a5565;--tw-prose-invert-hr:#364153;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#364153;--tw-prose-invert-captions:#99a1af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5dc;--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:#4a5565;--tw-prose-invert-td-borders:#364153;font-size:1rem;line-height:1.75}@supports (color:lab(0% 0 0)){.prose{--tw-prose-body:lab(27.1134% -.956401 -12.3224);--tw-prose-headings:lab(8.11897% .811279 -12.254);--tw-prose-lead:lab(35.6337% -1.58697 -10.8425);--tw-prose-links:lab(8.11897% .811279 -12.254);--tw-prose-bold:lab(8.11897% .811279 -12.254);--tw-prose-counters:lab(47.7841% -.393182 -10.0268);--tw-prose-bullets:lab(85.1236% -.612259 -3.7138);--tw-prose-hr:lab(91.6229% -.159115 -2.26791);--tw-prose-quotes:lab(8.11897% .811279 -12.254);--tw-prose-quote-borders:lab(91.6229% -.159115 -2.26791);--tw-prose-captions:lab(47.7841% -.393182 -10.0268);--tw-prose-kbd:lab(8.11897% .811279 -12.254);--tw-prose-kbd-shadows:lab(8.11897% .811279 -12.254/.1);--tw-prose-code:lab(8.11897% .811279 -12.254);--tw-prose-pre-code:lab(91.6229% -.159115 -2.26791);--tw-prose-pre-bg:lab(16.1051% -1.18239 -11.7533);--tw-prose-th-borders:lab(85.1236% -.612259 -3.7138);--tw-prose-td-borders:lab(91.6229% -.159115 -2.26791);--tw-prose-invert-body:lab(85.1236% -.612259 -3.7138);--tw-prose-invert-lead:lab(65.9269% -.832707 -8.17473);--tw-prose-invert-counters:lab(65.9269% -.832707 -8.17473);--tw-prose-invert-bullets:lab(35.6337% -1.58697 -10.8425);--tw-prose-invert-hr:lab(27.1134% -.956401 -12.3224);--tw-prose-invert-quotes:lab(96.1596% -.0823438 -1.13575);--tw-prose-invert-quote-borders:lab(27.1134% -.956401 -12.3224);--tw-prose-invert-captions:lab(65.9269% -.832707 -8.17473);--tw-prose-invert-pre-code:lab(85.1236% -.612259 -3.7138);--tw-prose-invert-th-borders:lab(35.6337% -1.58697 -10.8425);--tw-prose-invert-td-borders:lab(27.1134% -.956401 -12.3224)}}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-7{margin-top:calc(var(--spacing)*7)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-9{height:calc(var(--spacing)*9)}.h-auto{height:auto}.min-h-\[60vh\]{min-height:60vh}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-9{width:calc(var(--spacing)*9)}.w-full{width:100%}.max-w-none{max-width:none}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.bg-primary\/10{background-color:#3153471a;background-color:lab(32.4059% -15.3389 2.94967/.1)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-top{object-position:top}.px-3{padding-inline:calc(var(--spacing)*3)}.py-1{padding-block:calc(var(--spacing)*1)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-\[var\(--muted\)\]{color:var(--muted)}.text-primary{color:#315347}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-\[var\(--muted-bg\)\]:hover{background-color:var(--muted-bg)}}@media (min-width:40rem){.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}}:root{--background:#f6f5f0;--foreground:#252c28;--card:#fffefa;--card-border:#dcded5;--muted:#646b61;--muted-bg:#eeefe7;--accent:#b2482e;--green:#315347;--hero-panel:#e8ebdf;--serif:Georgia,"Times New Roman",serif;--nav-bg:#f6f5f0f0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dark{--background:#151c18;--foreground:#e9ece2;--card:#1e2821;--card-border:#364137;--muted:#abb4a6;--muted-bg:#222d25;--accent:#f1ad8d;--green:#bad6b7;--hero-panel:#27372b;--nav-bg:#151c18f0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--background);color:var(--foreground);font-family:var(--font-body),sans-serif;-webkit-font-smoothing:antialiased;margin:0}::selection{color:#203b2c;background:#c7d7aa}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a{transition:color .2s}button{cursor:pointer}button:disabled{cursor:wait}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}h1,h2,h3,h4{font-family:var(--font-display),sans-serif}p{line-height:1.7}.shell{width:min(1280px,100% - 112px);margin-inline:auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:500;line-height:1.6}.serif-word{font-family:var(--serif);letter-spacing:-.055em;color:var(--green);font-style:italic;font-weight:400}.muted-heading{color:var(--muted)}.status-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 4px var(--green);border-radius:50%;display:inline-block}@supports (color:color-mix(in lab, red, red)){.status-dot{box-shadow:0 0 0 4px color-mix(in srgb,var(--green)9%,transparent)}}.status-dot{flex-shrink:0}.button{border-radius:4px;justify-content:center;align-items:center;gap:24px;min-height:52px;padding:17px 24px;font-size:13px;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:#315347}.button-primary:hover{background:#203f34}.button-outline{border:1px solid var(--card-border)}.text-link{align-items:center;gap:16px;font-size:13px;font-weight:500;display:inline-flex}.text-link:hover{color:var(--accent)}.text-link svg{transition:transform .2s}.text-link:hover svg{transform:translate(2px,-2px)}.skip-to-content{z-index:100;background:var(--foreground);color:var(--background);padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-to-content:focus{transform:none}.site-header{z-index:40;background:var(--nav-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--card-border);position:sticky;top:0}.nav-shell{justify-content:space-between;align-items:center;gap:30px;height:88px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:-.9px;align-items:center;gap:12px;font-size:20px;font-weight:750;display:inline-flex}.wordmark-dot{color:var(--accent)}.monogram{border:1px solid var(--foreground);letter-spacing:-1.6px;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;font-size:15px;display:flex;position:relative}.monogram>span{background:var(--background);padding:2px;font-size:14px;line-height:1;position:absolute;top:-6px;right:-5px}.desktop-nav{gap:32px;display:flex}.desktop-nav a{color:var(--muted);padding:12px 0;font-size:13px;position:relative}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--foreground)}.desktop-nav a[aria-current]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:4px;left:0;right:0}.nav-actions{align-items:center;gap:18px;display:flex}.nav-contact{border:1px solid var(--card-border);border-radius:4px;align-items:center;gap:24px;padding:11px 16px;font-size:12px;display:flex}.nav-contact:hover{border-color:var(--foreground)}.menu-toggle{align-items:center;gap:14px;min-height:44px;font-size:13px;display:none}.mobile-nav[hidden]{display:none}.mobile-nav{padding-block:12px 24px}.mobile-nav a{border-top:1px solid var(--card-border);align-items:center;gap:24px;padding:16px 0;font-size:25px;display:flex}.mobile-nav a svg{margin-left:auto}.home-hero{grid-template-columns:1.45fr 1fr;align-items:center;gap:72px;padding-top:105px;padding-bottom:90px;display:grid}.hero-eyebrow{color:var(--muted);align-items:center;gap:12px;margin-bottom:32px;display:flex}.home-hero h1{letter-spacing:-.065em;white-space:nowrap;margin:0 0 28px;font-size:clamp(46px,5.25vw,76px);font-weight:550;line-height:1.11}.hero-description{max-width:470px;color:var(--muted);font-size:16px;line-height:1.8}.hero-actions{align-items:center;gap:28px;margin-top:34px;display:flex}.hero-footnote{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);gap:22px;margin-top:58px;font-size:9px;display:flex}.hero-footnote span+span{position:relative}.hero-footnote span+span:before{content:"/";color:#b0b5a8;position:absolute;left:-14px}.hero-art{padding:12px 0;position:relative}.system-sketch{background:var(--hero-panel);border:1px solid var(--green);padding:25px 30px 20px;position:relative}@supports (color:color-mix(in lab, red, red)){.system-sketch{border:1px solid color-mix(in srgb,var(--green)12%,transparent)}}.system-sketch{background-image:radial-gradient(var(--green).7px,transparent .7px);border-radius:5px;transform:rotate(-2deg)}@supports (color:color-mix(in lab, red, red)){.system-sketch{background-image:radial-gradient(color-mix(in srgb,var(--green)13%,transparent).7px,transparent .7px)}}.system-sketch{box-shadow:12px 15px 0 var(--hero-panel);background-size:16px 16px}@supports (color:color-mix(in lab, red, red)){.system-sketch{box-shadow:12px 15px 0 color-mix(in srgb,var(--hero-panel)45%,transparent)}}.sketch-top{color:var(--green);justify-content:space-between;align-items:center;margin-bottom:27px;display:flex}.sketch-cross{font-size:25px;line-height:1}.sketch-node{border:1px solid var(--green);align-items:center;gap:17px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.sketch-node{border:1px solid color-mix(in srgb,var(--green)18%,transparent)}}.sketch-node{background:var(--background);border-radius:3px;padding:17px 18px}.node-index{font-family:var(--font-mono);opacity:.8;align-self:flex-start;margin-top:3px;font-size:9px}.sketch-node small{font-family:var(--font-mono);letter-spacing:.07em;color:var(--muted);margin-bottom:4px;font-size:8px;display:block}.sketch-node strong{font-family:var(--font-display);letter-spacing:-.6px;font-size:17px;font-weight:600;display:block}.sketch-node p{color:var(--muted);margin:5px 0 0;font-size:11px}.node-icon{color:var(--green);margin-left:auto;font-size:27px}.node-active{color:#fff;background:#315347;border-color:#315347}.node-active small,.node-active p{color:#d1dcc9}.node-active .node-icon{color:#d2e8aa}.sketch-connector{align-items:center;gap:15px;height:35px;margin-left:28px;display:flex}.sketch-connector>span{border-left:1px dashed var(--green);height:100%;display:block;position:relative}.sketch-connector>span:after{content:"";border-right:1px solid var(--green);border-bottom:1px solid var(--green);width:5px;height:5px;position:absolute;bottom:-1px;transform:translate(-3px,-3px)rotate(45deg)}.sketch-connector small{font-family:var(--font-mono);color:var(--green);font-size:8px}.sketch-bottom{font-family:var(--font-mono);color:var(--green);align-items:center;gap:10px;margin-top:24px;font-size:8px;display:flex}.sketch-bottom .status-dot{width:5px;height:5px}.art-caption{text-align:right;font-family:var(--serif);color:var(--muted);margin:28px 0 0;font-size:13px;font-style:italic;display:block}.discipline-bar{border-top:1px solid var(--card-border);border-bottom:1px solid var(--card-border)}.discipline-bar .shell{letter-spacing:-.1px;justify-content:space-between;align-items:center;padding-block:25px;font-size:15px;display:flex}.discipline-bar span:nth-child(2n){color:var(--accent);font-size:22px}.section-space{padding-top:110px;padding-bottom:100px}.section-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:50px;display:flex}.section-heading .eyebrow{margin-bottom:20px}.section-number{color:var(--accent);margin-right:15px}.section-heading h2,.practice-section h2{letter-spacing:-.055em;font-size:clamp(32px,3.4vw,48px);font-weight:500;line-height:1.2}.section-heading>p{max-width:330px;color:var(--muted);margin-bottom:2px;font-size:14px;line-height:1.8}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 30px;display:grid}.work-card{min-width:0}.work-card-link{display:block}.project-stage{aspect-ratio:1.32;color:#294734;isolation:isolate;background:#e1e7da;border-radius:5px;justify-content:center;align-items:center;height:auto;padding:54px 30px 42px;display:flex;position:relative;overflow:hidden}.stage-mint{color:#315546;background:#e0e9df}.stage-forest{color:#e1e9d7;background:#293e35}.stage-lavender{color:#504963;background:#e5e2ed}.stage-sand{color:#625341;background:#ece6dc}.stage-blue{color:#3b535f;background:#dee5e8}.stage-stone{color:#52594a;background:#e4e5de}.stage-meta{justify-content:space-between;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;top:22px;left:24px;right:24px}.stage-meta span:first-child{font-family:var(--font-display);letter-spacing:-.5px;font-size:15px;font-weight:600}.stage-meta span:last-child,.stage-footer{font-family:var(--font-mono);letter-spacing:.08em;font-size:7px}.stage-footer{justify-content:space-between;display:flex;position:absolute;bottom:20px;left:24px;right:24px}.stage-footer span:last-child{font-size:14px}.product-frame{background:#fff;border-radius:5px;width:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1);overflow:hidden;transform:perspective(1000px)rotateY(-5deg)rotateX(3deg)rotate(-2deg);box-shadow:0 24px 45px -22px #152c3866}.work-card-link:hover .product-frame{transform:perspective(1000px)rotateY(0)rotateX(0)rotate(-.5deg)translateY(-5px)}.browser-chrome{color:#5b6657;background:#f7f8f5;align-items:center;gap:3px;height:22px;padding:0 8px;display:flex}.browser-chrome i{background:#c9cec5;border-radius:50%;width:4px;height:4px}.browser-chrome span{font-family:var(--font-mono);letter-spacing:.02em;margin:auto;font-size:6px}.browser-chrome span:last-child{margin:0}.product-image{aspect-ratio:16/9;position:relative}.product-image img{object-position:top center}.stage-commerce .product-frame{width:92%;margin-left:-6%;transform:perspective(1000px)rotateY(4deg)rotate(-3deg)}.stage-commerce .product-image{aspect-ratio:1.44}.stage-commerce .product-image img{object-fit:cover;object-position:top}.commerce-mobile{background:#fff;border:4px solid #263a2e;border-radius:18px;width:21%;height:60%;position:absolute;bottom:11%;right:5%;overflow:hidden;transform:rotate(7deg);box-shadow:0 16px 30px #1a34294d}.stage-mobile{padding:50px 30px 36px}.stage-mobile .product-frame{width:88%;box-shadow:none;background:#fff;border-radius:8px;transform:rotate(-5deg)}.stage-mobile .product-image{aspect-ratio:1}.stage-mobile .product-image img{object-fit:contain}.diagram-frame{background:0 0;border-radius:8px;transform:none;box-shadow:0 12px 30px -15px #0b263b44}.stage-diagram{padding:56px 24px 45px}.work-card-heading{justify-content:space-between;align-items:center;gap:18px;margin-top:24px;display:flex}.work-card-heading .eyebrow{color:var(--muted);margin-bottom:6px;font-size:9px}.work-card-heading h3{letter-spacing:-1px;font-size:28px;font-weight:500}.round-arrow{border:1px solid var(--card-border);border-radius:50%;justify-content:center;align-items:center;width:39px;height:39px;transition:background .2s,color .2s;display:flex}.work-card-link:hover .round-arrow{background:var(--foreground);color:var(--background);border-color:var(--foreground)}.work-card-summary{color:var(--muted);max-width:90%;margin-top:7px;font-size:14px}.work-card-tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.work-card-tags span{border:1px solid var(--card-border);color:var(--muted);border-radius:3px;padding:4px 8px;font-size:10px}.text-visual{flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;width:100%;height:100%;padding:20px 12px;display:flex}.text-visual>span{font-family:var(--font-mono);letter-spacing:.1em;font-size:9px}.text-visual strong{font-family:var(--font-display);letter-spacing:-1.5px;max-width:80%;font-size:35px;line-height:1.1}.signal-line{align-items:center;gap:10px;width:100%;height:55px;display:flex}.signal-line i{opacity:.25;background:currentColor;flex:1;height:20%}.signal-line i:nth-child(2n){height:75%}.signal-line i:nth-child(3n){height:45%}.all-work-link{border-block:1px solid var(--card-border);justify-content:space-between;align-items:center;margin-top:60px;padding:24px 0;font-size:17px;display:flex}.all-work-link .eyebrow{color:var(--muted);margin-left:auto;margin-right:30px}.all-work-link:hover{color:var(--accent)}.project-filters{border-bottom:1px solid var(--card-border);flex-wrap:wrap;gap:8px;margin-bottom:38px;padding-bottom:32px;display:flex}.project-filters button{border:1px solid var(--card-border);border-radius:3px;align-items:center;gap:18px;min-height:44px;padding:11px 16px;font-size:12px;transition:background .2s;display:flex}.project-filters button[aria-pressed=true]{background:var(--foreground);border-color:var(--foreground);color:var(--background)}.project-filters button span{font-family:var(--font-mono);opacity:.7;font-size:9px}.project-filters button:hover{border-color:var(--foreground)}.practice-section{background:var(--muted-bg);border-block:1px solid var(--card-border);padding-block:100px}.practice-grid{grid-template-columns:1fr 1.2fr;gap:100px;display:grid}.practice-grid>div>.eyebrow{margin-bottom:25px}.practice-grid>div>p:not(.eyebrow){color:var(--muted);max-width:350px;margin:24px 0;font-size:14px}.capability{border-top:1px solid var(--card-border);align-items:start;gap:24px;padding:26px 0;display:flex}.capability:last-child{border-bottom:1px solid var(--card-border)}.capability>span{color:var(--accent);margin-top:5px}.capability>svg{flex-shrink:0;width:17px;margin-top:5px}.capability h3{letter-spacing:-.7px;margin-bottom:9px;font-size:21px;font-weight:500}.capability p{color:var(--muted);margin-bottom:14px;font-size:13px;line-height:1.8}.capability small{font-family:var(--font-mono);color:var(--muted);font-size:9px}.note-row{border-top:1px solid var(--card-border);align-items:start;gap:42px;padding:33px 0;display:flex}.note-row:last-child{border-bottom:1px solid var(--card-border)}.note-row>span{color:var(--muted);padding-top:6px}.note-row>div{flex:1}.note-row .eyebrow{color:var(--muted);margin-bottom:8px;font-size:9px}.note-row h2,.note-row h3{letter-spacing:-.8px;font-size:25px;font-weight:500;line-height:1.4}.note-row p:not(.eyebrow){color:var(--muted);max-width:650px;margin-top:9px;font-size:13px}.note-row>svg{flex-shrink:0;margin-top:10px;transition:transform .2s}.note-row:hover>svg{transform:translate(3px,-3px)}.note-row:hover h2,.note-row:hover h3{color:var(--green)}.site-footer{color:#edf0e5;background:#233b30;padding-top:75px}.footer-invite{padding-bottom:65px}.footer-invite>.eyebrow{color:#b6c5b5;margin-bottom:24px}.footer-invite>a{font-family:var(--font-display);letter-spacing:-.055em;font-size:clamp(30px,4.3vw,60px);line-height:1.25;display:block;position:relative}.footer-invite>a>span{font-family:var(--serif);color:#c5d5aa;font-style:italic}.footer-invite svg{width:55px;height:55px;transition:transform .2s;position:absolute;top:20px;right:0}.footer-invite a:hover svg{transform:translate(5px,-5px)}.footer-bottom{border-top:1px solid #506052;justify-content:space-between;align-items:center;gap:25px;padding-block:30px;display:flex}.footer-bottom p{color:#bdc9bc;font-size:11px}.footer-bottom>div{gap:22px;font-size:11px;display:flex}.footer-bottom>.eyebrow{color:#bdc9bc;font-size:9px}.footer-bottom .wordmark{font-size:18px}.page-section{padding-top:85px;padding-bottom:110px}.page-intro{max-width:820px;margin-bottom:65px}.page-intro>.eyebrow{color:var(--muted);margin-bottom:28px}.page-intro h1{letter-spacing:-.06em;font-size:clamp(44px,5.5vw,76px);font-weight:500;line-height:1.12}.page-intro>p:not(.eyebrow){max-width:600px;color:var(--muted);margin-top:27px;font-size:16px}.about-intro{grid-template-columns:1.5fr 1fr;align-items:start;gap:110px;display:grid}.portrait-frame{aspect-ratio:4/5;background:var(--muted-bg);border-radius:3px;max-width:330px;margin-top:20px;position:relative;overflow:hidden}.portrait-frame img{object-fit:cover;object-position:top}.portrait-caption{font-family:var(--font-mono);color:var(--muted);justify-content:space-between;max-width:330px;margin-top:14px;font-size:9px;display:flex}.about-lead{color:var(--foreground)!important;font-size:20px!important}.about-section{border-top:1px solid var(--card-border);grid-template-columns:1fr 2fr;gap:70px;padding:65px 0;display:grid}.about-section>h2{letter-spacing:-1px;font-size:30px;font-weight:500}.experience-entry+.experience-entry{border-top:1px solid var(--card-border);margin-top:35px;padding-top:35px}.experience-entry .eyebrow{color:var(--muted);margin-bottom:10px}.experience-entry h3{letter-spacing:-.5px;font-size:22px;font-weight:500}.experience-entry h4{color:var(--green);margin-top:5px;font-size:14px;font-weight:500}.experience-entry p{color:var(--muted);margin-top:15px;font-size:14px}.experience-entry ul{color:var(--muted);margin-top:15px;padding-left:18px;font-size:14px;line-height:1.8;list-style:outside}.skill-row{border-bottom:1px solid var(--card-border);grid-template-columns:1fr 1.4fr;gap:25px;padding:20px 0;display:grid}.skill-row:first-child{padding-top:0}.skill-row h3{font-size:15px;font-weight:500}.skill-row p{color:var(--muted);font-size:13px}.contact-layout{grid-template-columns:1.1fr 1fr;gap:100px;display:grid}.contact-layout .page-intro h1{font-size:clamp(38px,4vw,60px)}.contact-email{letter-spacing:-.5px;align-items:center;gap:16px;margin-top:35px;font-size:20px;display:flex}.contact-socials{gap:25px;margin-top:20px;font-size:12px;display:flex}.contact-location{margin-top:45px!important;font-size:12px!important}.contact-panel{background:var(--card);border:1px solid var(--card-border);border-radius:5px;align-self:start;margin-top:12px;padding:38px}.contact-panel>.eyebrow{color:var(--muted);margin-bottom:30px}.contact-form{flex-direction:column;gap:24px;display:flex}.contact-form label{margin-bottom:9px;font-size:12px;display:block}.contact-form input,.contact-form textarea{border:1px solid var(--card-border);background:var(--background);border-radius:3px;width:100%;min-height:46px;padding:12px 14px;font-size:14px;display:block}.contact-form textarea{resize:vertical;min-height:150px}.contact-form .button{align-self:start}.form-feedback{color:var(--green);font-size:13px}.form-error{color:var(--accent)}.case-header{padding-block:50px 48px}.back-link{color:var(--muted);align-items:center;gap:12px;margin-bottom:55px;font-size:12px;display:inline-flex}.case-header .eyebrow{color:var(--muted);margin-bottom:18px}.case-title-row{justify-content:space-between;align-items:end;gap:40px;display:flex}.case-title-row h1{letter-spacing:-.06em;font-size:clamp(42px,5.5vw,76px);font-weight:500;line-height:1.1}.case-header .case-subtitle{max-width:750px;color:var(--muted);margin-top:22px;font-size:20px;line-height:1.6}.case-header .work-card-tags{margin-top:22px}.case-hero{margin-bottom:65px}.case-hero .project-stage{aspect-ratio:1.95;padding:70px 9% 55px}.case-hero .product-frame{max-width:950px;transform:none!important}.case-hero .stage-meta{top:27px;left:35px;right:35px}.case-hero .stage-footer{bottom:25px;left:35px;right:35px}.case-hero .browser-chrome{height:28px}.case-hero .stage-commerce .product-frame{width:86%;margin-left:-4%}.case-hero .stage-commerce .product-image{aspect-ratio:1.75}.case-hero .commerce-mobile{width:14%;height:75%;bottom:8%;right:13%}.case-hero .stage-mobile .product-frame{width:52%;max-width:500px}.case-hero .stage-mobile{padding-top:30px;padding-bottom:30px}.case-hero .stage-diagram .product-frame{max-width:850px}.case-layout{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:80px;padding-bottom:80px;display:grid}.case-sidebar{position:sticky;top:120px}.case-sidebar dl>div{border-bottom:1px solid var(--card-border);padding:17px 0}.case-sidebar dt{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:7px;font-size:9px}.case-sidebar dd{font-size:13px;line-height:1.7}.case-sidebar .case-links{flex-direction:column;gap:15px;margin-top:25px;display:flex}.case-links a{justify-content:space-between;align-items:center;font-size:12px;display:flex}.case-toc{margin-top:35px}.case-toc p{color:var(--muted);margin-bottom:15px}.case-toc a{color:var(--muted);padding:7px 0;font-size:11px;display:block}.case-toc a:hover{color:var(--foreground)}.case-prose{--tw-prose-body:var(--muted);--tw-prose-headings:var(--foreground);--tw-prose-bold:var(--foreground);--tw-prose-code:var(--foreground);--tw-prose-pre-bg:var(--muted-bg);--tw-prose-pre-code:var(--foreground);--tw-prose-links:var(--green);--tw-prose-counters:var(--muted);--tw-prose-bullets:var(--muted);--tw-prose-quotes:var(--muted);--tw-prose-hr:var(--card-border);--tw-prose-th-borders:var(--card-border);--tw-prose-td-borders:var(--card-border);max-width:850px;font-size:16px;line-height:1.9}.case-prose>:first-child{margin-top:0}.case-prose h2{letter-spacing:-1px;margin-top:2.4em;margin-bottom:.9em;scroll-margin-top:115px;font-size:29px;font-weight:500}.case-prose h3{letter-spacing:-.4px;font-size:20px;font-weight:600}.case-prose a{-webkit-text-decoration-color:var(--green);-webkit-text-decoration-color:var(--green);-webkit-text-decoration-color:var(--green);text-decoration-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.case-prose a{-webkit-text-decoration-color:color-mix(in srgb,var(--green)35%,transparent);-webkit-text-decoration-color:color-mix(in srgb,var(--green)35%,transparent);-webkit-text-decoration-color:color-mix(in srgb,var(--green)35%,transparent);text-decoration-color:color-mix(in srgb,var(--green)35%,transparent)}}.case-prose a{text-underline-offset:4px}.case-prose pre{border:1px solid var(--card-border);border-radius:4px;font-size:12px;line-height:1.8}.case-prose strong{font-weight:600}.case-prose blockquote{font-family:var(--serif);border-color:var(--green);font-size:22px;font-weight:400}.case-prose ul{padding-left:1.2em}.case-next{border-top:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:30px;margin-bottom:65px;padding-block:45px;display:flex}.case-next h2{letter-spacing:-1.5px;margin-top:8px;font-size:35px}.case-next>svg{width:35px;height:35px}.article-shell{max-width:850px}.article-header{border-bottom:1px solid var(--card-border);margin-bottom:40px;padding-bottom:40px}.article-header h1{letter-spacing:-.055em;margin:18px 0;font-size:clamp(35px,4vw,56px);font-weight:500;line-height:1.2}.article-header>.eyebrow{color:var(--muted)}.case-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px;margin:35px 0 45px;display:grid}.case-gallery>figure{min-width:0;margin:0}.case-gallery>figure:first-child:nth-last-child(odd){grid-column:1/-1}.gallery-open{cursor:zoom-in;background:var(--muted-bg);border:1px solid var(--card-border);border-radius:4px;width:100%;padding:15px;display:block;position:relative;overflow:hidden}.gallery-image{aspect-ratio:16/10;display:block;position:relative}.gallery-image img{object-fit:contain;transition:transform .4s}.gallery-open:hover .gallery-image img{transform:scale(1.02)}.gallery-mobile .gallery-image{aspect-ratio:1}.gallery-zoom{background:var(--card);border:1px solid var(--card-border);width:30px;height:30px;color:var(--foreground);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;bottom:9px;right:9px}.case-gallery figcaption{color:var(--muted);gap:10px;margin-top:10px;font-size:11px;line-height:1.7;display:flex}.case-gallery figcaption>span{font-family:var(--font-mono);opacity:1;padding-top:2px;font-size:9px}.image-dialog{background:var(--background);width:min(1500px,96vw);max-width:none;height:94dvh;max-height:94dvh;color:var(--foreground);border:1px solid var(--card-border);border-radius:6px;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden;box-shadow:0 30px 100px #0006}.image-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a1512dd}.image-dialog[open]{flex-direction:column;display:flex}.dialog-toolbar{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;min-height:65px;padding:14px 20px;display:flex}.dialog-toolbar>span{color:var(--muted)}.dialog-controls{align-items:center;gap:10px;display:flex}.dialog-controls button{border:1px solid var(--card-border);border-radius:3px;min-width:40px;height:40px;font-size:20px}.dialog-controls button:last-child{margin-left:12px}.dialog-image{flex:1;min-height:0;margin:20px 50px;position:relative}.dialog-image img{object-fit:contain}.dialog-caption{justify-content:space-between;gap:20px;padding:15px 24px 20px;font-size:12px;line-height:1.6;display:flex}.dialog-caption>span{font-family:var(--font-mono);color:var(--muted);flex-shrink:0;font-size:9px}.mermaid-wrapper{border:1px solid var(--card-border);background:var(--card);border-radius:4px;margin:30px 0;padding:20px;overflow:auto}.mermaid-wrapper svg{max-width:100%;height:auto}@media (min-width:1500px){.home-hero{gap:95px}}@media (max-width:1100px){.shell{width:calc(100% - 72px)}.home-hero{gap:36px;padding-top:80px}.home-hero h1{font-size:5.4vw}.hero-actions{flex-wrap:wrap;gap:18px}.hero-footnote{gap:18px;font-size:8px}.system-sketch{padding:22px 20px 18px}.sketch-node{gap:12px;padding:15px 12px}.sketch-node strong{font-size:15px}.node-icon{font-size:23px}.practice-grid,.contact-layout{gap:50px}.case-layout{grid-template-columns:190px minmax(0,1fr);gap:45px}.about-intro{gap:65px}.desktop-nav{gap:22px}.nav-actions{gap:10px}}@media (max-width:800px){.shell{width:calc(100% - 48px)}.nav-shell{height:74px}.desktop-nav{gap:20px}.nav-contact{display:none}.home-hero{grid-template-columns:1fr .85fr;gap:26px;padding-block:65px}.home-hero h1{font-size:5.8vw}.hero-eyebrow{letter-spacing:.04em;font-size:8px}.hero-description{font-size:14px}.hero-actions .text-link{font-size:11px}.hero-footnote{display:none}.system-sketch{padding:18px 14px}.sketch-node{gap:9px;padding:13px 10px}.sketch-node strong{font-size:13px}.sketch-node small{font-size:7px}.sketch-node p{font-size:9px}.node-icon{display:none}.sketch-bottom{font-size:6px}.sketch-top{margin-bottom:20px}.art-caption{font-size:11px}.discipline-bar .shell{padding-block:20px;font-size:11px}.section-space,.practice-section{padding-block:75px}.section-heading{gap:30px}.section-heading>p{max-width:250px;font-size:13px}.section-heading h2,.practice-section h2{font-size:34px}.project-stage{aspect-ratio:1.15;padding:50px 20px 40px}.stage-meta{top:18px;left:17px;right:17px}.stage-meta span:last-child{font-size:5px}.work-card-heading h3{font-size:24px}.work-grid{gap:40px 24px}.work-card-heading .eyebrow{font-size:7px}.work-card-summary{font-size:13px}.practice-grid{gap:35px}.capability{gap:15px}.capability h3{font-size:18px}.capability>svg{display:none}.footer-bottom{flex-wrap:wrap;justify-content:flex-start}.footer-bottom>div{margin-left:auto}.footer-bottom>p{display:none}.page-intro h1{font-size:55px}.page-section{padding-top:65px}.about-intro{gap:35px}.about-section{grid-template-columns:1fr 2fr;gap:35px}.about-section>h2{font-size:25px}.skill-row{grid-template-columns:1fr;gap:8px}.contact-layout{grid-template-columns:1fr 1fr;gap:35px}.contact-panel{padding:25px}.contact-layout .page-intro h1{font-size:38px}.contact-email{font-size:16px}.case-layout{grid-template-columns:1fr}.case-sidebar{grid-template-columns:1fr 1fr;gap:25px;display:grid;position:static}.case-sidebar dl{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.case-sidebar .case-links{align-self:start;margin-top:16px}.case-toc{display:none}.case-header{padding-top:35px}.back-link{margin-bottom:35px}.case-header .case-subtitle{font-size:18px}.case-hero{margin-bottom:35px}.case-hero .project-stage{aspect-ratio:1.65;padding:60px 8% 40px}.case-hero .stage-mobile .product-frame{width:58%}.case-next{margin-bottom:30px}.case-prose{max-width:none}.note-row{gap:25px}}@media (max-width:600px){.shell{width:calc(100% - 40px)}.nav-shell{gap:15px;height:70px}.wordmark{gap:10px;font-size:19px}.monogram{width:30px;height:30px;font-size:14px}.desktop-nav{display:none}.menu-toggle{display:flex}.nav-actions{gap:12px}.home-hero{grid-template-columns:1fr;gap:45px;padding-top:48px;padding-bottom:45px}.hero-eyebrow{letter-spacing:.06em;margin-bottom:24px;font-size:8px}.home-hero h1{margin-bottom:20px;font-size:clamp(39px,10.5vw,62px);line-height:1.15}.hero-description{max-width:95%;font-size:15px}.hero-actions{gap:22px;margin-top:28px}.hero-actions .text-link{font-size:12px}.hero-footnote{margin-top:30px;font-size:7px;display:flex}.hero-art{width:calc(100% - 15px);max-width:400px;margin:0 auto}.system-sketch{padding:22px;transform:rotate(-1.5deg)}.sketch-node{gap:15px;padding:13px 14px}.sketch-node strong{font-size:16px}.sketch-node small{font-size:7px}.sketch-node p{font-size:10px}.node-icon{font-size:24px;display:block}.sketch-connector{height:26px}.sketch-bottom{margin-top:20px;font-size:7px}.sketch-top{margin-bottom:18px}.sketch-top .eyebrow{font-size:8px}.art-caption{text-align:center;margin-top:24px}.discipline-bar .shell{flex-wrap:wrap;justify-content:center;gap:2px 12px;padding-block:18px;font-size:10px}.discipline-bar span:nth-child(2n){font-size:15px}.section-space{padding-block:60px}.section-heading{margin-bottom:30px;display:block}.section-heading .eyebrow{margin-bottom:17px;font-size:9px}.section-heading h2,.practice-section h2{font-size:34px}.section-heading>p{max-width:95%;margin-top:22px;font-size:13px}.section-heading>.text-link{margin-top:25px}.work-grid{grid-template-columns:1fr;gap:38px}.project-stage{aspect-ratio:1.23;padding:55px 24px 42px}.stage-meta{top:20px;left:20px;right:20px}.stage-meta span:last-child{font-size:6px}.stage-meta span:first-child{font-size:15px}.stage-footer{font-size:6px;bottom:18px;left:20px;right:20px}.work-card-heading{margin-top:19px}.work-card-heading .eyebrow{font-size:8px}.work-card-heading h3{font-size:26px}.work-card-summary{max-width:95%}.work-card-tags{margin-top:12px}.all-work-link{margin-top:38px;padding-block:21px;font-size:15px}.all-work-link .eyebrow{display:none}.practice-section{padding-block:60px}.practice-grid{grid-template-columns:1fr;gap:38px}.practice-grid>div>p:not(.eyebrow){max-width:none}.capability{gap:18px;padding-block:24px}.capability h3{font-size:19px}.capability>svg{display:block}.capability small{font-size:8px}.note-row{gap:15px;padding-block:25px}.note-row h2,.note-row h3{letter-spacing:-.6px;font-size:21px}.note-row .eyebrow{font-size:8px}.note-row p:not(.eyebrow){font-size:12px}.note-row>svg{width:17px}.note-row>span{padding-top:4px;font-size:8px}.site-footer{padding-top:48px}.footer-invite{padding-bottom:40px}.footer-invite>a{padding-right:22px;font-size:34px}.footer-invite svg{width:25px;height:25px;top:10px}.footer-invite>.eyebrow{margin-bottom:20px;font-size:8px}.footer-bottom{gap:20px;padding-block:25px}.footer-bottom .wordmark{font-size:16px}.footer-bottom>div{gap:15px;font-size:10px}.footer-bottom>.eyebrow{width:100%;font-size:8px}.page-section{padding-top:45px;padding-bottom:65px}.page-intro{margin-bottom:40px}.page-intro h1{font-size:clamp(40px,11vw,60px)}.page-intro>.eyebrow{margin-bottom:22px;font-size:8px}.page-intro>p:not(.eyebrow){margin-top:22px;font-size:15px}.project-filters{gap:8px;margin-bottom:30px;padding-bottom:25px}.project-filters button{gap:12px;padding:10px 12px;font-size:10px}.about-intro{grid-template-columns:1fr;gap:0}.portrait-frame{aspect-ratio:1.2;max-width:100%;margin-top:0}.portrait-frame img{object-position:50% 26%}.portrait-caption{max-width:100%;margin-bottom:40px;font-size:8px}.about-lead{font-size:18px!important}.about-section{grid-template-columns:1fr;gap:28px;padding-block:35px}.about-section>h2{font-size:27px}.experience-entry h3{font-size:20px}.experience-entry p,.experience-entry ul{font-size:13px}.skill-row{grid-template-columns:1fr 1.2fr;gap:20px}.skill-row h3{font-size:13px}.skill-row p{font-size:12px}.contact-layout{grid-template-columns:1fr;gap:0}.contact-layout .page-intro h1{font-size:42px}.contact-panel{margin-top:0;padding:25px}.contact-email{font-size:20px}.contact-location{margin-top:28px!important}.contact-form{gap:20px}.case-header .eyebrow{font-size:8px}.case-title-row{align-items:start;gap:15px}.case-title-row h1{font-size:46px}.case-title-row>.round-arrow{flex-shrink:0;width:34px;height:34px;margin-top:9px}.case-header .case-subtitle{font-size:16px}.case-header{padding-bottom:30px}.case-hero .project-stage{aspect-ratio:1.25;padding:55px 20px 40px}.case-hero .stage-meta{top:18px;left:18px;right:18px}.case-hero .stage-footer{bottom:18px;left:18px;right:18px}.case-hero .product-frame{width:100%}.case-hero .stage-commerce .product-frame{width:90%;margin-left:-5%}.case-hero .stage-commerce .product-image{aspect-ratio:1.44}.case-hero .commerce-mobile{border-width:3px;border-radius:13px;width:21%;height:60%;bottom:11%;right:5%}.case-hero .stage-mobile .product-frame{width:80%}.case-hero .browser-chrome{height:22px}.case-sidebar{grid-template-columns:1fr;gap:0}.case-sidebar dt{font-size:8px}.case-sidebar dd{font-size:12px}.case-sidebar .case-links{flex-direction:row;gap:25px}.case-links a{gap:12px}.case-layout{gap:38px;padding-bottom:40px}.case-prose{font-size:15px;line-height:1.85}.case-prose h2{margin-top:2em;font-size:26px}.case-prose h3{font-size:20px}.case-prose pre{font-size:10px}.case-gallery{grid-template-columns:1fr;gap:22px;margin-block:28px}.case-gallery>figure:first-child:nth-last-child(odd){grid-column:auto}.case-gallery figcaption{font-size:11px}.gallery-open{padding:10px}.gallery-image{aspect-ratio:1.5}.gallery-mobile .gallery-image{aspect-ratio:1.15}.image-dialog{border:none;border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.dialog-toolbar{gap:10px;padding:12px}.dialog-toolbar>.eyebrow{font-size:8px}.dialog-controls{gap:5px}.dialog-controls button{min-width:38px;height:40px}.dialog-controls button:last-child{margin-left:5px}.dialog-image{margin:10px}.dialog-caption{flex-direction:column;gap:15px;padding:15px;font-size:12px}.case-next h2{font-size:28px}.case-next{padding-block:30px}.article-header h1{font-size:38px}.article-header .eyebrow{font-size:9px}.article-shell .back-link{margin-bottom:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.product-frame{transform:none!important}}.stage-mobile .product-frame{width:auto;max-width:none;position:absolute;inset:16% 13% 13%;transform:rotate(-4deg);box-shadow:0 12px 24px -15px #29332544}.stage-mobile .product-image{aspect-ratio:auto;width:100%;height:100%}.case-hero .stage-mobile .product-frame{width:auto;max-width:none;inset:10% 27%}.case-gallery img,.dialog-image img,.dialog-caption p{margin:0}.stage-footer svg{width:12px;height:12px}.browser-chrome svg{width:8px;height:8px}.discipline-bar svg{width:17px;height:17px}.node-icon svg{width:24px;height:24px}@media (max-width:600px){.case-hero .stage-mobile .product-frame{inset:15% 16% 12%}.stage-mobile .product-frame{inset:16% 13% 13%}.discipline-bar svg{width:12px;height:12px}}.visual-note{color:var(--muted);max-width:700px;margin-top:15px;font-size:11px;line-height:1.7}@media (min-width:601px){.mobile-nav{display:none}}@media (max-width:360px){.home-hero h1{font-size:34px}.hero-actions{gap:18px}.hero-eyebrow{font-size:7px}.contact-layout .page-intro h1{font-size:36px}.page-intro h1{font-size:38px}.footer-invite>a{font-size:29px}.hero-footnote{gap:17px;font-size:6px}}.case-layout>*{min-width:0}.case-prose{overflow-wrap:break-word}@media (max-width:600px){.case-sidebar .case-links{flex-wrap:wrap}}@keyframes art-arrive{0%{transform:translateY(12px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.hero-art{animation:.65s cubic-bezier(.22,1,.36,1) both art-arrive}}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
