*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--lumen-terracotta: #c4704a;--lumen-terracotta-light: #d4886a;--lumen-terracotta-dark: #a85a38;--lumen-ink: #111111;--lumen-secondary: #6b7280;--lumen-surface: #f9f9f9;--lumen-border: #e5e7eb;--ds-text-primary: var(--lumen-ink);--ds-text-secondary: var(--lumen-secondary);--ds-surface-background-primary: #ffffff;--ds-surface-background-secondary: #ffffff;--ds-border-divider: var(--lumen-border);--ds-interactive-primary: var(--lumen-terracotta)}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:#fff;color:#555;font-size:1rem;font-weight:400;line-height:1.7;font-family:Plus Jakarta Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a:focus-visible,button:focus-visible{outline:2px solid var(--lumen-terracotta);outline-offset:3px}.lumen-section-label{font-size:.6875rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--lumen-terracotta)}.portfolio-nav-shell{position:fixed;top:20px;left:50%;z-index:100;width:calc(100% - 2rem);max-width:56rem;transform:translate(-50%);pointer-events:none}.portfolio-nav-pill{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem 1rem;padding:.625rem 1.5rem;border:1px solid rgb(0 0 0 / .08);border-radius:9999px;background:#ffffffb3;box-shadow:0 2px 20px #00000014;transition:box-shadow .2s ease,background .2s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto}.portfolio-nav-brand-link{flex-shrink:0;text-decoration:none}.portfolio-nav-brand{display:inline-flex;align-items:center;border-radius:9999px;background:#1a1a1a;padding:6px 10px;font-size:13px;font-weight:500;line-height:1;color:#fff}.portfolio-nav-links--desktop{display:none;min-width:0;align-items:center;justify-content:center;justify-self:center;gap:1.25rem}@media(min-width:640px){.portfolio-nav-links--desktop{display:flex}}.portfolio-nav-link{flex-shrink:0;font-size:.875rem;font-weight:500;line-height:1.4;color:#555;text-decoration:none;transition:color .15s ease,opacity .15s ease}.portfolio-nav-link:hover{color:#111;opacity:1}.portfolio-nav-link--active{color:var(--lumen-terracotta)}.portfolio-nav-right{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:.5rem}.portfolio-nav-actions{flex-shrink:0}.portfolio-nav-hamburger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#333;cursor:pointer;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.portfolio-nav-hamburger:hover{background:#0000000d}@media(min-width:640px){.portfolio-nav-hamburger{display:none}}.portfolio-nav-mobile-menu{display:flex;flex-direction:column;gap:0;margin-top:8px;padding:6px 8px;border:1px solid rgb(0 0 0 / .08);border-radius:16px;background:#fffffff2;box-shadow:0 4px 16px #0000001a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@media(min-width:640px){.portfolio-nav-mobile-menu{display:none}}.portfolio-nav-link--mobile{display:block;padding:10px 14px;border-radius:10px;font-size:15px;font-weight:500;color:#333;text-decoration:none;transition:background .15s ease}.portfolio-nav-link--mobile:hover{background:#0000000a;opacity:1}.portfolio-nav-link--mobile.portfolio-nav-link--active{color:var(--lumen-terracotta)}@media(max-width:639px){.portfolio-nav-shell{top:.75rem;width:calc(100% - 1.5rem)}.portfolio-nav-pill{grid-template-columns:auto 1fr auto;gap:.5rem .75rem;padding:.5rem .875rem}}.page-load,.page-route{animation:page-fade-in .45s ease-out}@media(prefers-reduced-motion:reduce){.page-load,.page-route{animation:none}}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.mx-auto{margin-left:auto;margin-right:auto}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[8rem\]{min-width:8rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-l-2{border-left-width:2px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-lumen-terracotta\/20{border-color:#c4704a33}.border-lumen-terracotta\/50{border-color:#c4704a80}.border-stone-200{--tw-border-opacity: 1;border-color:rgb(231 229 228 / var(--tw-border-opacity, 1))}.border-stone-300{--tw-border-opacity: 1;border-color:rgb(214 211 209 / var(--tw-border-opacity, 1))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-lumen-terracotta{--tw-bg-opacity: 1;background-color:rgb(196 112 74 / var(--tw-bg-opacity, 1))}.bg-lumen-terracotta\/10{background-color:#c4704a1a}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-stone-50{--tw-bg-opacity: 1;background-color:rgb(250 250 249 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.object-cover{-o-object-fit:cover;object-fit:cover}.object-top{-o-object-position:top;object-position:top}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-24{padding-bottom:6rem}.pl-5{padding-left:1.25rem}.pt-\[88px\]{padding-top:88px}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-800{--tw-text-opacity: 1;color:rgb(6 95 70 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-lumen-ink{--tw-text-opacity: 1;color:rgb(17 17 17 / var(--tw-text-opacity, 1))}.text-lumen-secondary{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-lumen-terracotta{--tw-text-opacity: 1;color:rgb(196 112 74 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-stone-600{--tw-text-opacity: 1;color:rgb(87 83 78 / var(--tw-text-opacity, 1))}.text-stone-700{--tw-text-opacity: 1;color:rgb(68 64 60 / var(--tw-text-opacity, 1))}.text-stone-900{--tw-text-opacity: 1;color:rgb(28 25 23 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);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)}.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{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.glass{background:#fafaf9a6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.35);box-shadow:0 4px 24px #1c19170f}.glass-strong{background:#fafaf9d1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 8px 32px #1c191714}.glass-panel{background:#ffffff73;backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border:1px solid rgba(255,255,255,.25)}.placeholder\:text-stone-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(168 162 158 / var(--tw-text-opacity, 1))}.placeholder\:text-stone-400::placeholder{--tw-text-opacity: 1;color:rgb(168 162 158 / var(--tw-text-opacity, 1))}.first\:mt-0:first-child{margin-top:0}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-lumen-terracotta-dark:hover{--tw-bg-opacity: 1;background-color:rgb(168 90 56 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-terracotta:focus{--tw-border-opacity: 1;border-color:rgb(196 112 74 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-terracotta:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(196 112 74 / var(--tw-ring-opacity, 1))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-gray-400:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-lumen-terracotta:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(196 112 74 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-red-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:gap-4{gap:1rem}}@media(min-width:768px){.md\:mx-0{margin-left:0;margin-right:0}.md\:block{display:block}.md\:hidden{display:none}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:gap-10{gap:2.5rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}}:root{--portfolio-section-pt: 4rem;--portfolio-section-pt-md: 5rem;--portfolio-card-pad: 1.25rem;--portfolio-card-pad-md: 1.5rem;--portfolio-stack-gap: 1.25rem;--portfolio-stack-gap-sm: .75rem;--portfolio-content-max: 42rem;--intro-photo-focal-y-mobile: 22%;--intro-photo-focal-y-desktop: 28%;--intro-parallax-max: 6px}.portfolio-page{min-height:100vh;background:#fff}.portfolio-container{width:100%;box-sizing:border-box}.intro-layout{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"photo name" "body body";gap:1rem 1rem;align-items:center}.intro-header{grid-area:name;min-width:0}.intro-body{grid-area:body;display:flex;min-width:0;max-width:var(--portfolio-content-max);flex-direction:column;gap:var(--portfolio-stack-gap);margin-top:.5rem}@media(min-width:768px){.intro-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-areas:"name photo" "body photo";gap:2.5rem;align-items:stretch}.intro-header{align-self:end;padding-bottom:.25rem}.intro-body{margin-top:0;align-self:start}}.intro-content{min-width:0;max-width:42rem}.home-intro{padding-top:5.5rem;padding-bottom:var(--portfolio-section-pt)}.home-work{padding-top:var(--portfolio-section-pt);padding-bottom:var(--portfolio-section-pt-md)}.home-hero-name{margin:0;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;line-height:1.15;color:#111;letter-spacing:-.02em}@media(min-width:768px){.home-hero-name{margin-top:0}}.home-hero-title{margin-top:.25rem;font-size:15px;font-weight:400;line-height:1.4;color:#666}@media(min-width:768px){.home-hero-title{font-size:16px}}.home-body-copy{display:flex;flex-direction:column;gap:1rem}.home-body-copy p{font-size:1rem;font-weight:400;line-height:1.7;color:#555}.home-linkedin{display:inline-block;align-self:flex-start;margin-top:0;font-size:.875rem;font-weight:500;color:var(--lumen-terracotta);text-decoration:none;transition:color .15s ease,opacity .15s ease}.home-linkedin:hover{color:var(--lumen-terracotta-dark);opacity:.85}.profile-photo-frame{position:relative;grid-area:photo;flex-shrink:0;width:4rem;height:4rem;overflow:hidden;border-radius:9999px;border:2px solid var(--lumen-border, #e5e7eb);background:#f9fafb;box-shadow:none;transition:transform .25s ease,box-shadow .2s ease}.profile-photo-frame:hover{transform:scale(1.02);box-shadow:0 2px 8px #00000014}@media(min-width:768px){.profile-photo-frame{width:100%;height:100%;min-height:18rem;border-radius:1rem;border:1px solid rgb(0 0 0 / .08);box-shadow:0 1px 3px #0000000f;align-self:stretch}.profile-photo-frame:hover{transform:scale(1.01);box-shadow:0 4px 16px #00000012}}.profile-photo-intro{position:absolute;inset:0;display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center var(--intro-photo-focal-y-mobile);object-position:center var(--intro-photo-focal-y-mobile);will-change:transform}@media(min-width:768px){.profile-photo-intro{height:calc(100% + 2 * var(--intro-parallax-max));top:calc(-1 * var(--intro-parallax-max));-o-object-position:center var(--intro-photo-focal-y-desktop);object-position:center var(--intro-photo-focal-y-desktop)}}.section-heading-divider,.case-studies-divider{display:flex;align-items:center;gap:1.5rem;margin:3rem 0 2rem}.section-heading-divider:before,.section-heading-divider:after,.case-studies-divider:before,.case-studies-divider:after{content:"";flex:1;height:1px;background:var(--lumen-border)}.section-heading-divider h2,.case-studies-divider h2{flex-shrink:0;font-size:1.25rem;font-weight:700;color:var(--lumen-ink)}.case-studies-section-heading.section-heading-divider{align-items:center;margin:0 0 1.5rem}.section-heading-divider{align-items:center}.case-studies-section-heading h2{font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#999}.case-study-card-list{display:flex;flex-direction:column;gap:1rem}.case-study-card{overflow:hidden;border:1px solid #ebebeb;border-radius:1rem;background:#fff;box-shadow:0 1px 3px #0000000f;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.case-study-card:hover{border-color:#0000001a;box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.case-study-card:focus-within{outline:2px solid var(--lumen-terracotta);outline-offset:3px;border-color:#0000001a;box-shadow:0 8px 24px #00000014}.case-study-card__link{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;color:inherit;text-decoration:none;align-items:stretch}@media(min-width:768px){.case-study-card__link{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:1fr;min-height:11rem}}.case-study-card__content{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:var(--portfolio-stack-gap-sm);padding:var(--portfolio-card-pad);grid-row:2}@media(min-width:768px){.case-study-card__content{grid-row:1;grid-column:1;padding:var(--portfolio-card-pad-md)}}.case-study-card__content .case-study-card__label{margin-bottom:0}.case-study-card__label{margin-bottom:.5rem;font-size:.6875rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--lumen-terracotta)}.case-study-card__title{font-size:1.0625rem;font-weight:600;line-height:1.35;color:#111}@media(min-width:768px){.case-study-card__title{font-size:1.125rem}}.case-study-card__year{margin-left:.5rem;font-size:.85em;font-weight:400;color:#888}.case-study-card__year-line{margin:0;font-size:.75rem;font-weight:400;color:#aaa;letter-spacing:.01em}.case-study-card__description{margin-top:0;font-size:.9375rem;font-weight:400;line-height:1.7;color:#555}.case-study-card__stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:1rem 1.5rem;margin-top:0}.case-study-card__stat-value{display:block;font-size:26px;font-weight:600;line-height:1.2;color:#111}.case-study-card__stat-label{display:block;margin-top:.25rem;font-size:13px;font-weight:400;color:#888;text-transform:none}.case-study-card__cta{display:inline-block;align-self:flex-start;margin-top:.25rem;font-size:.875rem;font-weight:500;color:var(--lumen-terracotta);transition:color .15s ease,opacity .15s ease,transform .2s ease}.case-study-card:hover .case-study-card__cta{color:var(--lumen-terracotta-dark);transform:translate(4px)}.case-study-card__media{position:relative;width:100%;min-height:10rem;overflow:hidden;background:#f0f0f0;grid-row:1;transition:transform .25s ease}@media(min-width:768px){.case-study-card__media{grid-row:1;grid-column:2;height:100%;min-height:100%;align-self:stretch}}.case-study-card:hover .case-study-card__media img{transform:scale(1.04)}.case-study-card__media img{display:block;width:100%;height:100%;min-height:10rem;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;transition:transform .4s ease}@media(min-width:768px){.case-study-card__media img{position:absolute;inset:0;min-height:0;-o-object-position:center 18%;object-position:center 18%}}.case-study-card__media--placeholder{display:flex;align-items:center;justify-content:center;padding:1rem;min-height:10rem;text-align:center}@media(min-width:768px){.case-study-card__media--placeholder{min-height:100%}}.case-study-card__media--placeholder span{font-size:13px;line-height:1.4;color:#888}.case-study-thumb{width:5.5rem;height:auto;flex-shrink:0;align-self:flex-start;overflow:hidden;border-radius:.5rem;border:1px solid var(--lumen-border);background:#f9fafb;aspect-ratio:4 / 3}.case-study-thumb img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}@media(min-width:640px){.case-study-thumb{width:7rem}.case-study-thumb--page{width:10.5rem}}@media(max-width:639px){.case-study-thumb--page{width:100%;max-width:14rem}}.case-study-section-heading.section-heading-divider{margin:0 0 1rem}.case-study-section-heading h2{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;line-height:1.25;color:#111}.case-study-header{display:flex;flex-direction:column;gap:2rem;padding-bottom:var(--portfolio-section-pt-md)}.case-study-header__title-block{display:flex;max-width:36rem;flex-direction:column;gap:.5rem;margin-bottom:0}.case-study-title{margin:.5rem 0 0;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:#111}.case-study-header__role{margin-top:0;font-size:.875rem;font-weight:500;color:#666}.case-study-header__type{margin-top:.25rem;font-size:13px;color:#888}.case-study-hero{width:100%;border-radius:1rem;overflow:hidden;background:#f5f5f5;margin-bottom:0;aspect-ratio:4 / 3}@media(min-width:768px){.case-study-hero{aspect-ratio:16 / 7}}.case-study-hero__img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top}.case-study-hook{max-width:var(--portfolio-content-max);margin:0;font-size:clamp(1.1rem,2.5vw,1.375rem);font-weight:600;line-height:1.45;color:#111}.case-study-impact{max-width:var(--portfolio-content-max);margin-top:0;border-radius:1rem;border:1px solid #e5e7eb;background:#fafafa;padding:1.5rem}.case-study-impact__label{font-size:.6875rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--lumen-terracotta)}.case-study-impact-list{margin:1rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:1rem}.case-study-impact-list__item{display:flex;gap:.75rem;font-size:1rem;line-height:1.7;color:#555}.case-study-impact-list__dot{margin-top:.55rem;height:.375rem;width:.375rem;flex-shrink:0;border-radius:9999px;background:var(--lumen-terracotta)}.case-study-summary{margin-top:0;max-width:var(--portfolio-content-max);display:flex;flex-direction:column;gap:var(--portfolio-stack-gap)}.case-study-footer{margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgb(243 244 246);font-size:14px;color:#888}.case-study-body{margin-top:0}.case-study-team{padding-top:var(--portfolio-section-pt);padding-bottom:1rem}@media(min-width:768px){.case-study-team{padding-top:var(--portfolio-section-pt-md)}}.case-study-team__grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:var(--portfolio-stack-gap)}@media(min-width:640px){.case-study-team__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}}.case-study-team__title{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:#111}.case-study-team__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.375rem}.case-study-team__list li{font-size:.875rem;line-height:1.5;color:#555}.case-study-section{padding-top:var(--portfolio-section-pt);padding-bottom:1rem}@media(min-width:768px){.case-study-section{padding-top:var(--portfolio-section-pt-md)}}.case-study-section+.case-study-section{border-top:none;margin-top:0}.case-study-section__content{display:flex;flex-direction:column;gap:var(--portfolio-stack-gap);max-width:var(--portfolio-content-max);margin-top:var(--portfolio-stack-gap)}.case-study-article{width:100%}.case-study-paragraph{margin:0;font-size:16px;font-weight:400;line-height:1.7;color:#555}.case-study-bullets{display:flex;flex-direction:column;gap:.5rem;margin:0;padding-left:1.25rem;list-style:disc}.case-study-bullets li{font-size:1rem;font-weight:400;line-height:1.7;color:#555}.case-study-subsection{margin-top:.5rem}.case-study-subsection__title{margin:0 0 .5rem;font-size:15px;font-weight:600;color:#111}.case-study-split{display:flex;flex-direction:column;align-items:stretch;gap:var(--portfolio-stack-gap);margin-top:var(--portfolio-stack-gap)}@media(min-width:768px){.case-study-split{flex-direction:row;align-items:flex-start;gap:3rem}.case-study-split .case-study-section__content{flex:1;min-width:0;margin-top:0}.case-study-split__image{flex:1;min-width:0;margin:0}.case-study-split--image-left .case-study-split__image{order:-1}}.case-study-split__image{display:flex;flex-direction:column;gap:.5rem;margin:0}.case-study-split__image img{display:block;width:100%;border-radius:.75rem;-o-object-fit:cover;object-fit:cover}.case-study-pager{margin-top:5rem;padding-top:3rem;border-top:1px solid #ebebeb}.case-study-pager__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.case-study-pager__label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#aaa;margin:0}.case-study-pager__controls{display:flex;gap:.5rem;flex-shrink:0}.case-study-pager__control{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;border:1px solid #ebebeb;background:#fff;color:#444;font-size:14px;line-height:1;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.case-study-pager__control:hover{border-color:#0000001f;background:#fafafa;color:#111}.case-study-pager__control:focus-visible{outline:2px solid var(--lumen-terracotta);outline-offset:2px}.case-study-pager__track{display:flex;gap:.75rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-padding-inline:.25rem;padding-bottom:.25rem;margin-inline:-.25rem;padding-inline:.25rem;scrollbar-width:thin;scrollbar-color:#d6d3d1 transparent}.case-study-pager__track:focus-visible{outline:2px solid var(--lumen-terracotta);outline-offset:2px;border-radius:.5rem}.case-study-pager__track::-webkit-scrollbar{height:6px}.case-study-pager__track::-webkit-scrollbar-thumb{background:#d6d3d1;border-radius:3px}.case-study-pager__card{flex:0 0 min(240px,calc(100vw - 3rem));max-width:280px;scroll-snap-align:start;display:flex;flex-direction:column;gap:0;border-radius:.75rem;border:1px solid #ebebeb;overflow:hidden;text-decoration:none;background:#fff;box-shadow:0 1px 2px #0000000a;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.case-study-pager__card:hover{border-color:#0000001a;box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.case-study-pager__thumb{display:flex;width:100%;aspect-ratio:5 / 3;overflow:hidden;background:#f5f5f5}.case-study-pager__thumb-placeholder{width:100%;height:100%;min-height:100%;background:linear-gradient(135deg,#f0f0f0,#e8e8e8)}.case-study-pager__thumb img,.case-study-pager__thumb .case-study-thumb{width:100%!important;height:100%!important;aspect-ratio:unset!important;border-radius:0!important;border:none!important;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top}.case-study-pager__info{padding:.75rem .875rem .875rem;display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:.25rem}.case-study-pager__eyebrow{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--lumen-terracotta)}.case-study-pager__title{font-size:13px;font-weight:600;color:#111;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.case-study-pager__hook{font-size:12px;color:#777;line-height:1.45;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.about-identity{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem}.about-avatar{width:4rem;height:4rem;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center var(--intro-photo-focal-y-mobile);object-position:center var(--intro-photo-focal-y-mobile);flex-shrink:0;border:2px solid var(--lumen-border, #e5e7eb)}.about-personal-row{display:flex;flex-direction:column;align-items:stretch;gap:var(--portfolio-stack-gap)}@media(min-width:768px){.about-personal-row{flex-direction:row;align-items:flex-start;gap:3rem}.about-personal-row .intro-body{flex:1;min-width:0}}.about-collage-frame,.about-team-frame{margin:0;flex-shrink:0;overflow:hidden;border-radius:1rem}@media(min-width:768px){.about-collage-frame{width:20rem}}.about-collage-img{display:block;width:100%;border-radius:1rem;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease}.about-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.about-photo-grid--three{grid-template-columns:repeat(3,1fr)}@media(min-width:768px){.about-photo-grid{gap:.625rem}}.about-photo-grid__img{display:block;width:100%;aspect-ratio:1 / 1;border-radius:.5rem;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease}.about-collage-frame:hover .about-collage-img,.about-collage-frame:hover .about-photo-grid__img,.about-team-frame:hover .about-photo-grid__img{transform:scale(1.01)}.about-work-row{display:flex;flex-direction:column;align-items:stretch;gap:var(--portfolio-stack-gap)}@media(min-width:1024px){.about-work-row{flex-direction:row;align-items:flex-start;gap:3rem}.about-work-content{flex:1;min-width:0}.about-team-frame{width:100%;max-width:28rem;position:sticky;top:6rem}}.about-section{margin-bottom:0;padding-top:var(--portfolio-section-pt)}@media(min-width:768px){.about-section{padding-top:var(--portfolio-section-pt-md)}}.about-section:first-of-type{padding-top:0}.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}@media(min-width:640px){.about-photos{gap:1.5rem}}.about-photo-figure{margin:0}.about-photo-img{display:block;width:100%;border-radius:.75rem;-o-object-fit:cover;object-fit:cover;aspect-ratio:4 / 3}.about-photo-caption{margin-top:.625rem;font-size:12px;line-height:1.5;color:#999}.about-availability{margin-top:1.5rem;border-radius:1rem;border:1px solid #e5e7eb;padding:1rem 1.25rem}.about-availability p{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;font-size:14px;line-height:1.6;color:#555}.about-availability__status{flex-shrink:0;font-weight:600;color:var(--lumen-terracotta)}.about-tag{display:inline-flex;border-radius:9999px;border:1px solid #e5e7eb;background:#f9f9f9;padding:4px 12px;font-size:13px;color:#444}.about-divider{display:flex;align-items:center;gap:1.25rem;margin:3rem 0}.about-divider__line{flex:1;height:1px;background:#e5e7eb}.about-divider__label{flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#999}.about-work-intro{display:flex;flex-direction:column;gap:var(--portfolio-stack-gap-sm);margin-bottom:2.5rem}.about-work-heading{margin:0;font-size:1.25rem;font-weight:600;line-height:1.3;color:#111;max-width:44rem}@media(min-width:768px){.about-work-heading{font-size:1.5rem}}.about-work-subhead{margin:0;font-size:.9375rem;line-height:1.65;color:#666;max-width:38rem}.capability-grid{display:flex;flex-direction:column;gap:1rem}.capability-grid__secondary{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.capability-grid{gap:1.25rem}.capability-grid__secondary{grid-template-columns:repeat(3,1fr);gap:1.25rem}}.capability-card{display:flex;flex-direction:column;gap:var(--portfolio-stack-gap-sm);border:1px solid #ebebeb;border-radius:.75rem;background:#fff;padding:var(--portfolio-card-pad);box-shadow:0 1px 3px #0000000f;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}@media(min-width:768px){.capability-card{padding:var(--portfolio-card-pad-md)}}.capability-card:hover{border-color:#0000001a;box-shadow:0 4px 16px #00000012;transform:scale(1.01)}.capability-card--featured{padding:1.5rem}@media(min-width:768px){.capability-card--featured{padding:2rem}}.capability-card--featured .capability-card__title{font-size:1.125rem}@media(min-width:768px){.capability-card--featured .capability-card__title{font-size:1.25rem}}.capability-card__title{margin:0;font-size:.9375rem;font-weight:600;color:#111}.capability-card__description{margin:0;font-size:.875rem;line-height:1.65;color:#555}.capability-card__proof{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.capability-card__proof-item{display:flex;align-items:baseline;gap:.5rem;font-size:13px;line-height:1.5;color:#444}.capability-card__dot{flex-shrink:0;display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lumen-terracotta);margin-top:1px;position:relative;top:-1px}.career-arc{margin-top:2.5rem;border-top:1px solid #f3f4f6;padding-top:2rem}.career-arc__heading{font-size:13px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#999;margin-bottom:1.25rem}.career-arc__list{display:flex;flex-direction:column;gap:0}.career-row{display:grid;grid-template-columns:7rem 1fr;gap:.75rem 1.5rem;padding:.75rem 0;border-bottom:1px solid #f3f4f6;align-items:baseline}@media(min-width:640px){.career-row{grid-template-columns:7.5rem 1fr 1fr}}.career-row__period{font-size:12px;font-weight:500;color:#999;white-space:nowrap}.career-row__role{font-size:14px;font-weight:500;color:#111}.career-row__company{font-size:14px;color:#666}.career-row__link{color:inherit;text-decoration:underline;text-decoration-color:#0003;text-underline-offset:2px;transition:color .2s ease,text-decoration-color .2s ease}.career-row__link:hover{color:var(--lumen-terracotta);text-decoration-color:var(--lumen-terracotta)}@media(max-width:639px){.career-row{grid-template-columns:1fr;gap:.25rem;padding:1rem 0}.career-row__period,.career-row__role,.career-row__company{grid-column:1}.career-row__company{margin-top:0;font-size:.8125rem}}.about-history-links{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;margin-top:var(--portfolio-stack-gap)}.about-work-history-link{display:inline-block;font-size:14px;font-weight:500;color:var(--lumen-terracotta);text-decoration:none;transition:opacity .2s ease}.about-work-history-link:hover{opacity:.75}.about-speaking-note{margin-top:1rem;font-size:13px;color:#888;line-height:1.5}.about-tools{margin-top:2.5rem;border-top:1px solid #f3f4f6;padding-top:2rem;display:flex;flex-direction:column;gap:1.5rem}@media(min-width:640px){.about-tools{flex-direction:row;gap:2.5rem}}.about-tools__group{min-width:0}.about-tools__label{font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#999;margin-bottom:.75rem}.about-tools__tags{display:flex;flex-wrap:wrap;gap:.5rem}.case-study-meta{display:flex;flex-direction:column;gap:var(--portfolio-stack-gap);max-width:var(--portfolio-content-max)}.case-study-meta__line{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;margin:0;font-size:.8125rem;color:#888}.case-study-meta__sep{color:#ccc}.case-study-meta__status{font-weight:500;color:var(--lumen-terracotta)}.case-study-meta__metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr));gap:.75rem}.case-study-meta__metric{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;border:1px solid rgb(0 0 0 / .08);border-radius:.75rem;background:#fff}.case-study-meta__metric-value{font-size:1.5rem;font-weight:700;line-height:1;letter-spacing:-.02em;color:#111}.case-study-meta__metric-label{font-size:.75rem;font-weight:500;line-height:1.4;color:#888;text-transform:uppercase;letter-spacing:.04em}.case-study-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.75rem,1fr));gap:.75rem;margin:1.5rem 0}.case-study-stat-grid--pair{grid-template-columns:repeat(2,1fr)}.case-study-stat-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;border:1px solid rgb(0 0 0 / .08);border-radius:.75rem;background:#fafafa;min-width:0}.case-study-stat-card__value{font-size:2rem;font-weight:700;line-height:1;color:var(--lumen-terracotta, #c0533a);letter-spacing:-.02em}.case-study-stat-card__label{font-size:12px;font-weight:500;color:#888;line-height:1.4;text-transform:uppercase;letter-spacing:.04em}.case-study-image{margin:1.5rem 0 0}.case-study-image__img{display:block;width:100%;border-radius:10px;border:1px solid var(--lumen-border);box-shadow:0 2px 12px #00000014;background:#f0f0f0}.case-study-image__caption{margin-top:.5rem;font-size:12px;color:#999}.case-study-image--full{max-width:none;margin-top:1.5rem}.case-study-image--full .case-study-image__img{aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.case-study-image--contain .case-study-image__img,.case-study-image--full.case-study-image--contain .case-study-image__img{aspect-ratio:auto;height:auto;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.case-study-embed{margin:2rem 0 0}.case-study-embed__frame{width:100%;border-radius:1rem;overflow:hidden;border:1px solid #e5e7eb;background:#f9f9f9}.case-study-embed__frame iframe{display:block;width:100%}.case-study-video{margin:1.5rem 0 0}.case-study-video__player{display:block;width:100%;border-radius:10px;border:1px solid var(--lumen-border);box-shadow:0 2px 12px #00000014;background:#f0f0f0}.case-study-video__caption{margin-top:.5rem;font-size:12px;color:#999}.contact-page{max-width:32rem;padding:4rem 0 6rem}.contact-page__heading{font-size:clamp(2rem,5vw,3rem);font-weight:700;letter-spacing:-.02em;color:#111;margin:0 0 1rem}.contact-page__sub{font-size:16px;line-height:1.6;color:#666;margin:0 0 2.5rem}.contact-page__actions{display:flex;flex-direction:column;gap:1.5rem}.contact-page__email{display:inline-block;box-sizing:border-box;max-width:100%;padding:.875rem 1.5rem;border-radius:.75rem;background:var(--lumen-terracotta, #c0533a);color:#fff;font-size:.9375rem;font-weight:500;text-decoration:none;transition:opacity .15s ease,background .15s ease;width:-moz-fit-content;width:fit-content;word-break:break-word}.contact-page__email:hover{opacity:.85}.contact-page__links{display:flex;gap:1.5rem}.contact-page__link{font-size:15px;font-weight:500;color:#555;text-decoration:none;transition:color .15s ease}.contact-page__link:hover{color:#111}.lumen-reveal{opacity:0;transition:opacity .45s ease-out;transition-delay:var(--reveal-delay, 0ms);animation:lumen-reveal-fallback 0s 1s forwards}.lumen-reveal--lift{transform:translateY(16px);transition:opacity .45s ease-out,transform .45s ease-out;transition-delay:var(--reveal-delay, 0ms)}@keyframes lumen-reveal-fallback{to{opacity:1}}.lumen-reveal-visible{opacity:1;animation:none}.lumen-reveal-visible.lumen-reveal--lift{transform:none}.portfolio-site-footer{border-top:1px solid var(--lumen-border);background:var(--ds-surface-background-primary)}.portfolio-site-footer__connect{padding-top:var(--portfolio-section-pt-md);padding-bottom:var(--portfolio-section-pt)}.portfolio-site-footer__connect-inner{max-width:var(--portfolio-content-max)}.portfolio-site-footer__heading{margin:0;font-size:1.25rem;font-weight:600;color:var(--ds-text-primary);letter-spacing:-.01em}.portfolio-site-footer__lede{margin:.5rem 0 0;max-width:28rem;font-size:.875rem;line-height:1.5;color:var(--ds-text-secondary)}.portfolio-site-footer__email{display:inline-block;margin-top:1.25rem;max-width:100%;font-size:.9375rem;font-weight:500;color:var(--ds-interactive-primary);text-decoration:none;word-break:break-word;transition:color .2s ease,opacity .2s ease}.portfolio-site-footer__email:hover{color:var(--lumen-terracotta-dark);opacity:.9}.portfolio-site-footer__social{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:1rem 0 0;padding:0;list-style:none}.portfolio-site-footer__link{font-size:.875rem;font-weight:500;color:var(--ds-text-secondary);text-decoration:none;transition:color .2s ease}.portfolio-site-footer__link:hover{color:var(--ds-text-primary)}.portfolio-site-footer__bar{border-top:1px solid var(--lumen-border);background:var(--lumen-surface)}.portfolio-site-footer__bar-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding-top:1.25rem;padding-bottom:1.5rem}.portfolio-site-footer__nav{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem}.portfolio-site-footer__nav-link{font-size:.8125rem;font-weight:500;color:var(--ds-text-secondary);text-decoration:none;transition:color .2s ease}.portfolio-site-footer__nav-link:hover{color:var(--ds-text-primary)}.portfolio-site-footer__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin:0}.portfolio-site-footer__copyright{font-size:.75rem;color:var(--ds-text-secondary)}.portfolio-back-to-top{margin:0;padding:0;border:none;background:none;font-family:inherit;font-size:.8125rem;font-weight:500;color:var(--ds-text-secondary);cursor:pointer;text-decoration:none;transition:color .2s ease}.portfolio-back-to-top:hover{color:var(--ds-interactive-primary)}@media(max-width:479px){.portfolio-site-footer__bar-inner{flex-direction:column;align-items:flex-start}.portfolio-site-footer__meta{width:100%;justify-content:space-between}}.portfolio-back-link{font-size:.875rem;font-weight:500;color:#888;text-decoration:none;transition:color .15s ease}.portfolio-back-link:hover{color:#111}@media(prefers-reduced-motion:reduce){.lumen-reveal,.lumen-reveal--lift{opacity:1;transform:none;transition:none;animation:none}.case-study-card,.case-study-pager__card,.case-study-pager__control,.capability-card,.profile-photo-frame{transition:none}.case-study-card:hover,.case-study-pager__card:hover,.capability-card:hover,.profile-photo-frame:hover,.about-collage-frame:hover .about-collage-img,.about-collage-frame:hover .about-photo-grid__img,.about-team-frame:hover .about-photo-grid__img{transform:none}.profile-photo-intro{transform:none!important}}.timeline{position:relative;padding:4rem 0 5rem}.timeline-axis{position:absolute;left:0;right:0;top:50%;height:1px;background:#c4704a73;transform:translateY(-50%)}.timeline-track{position:relative;display:grid;grid-template-columns:repeat(var(--timeline-count, 3),1fr);gap:1.5rem;align-items:center}.timeline-node{position:relative;display:flex;flex-direction:column;align-items:flex-start}.timeline-node--above{padding-bottom:7rem;justify-content:flex-end}.timeline-node--below{padding-top:7rem;justify-content:flex-start}.timeline-connector{position:absolute;left:0;width:1px;height:2.5rem;background:#c4704a73}.timeline-node--above .timeline-connector{bottom:3.5rem}.timeline-node--below .timeline-connector{top:3.5rem}.timeline-card{max-width:16rem}@media(min-width:1024px){.timeline-card{max-width:14rem}}
