:root{--bg:oklch(0.972 0.006 190);--bg-soft:oklch(0.942 0.018 188);--ink:oklch(0.185 0.024 218);--ink-2:oklch(0.31 0.035 218);--muted:oklch(0.46 0.027 218);--line:oklch(0.83 0.024 196);--line-strong:oklch(0.68 0.05 205);--panel:oklch(0.995 0 0);--panel-tint:oklch(0.96 0.018 188);--teal:oklch(0.48 0.105 196);--teal-dark:oklch(0.32 0.08 202);--teal-wash:oklch(0.93 0.045 190);--teal-soft:oklch(0.86 0.072 190);--oxide:oklch(0.57 0.12 34);--oxide-dark:oklch(0.38 0.105 34);--oxide-wash:oklch(0.93 0.052 38);--signal:oklch(0.62 0.16 142);--signal-dark:oklch(0.34 0.11 145);--signal-wash:oklch(0.92 0.07 145);--info:oklch(0.54 0.112 232);--info-dark:oklch(0.34 0.09 232);--info-wash:oklch(0.92 0.045 232);--violet:oklch(0.48 0.095 290);--violet-wash:oklch(0.93 0.044 290);--shadow:0 6px 8px oklch(0.18 0.02 218/0.08);--max:1180px;--gutter:clamp(18px,4vw,56px);--radius:8px;--ease:cubic-bezier(0.22,1,0.36,1);--ease-out-expo:cubic-bezier(0.16,1,0.3,1);--ease-out-quart:cubic-bezier(0.25,1,0.5,1);--z-background:-1;--z-sticky:50;--z-skip:100;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--section-tight:clamp(48px,7vw,88px);--section-standard:clamp(72px,10vw,132px);--section-airy:clamp(92px,13vw,168px);--font-text:"Aptos","Avenir Next","Segoe UI Variable","Segoe UI",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--font-display:"Avenir Next Condensed","Aptos Display","Avenir Next","Arial Narrow",var(--font-text);--text-caption:0.8125rem;--text-meta:0.875rem;--text-body:1rem;--text-body-large:1.1875rem;--text-lede:clamp(1.1875rem,1.45vw,1.375rem);--text-subhead:clamp(1.3125rem,1.85vw,1.625rem);--text-card-title:clamp(1.375rem,2vw,1.875rem);--text-section:clamp(2rem,3.5vw,3.875rem);--text-display:clamp(3rem,6.3vw,5.25rem);--leading-tight:1;--leading-heading:1.08;--leading-title:1.16;--leading-body:1.68;--weight-regular:400;--weight-medium:600;--weight-bold:700;--weight-heavy:800}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:clip}body{min-width:0;margin:0;background:var(--bg);color:var(--ink);font-size:var(--text-body);line-height:var(--leading-body);font-family:var(--font-text);font-feature-settings:"kern";font-kerning:normal;font-optical-sizing:auto;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;z-index:var(--z-background);pointer-events:none;background:linear-gradient(180deg,oklch(.91 .045 190/.78),transparent 24rem),linear-gradient(135deg,transparent 0 58%,oklch(.9 .055 34/.42) 58% 82%,oklch(.91 .04 232/.36) 82% 100%)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{max-width:100%}.reveal{--reveal-y:14px;--reveal-scale:1;animation:reveal-in .56s var(--ease-out-expo) both;animation-delay:var(--reveal-delay,0s)}.reveal--hero{--reveal-y:18px;animation-duration:.72s}.reveal--media{--reveal-y:22px;--reveal-scale:0.975;animation-duration:.78s}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);font-family:var(--font-display);letter-spacing:0;text-wrap:balance}h1{margin-bottom:clamp(20px,3vw,30px);font-size:var(--text-display);font-weight:var(--weight-heavy);line-height:var(--leading-tight)}h1 span{display:block;max-width:780px;margin-top:.14em;color:var(--teal-dark);font-size:clamp(1.55rem,3.1vw,2.75rem)}h1 span,h2{font-weight:var(--weight-heavy);line-height:var(--leading-heading)}h2{margin-bottom:0;font-size:var(--text-section)}h3{margin-bottom:10px;font-size:var(--text-subhead);font-weight:var(--weight-bold);line-height:var(--leading-title)}p{color:var(--muted);line-height:var(--leading-body);overflow-wrap:anywhere;text-wrap:pretty}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid oklch(.72 .14 142);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:14px;left:14px;z-index:var(--z-skip);padding:10px var(--space-sm);background:var(--ink);color:var(--panel);border-radius:var(--radius);transform:translateY(-140%);transition:transform .18s var(--ease)}.skip-link:focus-visible{transform:translateY(0)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky);border-bottom:1px solid oklch(.81 .04 196/.75);background:oklch(.972 .006 190/.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-shell{width:min(100% - calc(var(--gutter) * 2),var(--max));min-height:72px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.brand-mark{display:inline-grid;width:42px;height:42px;place-items:center;background:var(--ink);color:var(--panel);border-radius:6px;font-weight:var(--weight-heavy);letter-spacing:.02em}.button-row,.desktop-nav,.filter-bar,.footer-links,.nav-actions,.specialty-row,.status-row,.tag-row{display:flex;align-items:center}.desktop-nav{gap:clamp(14px,2.5vw,28px);color:var(--muted);font-size:var(--text-meta);font-weight:var(--weight-medium)}.desktop-nav a,.footer-links a,.mobile-nav a{transition:color .18s ease,transform .18s var(--ease-out-quart)}.desktop-nav a:focus-visible,.desktop-nav a:hover,.desktop-nav a[aria-current=page],.mobile-nav a:hover,.mobile-nav a[aria-current=page]{color:var(--teal-dark)}.desktop-nav a:hover,.footer-links a:hover{transform:translateY(-1px)}.nav-actions{gap:var(--space-xs)}.icon-link,.menu-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);border-radius:6px;border:1px solid var(--line);background:oklch(.99 .006 190);color:var(--ink-2);font-size:var(--text-meta);font-weight:var(--weight-bold);transition:transform .16s var(--ease-out-quart),border-color .18s ease,background .18s ease}.icon-link:hover,.menu-button:hover{transform:translateY(-1px);border-color:var(--teal-soft);background:var(--teal-wash)}.icon-link{padding:0 12px}.icon-link--muted{color:var(--muted)}.menu-button{display:none;width:42px;cursor:pointer}.mobile-nav{display:none}.about-band,.about-page,.case-detail,.contact-page,.credibility-strip,.final-cta,.hero-section,.page-hero,.proof-shelf,.resume-section,.section-block,.site-footer{width:min(100% - calc(var(--gutter) * 2),var(--max));margin:0 auto}.hero-section{padding:clamp(44px,7vw,80px) 0 clamp(26px,4vw,48px)}.hero-grid{display:grid;grid-template-columns:minmax(0,.98fr) minmax(340px,.78fr);grid-gap:clamp(28px,5vw,72px);gap:clamp(28px,5vw,72px);align-items:end}.hero-copy{max-width:700px;padding-bottom:0}.section-kicker{margin-bottom:18px;color:var(--oxide-dark);font-size:var(--text-meta);font-weight:var(--weight-medium);letter-spacing:.01em;line-height:1.4}.hero-lede{max-width:64ch;color:var(--ink-2);font-size:var(--text-lede);line-height:1.62}.specialty-row,.status-row,.tag-row{flex-wrap:wrap;gap:var(--space-xs)}.specialty-row{margin:var(--space-xl) 0 var(--space-xl)}.filter-bar a,.specialty-row span,.status-row span,.tag-row span{border-radius:999px;border:1px solid var(--line);background:oklch(.99 .006 190/.76);color:var(--ink-2);font-size:var(--text-caption);font-weight:var(--weight-medium)}.specialty-row span{padding:8px 11px}.filter-bar a,.status-row span,.tag-row span{max-width:100%;padding:7px 10px;overflow-wrap:anywhere}.status-row span{border-color:var(--signal);background:var(--signal-wash);color:var(--signal-dark)}.status-row span[data-status=Implemented]{border-color:oklch(.64 .15 145);background:var(--signal-wash);color:var(--signal-dark)}.status-row span[data-status=Operationalized]{border-color:var(--teal);background:var(--teal-wash);color:var(--teal-dark)}.status-row span[data-status=Piloted]{border-color:var(--info);background:var(--info-wash);color:var(--info-dark)}.status-row span[data-status=Validated]{border-color:oklch(.58 .13 165);background:oklch(.92 .06 165);color:oklch(.31 .095 165)}.status-row span[data-status=Evaluated]{border-color:var(--oxide);background:var(--oxide-wash);color:var(--oxide-dark)}.status-row span[data-status=Planned]{border-color:var(--violet);background:var(--violet-wash);color:oklch(.32 .08 290)}.filter-bar a[href="#product-strategy"],.tag-row span[data-category="Product Strategy"]{border-color:var(--oxide);background:var(--oxide-wash);color:var(--oxide-dark)}.filter-bar a[href="#integrations"],.tag-row span[data-category=Integrations]{border-color:var(--info);background:var(--info-wash);color:var(--info-dark)}.filter-bar a[href="#security"],.tag-row span[data-category=Security]{border-color:var(--signal);background:var(--signal-wash);color:var(--signal-dark)}.filter-bar a[href="#digital-experience"],.tag-row span[data-category="Digital Experience"]{border-color:var(--teal);background:var(--teal-wash);color:var(--teal-dark)}.filter-bar a[href="#business-banking"],.tag-row span[data-category="Business Banking"]{border-color:var(--violet);background:var(--violet-wash);color:oklch(.32 .08 290)}.filter-bar a[href="#ai-operations"],.tag-row span[data-category="AI Operations"]{border-color:oklch(.58 .12 74);background:oklch(.93 .06 74);color:oklch(.34 .095 74)}.button-row{gap:var(--space-sm);flex-wrap:wrap}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);border-radius:7px;padding:0 18px;border:1px solid transparent;font-weight:var(--weight-bold);font-size:var(--text-body);transition:transform .16s var(--ease-out-quart),background .18s ease,border-color .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px) scale(1.01);box-shadow:var(--shadow)}.button:active{transform:translateY(1px) scale(.985);box-shadow:none}.button--primary{background:var(--teal-dark);color:var(--panel)}.button--primary:hover{background:var(--oxide-dark)}.button--secondary{border-color:var(--line);background:var(--panel);color:var(--ink)}.portrait-frame{position:relative;min-height:clamp(420px,48vw,560px);margin:0;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line-strong);background:linear-gradient(135deg,var(--panel) 0 58%,var(--teal-wash) 58% 78%,var(--oxide-wash) 78% 100%)}.portrait-frame:after{content:"";position:absolute;right:14px;bottom:14px;left:14px;height:2px;background:linear-gradient(90deg,transparent,var(--teal),var(--oxide),transparent);transform-origin:left;animation:frame-confirm .78s var(--ease-out-expo) .52s both}.portrait-frame img{object-fit:cover;object-position:center 24%}.portrait-fallback{position:absolute;inset:0;display:grid;place-content:center;grid-gap:var(--space-md);gap:var(--space-md);padding:var(--space-xl);text-align:center}.portrait-fallback span{width:118px;height:118px;display:inline-grid;place-items:center;margin:0 auto;border-radius:50%;background:var(--ink);color:var(--panel);font-size:clamp(2.15rem,5vw,2.6rem);font-weight:var(--weight-heavy)}.portrait-fallback p{max-width:32ch;margin:0;color:var(--ink-2);font-weight:var(--weight-bold);line-height:var(--leading-title)}.hero-media{position:relative;align-self:start}.systems-lens{--lens-x:72%;--lens-y:42%;--portrait-shift-x:0px;--portrait-shift-y:0px;--field-rotate:0deg;position:relative;min-height:clamp(420px,48vw,560px);isolation:isolate;cursor:default}.systems-lens__portrait{min-height:inherit}.systems-lens__portrait img{transform:scale(1.045) translate3d(var(--portrait-shift-x),var(--portrait-shift-y),0);filter:saturate(.94) contrast(1.03);transition:transform .22s var(--ease-out-quart),filter .22s var(--ease-out-quart);will-change:transform,filter}.systems-lens[data-active=true] .systems-lens__portrait img{transform:scale(1.075) translate3d(var(--portrait-shift-x),var(--portrait-shift-y),0);filter:saturate(1.02) contrast(1.06)}.systems-lens__field{position:absolute;inset:0;z-index:1;overflow:hidden;border-radius:var(--radius);pointer-events:none;background:radial-gradient(circle at var(--lens-x) var(--lens-y),oklch(.75 .11 190/.18),transparent 14%),radial-gradient(circle at 82% 62%,oklch(.77 .12 35/.12),transparent 24%),linear-gradient(90deg,transparent 0 42%,oklch(.18 .028 218/.04) 60%,oklch(.18 .028 218/.12) 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0 30%,oklch(0 0 0/.18) 46%,black 60%,black);mask-image:linear-gradient(90deg,transparent 0 30%,oklch(0 0 0/.18) 46%,black 60%,black);opacity:.78;transform:perspective(960px) rotate(var(--field-rotate));transition:background .22s ease,opacity .22s ease,transform .22s var(--ease-out-quart)}.systems-lens[data-active=true] .systems-lens__field{opacity:.92}.systems-lens__scan{position:absolute;width:33%;aspect-ratio:1;left:var(--lens-x);top:var(--lens-y);border:1px solid oklch(.83 .11 190/.24);border-radius:999px;box-shadow:inset 0 0 0 1px oklch(.92 .03 190/.08),0 0 34px oklch(.74 .12 190/.12);opacity:.32;transform:translate(-50%,-50%);transition:left .14s linear,top .14s linear,opacity .18s ease,box-shadow .18s ease}.systems-lens[data-active=true] .systems-lens__scan{opacity:.52;box-shadow:inset 0 0 0 1px oklch(.92 .03 190/.12),0 0 38px oklch(.74 .12 190/.18)}.systems-lens__path{position:absolute;height:1px;background:linear-gradient(90deg,transparent,oklch(.9 .08 190/.88),transparent);opacity:.18;transform-origin:left;transition:opacity .22s ease,transform .22s var(--ease-out-quart)}.systems-lens__path--a{width:42%;left:28%;top:44%;transform:rotate(11deg)}.systems-lens__path--b{width:36%;left:48%;top:58%;transform:rotate(-22deg)}.systems-lens[data-active=true] .systems-lens__path{opacity:.34}.systems-lens__proof{position:absolute;right:clamp(16px,3vw,32px);bottom:clamp(16px,3vw,32px);z-index:3;opacity:0;transform:translate3d(0,20px,0) scale(.98);transition:opacity .18s ease,transform .22s var(--ease-out-quart);pointer-events:none}.systems-lens:focus-within .systems-lens__proof,.systems-lens:hover .systems-lens__proof,.systems-lens[data-active=true] .systems-lens__proof{opacity:1;transform:translateZ(0) scale(1);pointer-events:auto}@media (hover:none),(pointer:coarse){.systems-lens{cursor:auto}.systems-lens__proof{position:relative;right:auto;bottom:auto;width:100%;margin-top:14px;opacity:1;transform:none;pointer-events:auto}}.proof-panel{position:relative;width:min(300px,calc(100% - 32px));display:grid;grid-template-columns:auto 1fr;grid-gap:var(--space-sm);gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--teal-soft);border-radius:var(--radius);background:oklch(.995 0 0/.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.proof-panel p{margin:0;color:var(--ink-2);font-size:var(--text-meta);line-height:1.45}.proof-panel svg{color:var(--teal-dark)}.signal-track{position:relative;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;margin-top:var(--space-sm);overflow:hidden}.signal-track:before{left:8px;right:8px;background:linear-gradient(90deg,var(--teal),var(--info),var(--oxide));opacity:.55;transform:translateY(-50%)}.signal-track:after,.signal-track:before{content:"";position:absolute;top:50%;height:1px}.signal-track:after{width:28px;background:var(--panel);box-shadow:0 0 12px var(--teal);transform:translate(-120%,-50%);animation:signal-pass .94s var(--ease-out-expo) .76s both}.signal-track span{position:relative;z-index:1;display:inline-flex;min-height:28px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;background:oklch(.995 0 0/.9);color:var(--teal-dark);font-size:var(--text-caption);font-weight:var(--weight-bold)}.signal-track span:nth-child(2){color:var(--info-dark)}.signal-track span:nth-child(3){color:var(--oxide-dark)}.proof-shelf{padding:0 0 var(--section-tight)}.proof-shelf__intro{max-width:860px;margin-bottom:clamp(24px,4vw,36px)}.proof-shelf__intro h2{max-width:640px;font-size:clamp(1.85rem,3vw,3.1rem)}.proof-shelf__intro p:last-child{max-width:680px;margin-top:var(--space-sm);margin-bottom:0;color:var(--ink-2);font-size:var(--text-body-large);line-height:1.55}.proof-shelf__grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-gap:var(--space-sm);gap:var(--space-sm)}.proof-card{position:relative;min-height:296px;display:flex;flex-direction:column;gap:var(--space-md);grid-column:span 2;overflow:hidden;padding:clamp(18px,2.4vw,26px);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);animation:proof-card-in .56s var(--ease-out-expo) both;animation-delay:var(--proof-delay,0s);transition:transform .2s var(--ease-out-quart),border-color .18s ease,background .18s ease}.proof-card:focus-visible,.proof-card:hover{transform:translateY(-4px);border-color:var(--teal);background:oklch(.99 .007 190)}.proof-card:before{content:"";position:absolute;inset:auto 18px 18px auto;width:58px;height:58px;border-radius:999px;background:var(--teal-wash);opacity:.62;transform:translate(20%,20%)}.proof-card[data-visual=memo]{background:linear-gradient(180deg,var(--oxide-wash),var(--panel) 58%)}.proof-card[data-visual=integration]{background:linear-gradient(180deg,var(--info-wash),var(--panel) 58%)}.proof-card[data-visual=checklist]{background:linear-gradient(180deg,var(--signal-wash),var(--panel) 58%)}.proof-card__phrase{position:relative;z-index:1;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.24rem,1.6vw,1.55rem);font-weight:var(--weight-heavy);line-height:var(--leading-title)}.proof-card p{position:relative;z-index:1;margin:0;color:var(--ink-2);font-size:var(--text-meta);line-height:1.55}.proof-visual{position:relative;z-index:1;min-height:92px;display:grid;align-content:center;grid-gap:9px;gap:9px;border:1px solid oklch(.82 .04 196);border-radius:var(--radius);background:oklch(.995 0 0/.78);padding:var(--space-sm)}.proof-visual svg{color:var(--teal-dark)}.proof-visual span{color:var(--ink);font-weight:var(--weight-bold);line-height:1.2}.proof-visual i{display:block;width:76%;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--info),var(--oxide))}.proof-card__footer{position:relative;z-index:1;display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);margin-top:auto}.proof-card__footer .text-link{color:var(--ink);font-size:var(--text-meta)}.credibility-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);background:linear-gradient(90deg,oklch(.985 .01 190),oklch(.965 .025 232))}.metric-card{min-height:178px;padding:clamp(20px,3vw,32px);border-right:1px solid var(--line)}.metric-card:nth-child(2n){padding-top:clamp(30px,4.5vw,50px)}.metric-card:nth-child(2) strong{color:var(--oxide-dark)}.metric-card:nth-child(3) strong{color:var(--signal-dark)}.metric-card:nth-child(4) strong{color:var(--info-dark)}.metric-card:last-child{border-right:0}.metric-card strong{display:block;color:var(--teal-dark);font-family:var(--font-display);font-size:clamp(2.2rem,4.5vw,4.2rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--weight-heavy);line-height:1}.metric-card span{display:block;max-width:none;margin-top:14px;color:var(--ink);font-weight:var(--weight-bold);line-height:1.25}.metric-card p{margin:14px 0 0;font-size:var(--text-meta);line-height:1.55}.section-block{padding:var(--section-standard) 0}.about-band,.case-columns,.credibility-strip,.final-cta,.section-block,.work-index{content-visibility:auto;contain-intrinsic-size:auto 680px}.section-block--tight{padding-top:var(--section-tight)}.section-block--ink{width:100%;max-width:none;padding-block:var(--section-airy);padding-inline:var(--gutter);background:linear-gradient(135deg,var(--ink) 0 54%,oklch(.24 .05 202) 54% 76%,oklch(.27 .05 34) 76% 100%);color:var(--panel)}.section-block--ink>*{width:min(100%,var(--max));margin-inline:auto}.section-block--ink h2,.section-block--ink h3{color:var(--panel)}.section-block--ink p{color:oklch(.84 .018 205)}.section-header{margin-bottom:clamp(34px,6vw,76px)}.section-header--split{display:grid;grid-template-columns:minmax(0,.76fr) minmax(280px,.5fr);grid-gap:clamp(24px,6vw,84px);gap:clamp(24px,6vw,84px);align-items:start}.section-header--center{max-width:820px;margin-inline:auto;text-align:center}.section-header p{max-width:60ch;margin-bottom:0;font-size:var(--text-body-large)}.capability-grid,.featured-grid,.philosophy-grid,.resume-bottom,.tech-grid,.work-index{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-md);gap:var(--space-md)}.capability-grid,.featured-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.capability-grid{align-items:stretch}.capability-panel:first-child{grid-column:span 5;background:linear-gradient(180deg,var(--teal-wash),var(--panel));border-color:var(--teal-soft)}.capability-panel:nth-child(2){grid-column:span 7;padding:clamp(24px,4vw,42px);background:linear-gradient(180deg,var(--info-wash),var(--panel));border-color:oklch(.75 .07 232)}.capability-panel:nth-child(3){grid-column:4/-1;display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,1fr);grid-gap:var(--space-sm) clamp(24px,4vw,48px);gap:var(--space-sm) clamp(24px,4vw,48px);align-content:start;background:linear-gradient(135deg,var(--oxide-wash),var(--panel) 54%,var(--signal-wash));border-color:oklch(.75 .08 34)}.capability-panel:nth-child(3) ul{grid-column:2;grid-row:1/span 3;margin-top:0}.featured-grid>*{display:flex}.featured-grid>:first-child{grid-column:span 7}.featured-grid>:nth-child(2){grid-column:span 5}.featured-grid>:nth-child(n+3){grid-column:span 4}.featured-grid .case-card{width:100%;height:100%}.capability-panel,.case-card,.detail-panel,.tech-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.capability-panel,.detail-panel,.tech-panel{padding:clamp(20px,3vw,32px)}.capability-panel svg,.tech-panel svg{color:var(--teal-dark);margin-bottom:var(--space-lg)}.capability-panel:nth-child(2) svg,.tech-panel:nth-child(2) svg{color:var(--info-dark)}.capability-panel:nth-child(3) svg,.tech-panel:nth-child(3) svg{color:var(--oxide-dark)}.capability-panel ul,.detail-panel ul,.resume-role ul{margin:20px 0 0;padding:0;list-style:none}.capability-panel li,.resume-role li{color:var(--ink-2);line-height:1.65}.capability-panel li:before,.resume-role li:before{content:"";display:inline-block;width:6px;height:6px;margin-right:10px;border-radius:999px;background:var(--oxide);transform:translateY(-1px)}.case-card{position:relative;min-height:340px;display:flex;flex-direction:column;overflow:hidden;padding:clamp(20px,3vw,30px);transition:transform .22s var(--ease-out-quart),border-color .18s ease,background .18s ease,box-shadow .18s ease}.case-card:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:var(--shadow)}.section-block--ink .case-card{border-color:oklch(.47 .055 202);background:oklch(.24 .035 218)}.section-block--ink .case-card:hover{border-color:var(--oxide)}.case-card--compact{min-height:270px}.case-card__top{display:flex;justify-content:space-between;gap:var(--space-md)}.case-card__top a{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;transition:transform .18s var(--ease-out-quart),border-color .18s ease,background .18s ease}.case-card:hover .case-card__top a,.case-card__top a:focus-visible{transform:translate(1px,-1px);border-color:var(--teal);background:var(--teal-wash)}.case-card h3{margin-top:clamp(24px,5vw,64px);font-size:var(--text-card-title);line-height:var(--leading-title);overflow-wrap:anywhere}.case-card p{margin-bottom:28px}.case-card__proof{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin:0 0 var(--space-md);padding:10px 0;border-block:1px solid oklch(.82 .026 196/.82)}.case-card__proof>span{color:var(--ink)}.case-card__proof a,.case-card__proof>span{font-size:var(--text-caption);font-weight:var(--weight-bold)}.case-card__proof a{display:inline-flex;align-items:center;gap:6px;color:var(--teal-dark)}.case-card__role-fit{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:var(--space-md)}.case-card__role-fit span{border-radius:999px;background:oklch(.94 .018 218);color:var(--ink-2);font-size:.75rem;font-weight:var(--weight-bold);line-height:1.2;padding:6px 8px}.section-block--ink .case-card__proof{border-color:oklch(.44 .05 202)}.section-block--ink .case-card__proof>span,.section-block--ink .case-card__role-fit span{color:oklch(.9 .018 205)}.section-block--ink .case-card__proof a{color:oklch(.82 .1 190)}.section-block--ink .case-card__role-fit span{background:oklch(.32 .04 218)}.case-card__command{position:absolute;right:var(--space-md);bottom:var(--space-md);left:var(--space-md);z-index:3;display:grid;grid-gap:8px;gap:8px;padding:var(--space-md);border:1px solid oklch(.82 .06 190/.72);border-radius:var(--radius);background:oklch(.995 0 0/.94);box-shadow:0 10px 14px oklch(.18 .02 218/.12);opacity:0;pointer-events:none;transform:translateY(12px) scale(.985);transition:opacity .22s ease,transform .26s var(--ease-out-expo)}.section-block--ink .case-card__command{border-color:oklch(.58 .07 202);background:oklch(.28 .035 218/.96)}.case-card:focus-within .case-card__command,.case-card:hover .case-card__command{opacity:1;transform:translateY(0) scale(1)}.case-card__command div{display:grid;grid-gap:2px;gap:2px}.case-card__command span{color:var(--oxide-dark);font-size:var(--text-caption);font-weight:var(--weight-bold)}.section-block--ink .case-card__command span{color:oklch(.83 .1 38)}.case-card__command p{display:-webkit-box;margin:0;overflow:hidden;color:var(--ink-2);font-size:var(--text-meta);line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:2}.section-block--ink .case-card__command p{color:oklch(.88 .02 205)}.case-card .status-row{margin-top:auto}.work-list{border-top:1px solid var(--line)}.work-row{min-height:104px;display:grid;grid-template-columns:minmax(200px,.42fr) 1fr auto;grid-gap:var(--space-lg);gap:var(--space-lg);align-items:center;border-bottom:1px solid var(--line);padding:var(--space-lg) 0;transition:background .18s ease,color .18s ease,border-color .18s ease}.work-row:hover{background:oklch(.96 .02 190/.66);border-color:var(--teal-soft)}.work-row svg{transition:transform .18s var(--ease-out-quart),color .18s ease}.work-row:focus-visible svg,.work-row:hover svg{transform:translateX(2px);color:var(--teal-dark)}.work-row span{min-width:0;color:var(--ink);font-size:var(--text-subhead);font-weight:var(--weight-bold);line-height:var(--leading-title);overflow-wrap:anywhere}.work-row p{margin:0}.resume-section,.timeline-list{display:grid;grid-gap:0;gap:0}.timeline-preview{padding-top:var(--section-tight)}.resume-role,.timeline-item{display:grid;grid-template-columns:minmax(150px,.28fr) 1fr;grid-gap:clamp(20px,5vw,72px);gap:clamp(20px,5vw,72px);padding:clamp(24px,4vw,38px) 0;border-top:1px solid var(--line)}.resume-role:last-child,.timeline-item:last-child{border-bottom:1px solid var(--line)}.resume-role span,.timeline-item>span{color:var(--oxide-dark);font-weight:var(--weight-bold);font-size:var(--text-meta)}.resume-role>div:first-child p,.role-line{margin-bottom:0;color:var(--ink-2);font-weight:var(--weight-bold)}.tech-panel .tag-row{margin-top:var(--space-lg)}.ecosystem-section{padding-top:var(--section-tight)}.tech-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr) minmax(0,.95fr);align-items:start}.tech-panel:nth-child(2){margin-top:var(--space-xl)}.tech-panel:first-child{background:linear-gradient(180deg,var(--teal-wash),var(--panel));border-color:var(--teal-soft)}.tech-panel:nth-child(2){background:linear-gradient(180deg,var(--info-wash),var(--panel));border-color:oklch(.75 .07 232)}.tech-panel:nth-child(3){background:linear-gradient(180deg,var(--oxide-wash),var(--panel));border-color:oklch(.75 .08 34)}.about-band,.about-page,.contact-page{display:grid;grid-template-columns:minmax(280px,.46fr) 1fr;grid-gap:clamp(36px,7vw,104px);gap:clamp(36px,7vw,104px);align-items:center}.about-band{padding:var(--section-airy) 0;border-top:1px solid var(--line)}.about-band .portrait-frame,.about-page .portrait-frame{min-height:520px}.about-band h2,.about-page h1,.contact-page h1,.page-hero h1{margin-bottom:24px}.back-link,.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--teal-dark);font-weight:var(--weight-bold);transition:color .18s ease,transform .18s var(--ease-out-quart)}.back-link:focus-visible,.back-link:hover,.text-link:focus-visible,.text-link:hover{color:var(--oxide-dark);transform:translateX(1px)}.final-cta{margin-bottom:clamp(54px,9vw,100px);padding:clamp(36px,7vw,76px);border-radius:var(--radius);background:linear-gradient(135deg,var(--teal-dark) 0 52%,var(--info-dark) 52% 76%,var(--oxide-dark) 76% 100%);color:var(--panel)}.final-cta h2{max-width:920px;color:var(--panel)}.final-cta p{max-width:760px;color:oklch(.89 .025 195)}.final-cta .button--secondary{background:transparent;color:var(--panel);border-color:oklch(.78 .055 195)}.final-cta .button--secondary:focus-visible,.final-cta .button--secondary:hover{background:oklch(.995 0 0/.1);border-color:oklch(.9 .04 190)}.site-footer{min-height:180px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid var(--line);padding:40px 0}.footer-mark{color:var(--ink);font-weight:var(--weight-heavy)}.site-footer p{max-width:52ch;margin:10px 0 0}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:14px 20px;color:var(--muted);font-weight:var(--weight-bold)}.footer-links a:first-child{color:var(--teal-dark)}.page-hero{padding:var(--section-standard) 0 var(--section-tight)}.page-hero h1{max-width:920px;overflow-wrap:anywhere}.page-hero p{max-width:760px;color:var(--ink-2);font-size:var(--text-body-large)}.filter-bar{gap:10px;flex-wrap:wrap;margin-bottom:30px}.work-index{align-items:stretch}.case-detail{padding:var(--section-tight) 0 var(--section-standard)}.back-link{margin-bottom:34px}.case-detail__hero{max-width:980px;margin-bottom:clamp(34px,7vw,76px)}.case-detail__hero h1{margin:24px 0}.case-detail__hero p{max-width:760px;color:var(--ink-2);font-size:var(--text-body-large)}.case-columns,.case-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-md);gap:var(--space-md)}.detail-panel h2{margin-bottom:14px;font-size:var(--text-subhead);line-height:var(--leading-title)}.detail-panel p{margin-bottom:0}.detail-panel p+p{margin-top:18px}.detail-panel strong{display:block;color:var(--ink)}.detail-panel span{display:block;margin-top:6px;color:var(--muted);line-height:1.55}.detail-panel--list li{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;color:var(--ink-2);line-height:1.55}.detail-panel--list li+li{margin-top:12px}.detail-panel--list svg{margin-top:4px;color:var(--teal-dark)}.case-system-diagram{margin:clamp(28px,6vw,60px) 0;padding:clamp(20px,4vw,34px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,oklch(.985 .008 190),oklch(.94 .022 205)),var(--panel)}.case-system-diagram__header{display:grid;grid-template-columns:minmax(0,.58fr) minmax(240px,.42fr);grid-gap:clamp(18px,4vw,48px);gap:clamp(18px,4vw,48px);align-items:end;margin-bottom:clamp(18px,3vw,28px)}.case-system-diagram__header h2{margin:0;font-size:clamp(1.5rem,2.4vw,2.35rem)}.case-system-diagram__track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);grid-gap:var(--space-xs);gap:var(--space-xs)}.case-system-diagram__track:before{content:"";position:absolute;left:5%;right:5%;top:32px;height:2px;background:linear-gradient(90deg,var(--teal),var(--info),var(--oxide),var(--signal),var(--violet));opacity:.52}.case-system-node{position:relative;min-width:0;min-height:210px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--teal-wash);color:var(--ink);padding:var(--space-md)}.case-system-node svg{width:36px;height:36px;margin-bottom:var(--space-xs);padding:8px;border:1px solid oklch(.78 .07 196);border-radius:999px;background:var(--panel);color:var(--teal-dark)}.case-system-node strong{color:var(--ink);font-size:var(--text-meta);font-weight:var(--weight-heavy)}.case-system-node p{display:-webkit-box;margin:0;overflow:hidden;color:var(--ink-2);font-size:var(--text-meta);line-height:1.48;-webkit-box-orient:vertical;-webkit-line-clamp:5}.case-system-node:nth-child(2){background:var(--info-wash)}.case-system-node:nth-child(2) svg{color:var(--info-dark)}.case-system-node:nth-child(3){background:var(--oxide-wash)}.case-system-node:nth-child(3) svg{color:var(--oxide-dark)}.case-system-node:nth-child(4){background:var(--signal-wash)}.case-system-node:nth-child(4) svg{color:var(--signal-dark)}.case-system-node:nth-child(5){background:var(--violet-wash)}.case-system-node:nth-child(5) svg{color:var(--violet)}.confidentiality-note{margin-top:14px;padding:20px;border:1px solid oklch(.75 .07 34);border-radius:var(--radius);background:oklch(.97 .025 34)}.confidentiality-note strong{color:var(--ink)}.confidentiality-note p{margin:8px 0 0}.status-legend{display:grid;grid-template-columns:minmax(260px,.36fr) 1fr;grid-gap:clamp(22px,4vw,48px);gap:clamp(22px,4vw,48px);margin-top:clamp(24px,5vw,52px);padding:clamp(20px,3vw,30px);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.status-legend h2{margin-bottom:10px;font-size:var(--text-subhead)}.status-legend dd,.status-legend p{margin:0}.status-legend dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-sm);gap:var(--space-sm);margin:0}.status-legend dl>div{min-width:0;padding:var(--space-sm);border:1px solid oklch(.86 .018 196);border-radius:var(--radius)}.status-legend dt{margin-bottom:8px}.status-legend dd{color:var(--muted);font-size:var(--text-meta);line-height:1.5}.artifact-gallery{margin:clamp(34px,7vw,72px) 0}.artifact-gallery__header{display:grid;grid-template-columns:minmax(0,.58fr) minmax(280px,.42fr);grid-gap:clamp(24px,5vw,68px);gap:clamp(24px,5vw,68px);align-items:end;margin-bottom:clamp(24px,4vw,40px)}.artifact-gallery__header h2{font-size:clamp(1.8rem,3vw,3rem)}.artifact-gallery__header p{margin-bottom:0;color:var(--ink-2)}.artifact-grid{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.artifact-card{display:grid;grid-template-columns:minmax(230px,.36fr) 1fr;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow:hidden}.artifact-preview{min-height:100%;display:grid;align-content:space-between;grid-gap:var(--space-xl);gap:var(--space-xl);padding:clamp(18px,3vw,28px);background:radial-gradient(circle at 78% 20%,oklch(.78 .09 190/.28),transparent 28%),linear-gradient(135deg,var(--ink),oklch(.26 .05 202));color:var(--panel)}.artifact-preview[data-kind=interactive]{background:radial-gradient(circle at 20% 22%,oklch(.72 .12 232/.34),transparent 30%),linear-gradient(135deg,oklch(.19 .04 218),oklch(.31 .07 202))}.artifact-preview__footer,.artifact-preview__top{display:flex;align-items:center;gap:8px}.artifact-preview__top span{font-size:var(--text-caption);font-weight:var(--weight-bold);text-transform:capitalize}.artifact-preview__canvas{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.artifact-preview__nodes{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.artifact-preview__nodes:before{content:"";position:absolute;inset:50% 10% auto;height:1px;background:linear-gradient(90deg,oklch(.86 .08 190/.45),oklch(.82 .12 190/.88))}.artifact-preview__nodes span{position:relative;z-index:1;min-height:42px;display:grid;place-items:center;border:1px solid oklch(.82 .065 190/.72);border-radius:7px;background:oklch(.98 .01 190/.12);color:oklch(.94 .018 205);font-size:.74rem;font-weight:var(--weight-bold);line-height:1.2;padding:7px;text-align:center}.artifact-preview__nodes span:nth-child(2),.artifact-preview__nodes span:nth-child(3){border-color:oklch(.88 .095 34/.68)}.artifact-preview__checks{display:grid;grid-gap:7px;gap:7px}.artifact-preview__checks span{display:grid;grid-template-columns:auto 1fr;grid-gap:7px;gap:7px;align-items:center;color:oklch(.9 .026 205);font-size:.74rem;font-weight:var(--weight-medium);line-height:1.25}.artifact-preview__checks svg{color:oklch(.82 .12 190)}.artifact-preview__footer{color:oklch(.9 .03 205)}.artifact-card__body{min-width:0;padding:clamp(20px,3vw,32px)}.artifact-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.artifact-card__meta>span:first-child{color:var(--oxide-dark);font-size:var(--text-caption);font-weight:var(--weight-bold)}.artifact-card h3{font-size:clamp(1.45rem,2.4vw,2.2rem)}.artifact-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-sm);gap:var(--space-sm);margin:var(--space-lg) 0}.artifact-card dt{color:var(--ink);font-size:var(--text-caption);font-weight:var(--weight-bold)}.artifact-card dd{margin:6px 0 0;color:var(--ink-2);font-size:var(--text-meta);line-height:1.55}.artifact-card__confidentiality{padding-top:var(--space-md);border-top:1px solid var(--line);font-size:var(--text-meta)}.artifact-card__cta{display:inline-flex;align-items:center;gap:8px;color:var(--teal-dark);font-weight:var(--weight-bold)}.role-lane ul{margin:0;padding:0;list-style:none}.role-lane li{display:grid;grid-template-columns:auto 1fr;grid-gap:8px;gap:8px;color:var(--ink-2);font-size:var(--text-meta);line-height:1.48}.role-lane li+li{margin-top:10px}.how-work-grid svg,.role-lane svg{color:var(--teal-dark);margin-top:3px}.role-lane{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);grid-gap:var(--space-md);gap:var(--space-md)}.role-lane__fit,.role-lane__proof{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:clamp(20px,3vw,32px)}.role-lane h2{margin-bottom:var(--space-lg);font-size:var(--text-subhead)}.role-proof-list{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.role-proof-list a{display:grid;grid-gap:8px;gap:8px;padding:var(--space-md);border:1px solid var(--line);border-radius:var(--radius);transition:transform .16s var(--ease-out-quart),border-color .18s ease,background .18s ease}.role-proof-list a:hover{transform:translateY(-2px);border-color:var(--teal);background:var(--teal-wash)}.role-proof-list span{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:var(--weight-bold)}.role-proof-list p{margin:0;font-size:var(--text-meta)}.how-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-md);gap:var(--space-md)}.how-work-grid .detail-panel svg{margin-bottom:var(--space-md)}.resume-role h2{margin-bottom:8px;font-size:clamp(1.375rem,2.1vw,1.875rem);line-height:var(--leading-title)}.resume-summary{color:var(--ink-2);font-size:var(--text-body-large)}.resume-role .tag-row{margin:20px 0 22px}.resume-bottom{align-items:stretch}.about-page,.contact-page{padding:var(--section-standard) 0}.philosophy-grid .detail-panel p{color:var(--ink-2);font-weight:var(--weight-bold)}.philosophy-grid .detail-panel:first-child{background:var(--teal-wash);border-color:var(--teal-soft)}.philosophy-grid .detail-panel:nth-child(2){background:var(--oxide-wash);border-color:oklch(.75 .08 34)}.philosophy-grid .detail-panel:nth-child(3){background:var(--info-wash);border-color:oklch(.75 .07 232)}.philosophy-grid .detail-panel:nth-child(4){background:var(--signal-wash);border-color:oklch(.72 .1 145)}.contact-list{display:grid;grid-gap:12px;gap:12px;margin-top:30px}.contact-list a{display:inline-flex;align-items:center;gap:8px;color:var(--teal-dark);font-weight:var(--weight-bold);overflow-wrap:anywhere}.contact-list__primary{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-md);gap:var(--space-md);align-items:center;padding:var(--space-md);border:1px solid var(--teal-soft);border-radius:var(--radius);background:var(--teal-wash)}.contact-list__primary a{overflow-wrap:anywhere}.contact-list__primary span{display:block;color:var(--muted);font-size:var(--text-caption);font-weight:var(--weight-medium)}.copy-email-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);cursor:pointer;font-size:var(--text-meta);font-weight:var(--weight-bold);padding:0 13px;transition:transform .16s var(--ease-out-quart),border-color .18s ease,background .18s ease,color .18s ease}.copy-email-button:hover{transform:translateY(-1px);border-color:var(--teal);background:var(--panel)}.copy-email-button:active{transform:translateY(1px) scale(.985)}.copy-email-button[data-copied=true]{border-color:var(--signal);background:var(--signal-wash);color:var(--signal-dark)}.contact-form{padding:clamp(22px,4vw,34px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel),var(--teal-wash));transition:border-color .18s ease,background .22s ease}.contact-form[data-state=error]{border-color:oklch(.64 .16 29);animation:form-nudge .22s var(--ease-out-quart)}.contact-form[data-state=success]{border-color:var(--signal)}.field-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.contact-form label{display:grid;grid-gap:8px;gap:8px;margin-bottom:16px;color:var(--ink);font-weight:var(--weight-bold)}.field-hint{color:var(--muted);font-size:var(--text-caption);font-weight:var(--weight-regular);line-height:1.5}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);padding:12px 13px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.contact-form button:disabled{cursor:wait;opacity:.76}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--teal);background:var(--panel);box-shadow:0 0 0 4px oklch(.86 .072 190/.45)}.contact-form input[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:oklch(.64 .16 29);background:oklch(.98 .01 29)}.contact-form textarea{resize:vertical}.contact-form ::placeholder{color:oklch(.44 .025 218)}.hidden-field{position:absolute;left:-9999px}.form-message{margin:14px 0 0;font-size:var(--text-meta);transition:color .18s ease,transform .18s var(--ease-out-quart)}.form-message--error{color:oklch(.47 .16 29);transform:translateX(2px)}.form-message--success{color:oklch(.38 .11 142);transform:translateY(-1px)}@keyframes reveal-in{0%{opacity:0;filter:blur(8px);transform:translateY(var(--reveal-y)) scale(var(--reveal-scale))}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}@keyframes lens-field{0%{filter:saturate(.94)}to{filter:saturate(1.08)}}@keyframes lens-scan{0%{transform:translate(-50%,-50%) translate3d(-4%,-3%,0)}50%{transform:translate(-50%,-50%) translate3d(5%,3%,0)}to{transform:translate(-50%,-50%) translate3d(2%,5%,0)}}@keyframes frame-confirm{0%{opacity:0;transform:scaleX(0)}45%{opacity:1}to{opacity:.72;transform:scaleX(1)}}@keyframes form-nudge{0%,to{transform:translateX(0)}35%{transform:translateX(-4px)}70%{transform:translateX(3px)}}@keyframes signal-pass{0%{opacity:0;transform:translate(-120%,-50%)}30%{opacity:1}to{opacity:0;transform:translate(420%,-50%)}}@keyframes proof-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:980px){.desktop-nav,.nav-actions .icon-link{display:none}.menu-button{display:inline-flex}.mobile-nav{display:grid;grid-template-rows:0fr;width:min(100% - calc(var(--gutter) * 2),var(--max));margin:0 auto;opacity:0;transform:translateY(-6px);transition:grid-template-rows .26s var(--ease),opacity .18s ease,transform .26s var(--ease)}.mobile-nav[data-open=true]{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.mobile-nav__inner{min-height:0;overflow:hidden;padding-bottom:18px}.mobile-nav a{min-height:46px;display:flex;align-items:center;border-top:1px solid var(--line);color:var(--ink-2);font-weight:var(--weight-bold)}.about-band,.about-page,.artifact-card,.artifact-gallery__header,.capability-grid,.case-columns,.case-detail__grid,.case-system-diagram__header,.contact-page,.featured-grid,.hero-grid,.proof-shelf__intro,.role-lane,.section-header--split,.status-legend,.tech-grid{grid-template-columns:1fr}.proof-shelf__grid{grid-template-columns:repeat(6,minmax(0,1fr))}.proof-card{grid-column:span 3}.proof-card:last-child{grid-column:span 6}.hero-copy{max-width:none;padding-bottom:0}.hero-media{width:min(100%,560px);margin-inline:auto}.portrait-frame,.systems-lens{min-height:clamp(400px,72vw,520px)}.proof-panel{width:100%;margin-top:14px}.proof-panel,.systems-lens__proof{position:relative;right:auto;bottom:auto}.systems-lens__proof{opacity:1;transform:none;pointer-events:auto}.capability-panel:first-child,.capability-panel:nth-child(2),.capability-panel:nth-child(3),.featured-grid>:first-child,.featured-grid>:nth-child(2),.featured-grid>:nth-child(n+3){grid-column:auto}.capability-panel:nth-child(3){display:block}.capability-panel:nth-child(3) ul{margin-top:20px}.tech-panel:nth-child(2){margin-top:0}.portrait-frame{min-height:400px}.credibility-strip{grid-template-columns:repeat(2,1fr)}.metric-card{min-height:auto;padding-block:clamp(22px,4vw,34px)}.metric-card:nth-child(2n){border-right:0}.metric-card span{max-width:none}.resume-role,.timeline-item,.work-row{grid-template-columns:1fr;gap:12px}.how-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.status-legend dl{grid-template-columns:repeat(3,minmax(0,1fr))}.case-system-diagram__track{grid-template-columns:repeat(2,minmax(0,1fr))}.case-system-diagram__track:before{display:none}}@media (max-width:640px){:root{--gutter:18px;--text-display:clamp(2.7rem,13vw,3.75rem);--text-section:clamp(1.85rem,9vw,2.9rem)}.nav-shell{min-height:64px}.hero-section{padding-top:28px}.portrait-frame,.systems-lens{min-height:320px}.systems-lens__scan{width:58%}.button-row{flex-direction:column;align-items:stretch}.button-row .button{width:100%}.artifact-card dl,.case-system-diagram__track,.credibility-strip,.field-pair,.how-work-grid,.proof-shelf__grid,.status-legend dl{grid-template-columns:1fr}.proof-card,.proof-card:last-child{grid-column:auto;min-height:240px}.metric-card,.metric-card:nth-child(2n){border-right:0;border-bottom:1px solid var(--line)}.metric-card:last-child{border-bottom:0}.metric-card strong{font-size:clamp(2.2rem,16vw,3.25rem)}.metric-card p{max-width:46ch}.case-system-node{min-height:auto}.case-system-node p{-webkit-line-clamp:none}.case-card__proof{align-items:flex-start;flex-direction:column}.identity-map{min-height:auto;grid-template-columns:1fr}.identity-map__connector{min-height:72px}.identity-map__connector:after,.identity-map__connector:before{left:50%;right:auto;width:2px;height:46%;transform:translateX(-50%)}.identity-map__connector:before{bottom:50%;top:auto}.identity-map__connector:after{top:50%}.contact-list__primary{grid-template-columns:1fr;align-items:start}.copy-email-button{width:max-content}.site-footer{display:grid}.footer-links{justify-content:flex-start}}@media (hover:none){.button,.filter-bar a,.icon-link,.menu-button{min-height:44px}.case-card__command{position:relative;right:auto;bottom:auto;left:auto;margin:var(--space-lg) 0;opacity:1;pointer-events:auto;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.case-card__command,.systems-lens__proof{opacity:1!important;transform:none!important}}