@font-face{font-family:Manrope;src:url('assets/fonts/manrope-extrabold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#0b0d0f;--surface:#141719;--accent:#c6e84b;--text:#f7f8f5;--muted:#a9afa7;--line:#30352f;--paper:#f4f5f1;--ink:#171b15;--paper-muted:#586051;--heading:Manrope,Arial,sans-serif;--body:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.75 var(--body);-webkit-font-smoothing:antialiased}body,button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0;background:none}img,video{max-width:100%;display:block}p,h1,h2,h3,dl,dd{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:800;line-height:1.12}h2{font-size:clamp(2rem,4.1vw,3rem);letter-spacing:-.035em}h3{font-size:1.125rem;letter-spacing:-.025em}p{color:var(--muted)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--bg)}[hidden]{display:none!important}.wrap{width:min(1080px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);line-height:1.7}.section-space{padding-block:88px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}.section-heading h2{margin-top:8px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 28px;font-size:.875rem;font-weight:600;line-height:1.5;border:1px solid transparent;transition:color .2s,background-color .2s,border-color .2s}.button-primary{background:var(--accent);color:var(--bg)}.button-primary:hover{background:#d6ef7c}.button-linkedin{gap:8px}.button-linkedin img{width:18px;height:18px;flex:none;filter:brightness(0)}.button-outline{border-color:#697063;color:var(--text)}.button-outline:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.quiet-link{font-size:.875rem;line-height:1.6;border-bottom:1px solid var(--line);padding-bottom:5px;white-space:nowrap}.quiet-link:hover{color:var(--accent);border-color:var(--accent)}.skip-link{position:fixed;top:8px;left:12px;z-index:100;background:var(--accent);color:var(--bg);padding:12px 20px;transform:translateY(-150%)}.skip-link:focus{transform:none}
/* The header is a wordmark and a row of anchors. */
.site-header{position:sticky;top:0;background:var(--bg);z-index:20;border-bottom:1px solid var(--line)}.header-inner{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:flex;align-items:baseline;gap:17px;font-size:1rem;font-weight:600;letter-spacing:.015em;white-space:nowrap}.brand span{color:var(--accent);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500}.site-header nav{display:flex;gap:30px}.site-header nav a{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:500;letter-spacing:.11em;line-height:1.5;padding-block:28px;position:relative}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--text)}.site-header nav a[aria-current]:after{content:'';position:absolute;height:2px;left:0;right:0;bottom:18px;background:var(--accent)}.menu-toggle{padding:12px 0 12px 12px;font-size:.875rem;line-height:1.5}
/* Name and actions on the left, portrait on the right. */
.hero{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(620px,82vh,880px);padding:36px 0 0}.hero-copy{position:relative;z-index:2;padding-block:24px 48px}.hero-portrait{position:absolute;z-index:1;right:clamp(0px,1.5vw,28px);bottom:0;width:auto;height:auto;max-width:min(48vw,820px);max-height:min(90vh,900px);object-fit:contain;object-position:right bottom;pointer-events:none;user-select:none}.hero-eyebrow{margin-bottom:22px;font-size:.75rem;letter-spacing:.12em}.hero h1{font-size:clamp(3.6rem,6.2vw,6.75rem);line-height:.94;letter-spacing:-.065em;text-transform:uppercase;max-width:6.8em}.hero-role{font-size:1.2rem;text-transform:uppercase;letter-spacing:.08em;margin-top:22px;color:var(--muted);line-height:1.5}.hero-intro{font-size:1.125rem;line-height:1.65;max-width:520px;margin-top:26px;color:#c3c8be}.hero-platforms{display:flex;align-items:center;gap:26px;list-style:none;margin:28px 0 0;padding:0}.hero-platforms li{display:flex;align-items:center;height:38px}.hero-platforms img{height:38px;width:auto;max-width:none;flex:none;opacity:.4;transform:scale(1);transform-origin:center;transition:opacity .2s,transform .2s}.hero-platforms li:hover img,.hero-platforms li:focus-within img{opacity:1;transform:scale(1.12)}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}.hero-actions .button{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}
.light-section{background:var(--paper);color:var(--ink);color-scheme:light}.light-section p{color:var(--paper-muted)}.light-section .eyebrow{color:#5d7413}.light-section a:focus-visible,.light-section button:focus-visible{outline-color:#526a0a}.light-section .quiet-link{border-color:#cbd0c4}.light-section .quiet-link:hover{color:#4c6304;border-color:#4c6304}.about{padding-block:80px}.about-grid{display:grid;grid-template-columns:220px 1fr;gap:60px}.profile-proof dl{display:flex;flex-direction:column;gap:34px;margin-top:24px}.profile-proof dt{font:800 2.9rem/1.1 var(--heading);letter-spacing:-.06em}.profile-proof dd{color:var(--paper-muted);font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;margin-top:8px}.about-copy h2{margin-bottom:24px}.about-copy>p{font-size:1.0625rem;line-height:1.8;margin-top:18px;max-width:740px}.disciplines{display:flex;flex-wrap:wrap;gap:9px 24px;margin-top:32px;padding-top:22px;border-top:1px solid #cbd0c4;color:var(--ink);font-size:.875rem;font-weight:500}
.capabilities{background:#fff}.capabilities h2{text-transform:uppercase;letter-spacing:-.045em}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.capability-card{background:#f3f1ec;padding:28px 24px 32px}.capability-card h3{font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.45}.capability-card h3 span{margin-right:.35em;letter-spacing:.14em;color:#5c6358}.capability-card p{margin-top:14px;font-size:.9375rem;line-height:1.65}
/* Edge-to-edge artwork tiles. Title, details, and actions appear on hover. */
.filters{display:flex;gap:20px;flex-wrap:wrap}.filters button{color:var(--muted);padding:10px 0;border-bottom:2px solid transparent;font-size:.875rem;line-height:1.5}.filters button:hover{color:var(--text)}.filters button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}#portfolio>.wrap{width:calc(100% - 6px);max-width:none}#portfolio .section-heading,#portfolio .portfolio-bottom{width:min(1080px,100%);margin-inline:auto}.project-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:3px}.project{min-width:0;position:relative;overflow:hidden}.project-image{position:relative;background:#080a08;overflow:hidden;aspect-ratio:1}.project-open{display:block;width:100%;height:100%;position:relative;overflow:hidden}.project-open>img{height:100%;width:100%;object-fit:cover;transition:transform 420ms cubic-bezier(.2,.65,.3,1);transform:scale(1)}.project-open:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgb(0 0 0 / .9) 0%,rgb(0 0 0 / .55) 42%,rgb(0 0 0 / .18) 100%);opacity:0;transition:opacity .25s;pointer-events:none}.view-project{position:absolute;left:10px;bottom:10px;z-index:3;background:var(--accent);color:var(--bg);font-size:.75rem;font-weight:600;line-height:1.4;padding:7px 11px;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}.project-stores{position:absolute;right:8px;top:8px;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 16px);z-index:4;opacity:0;transform:translateY(-6px);transition:opacity .25s,transform .25s;pointer-events:none}.store-link{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;background:rgb(11 13 15 / .94);border:1px solid rgb(255 255 255 / .3);color:#fff;font-size:.75rem;font-weight:500;line-height:1.4}.store-link:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.project:focus-within .project-open>img{transform:scale(1.065)}.project:focus-within .project-open:after{opacity:1}.project:focus-within .view-project,.project:focus-within .project-stores{opacity:1;transform:none;pointer-events:auto}.project:focus-within .project-caption{opacity:1;transform:none}.project-open:focus-visible{outline-offset:-5px;outline-width:3px;z-index:4}.project-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 12px 46px;min-height:0;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s;pointer-events:none}.project-caption h3{font-size:.8125rem;line-height:1.25;letter-spacing:-.02em;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-caption h3 a{pointer-events:auto}.project-caption h3 a:hover{color:var(--accent)}.project-caption p{font-size:.6875rem;line-height:1.35;margin-top:4px;color:#d7dccf;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.portfolio-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}.portfolio-bottom p{font-size:.875rem}.portfolio-bottom .button{min-width:200px}
@media(hover:hover) and (pointer:fine){.project:hover .project-open>img{transform:scale(1.065)}.project:hover .project-open:after{opacity:1}.project:hover .view-project,.project:hover .project-stores{opacity:1;transform:none;pointer-events:auto}.project:hover .project-caption{opacity:1;transform:none}}
@media(hover:none),(pointer:coarse){.view-project{padding:8px 10px;left:8px;bottom:8px}.project-stores{top:8px;right:8px;max-width:calc(100% - 16px)}.project-caption{padding:24px 10px 44px}}
/* Editorial rows replace empty article cards. */
.articles{background:var(--surface);border-block:1px solid var(--line)}#articles>.wrap{width:calc(100% - 6px);max-width:none}#articles .section-heading{width:min(1080px,100%);margin-inline:auto;align-items:center}#articles .section-heading .button{flex:none}.article-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}.article-tile{position:relative;display:block;grid-column:span 3;aspect-ratio:1;overflow:hidden;background:#080a08}.article-tile:nth-child(-n+3){grid-column:span 4}.article-tile img{width:100%;height:100%;object-fit:cover;object-position:center top}.article-tile:after{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(to top,rgb(0 0 0 / .88) 0%,rgb(0 0 0 / .35) 46%,rgb(0 0 0 / .05) 100%);opacity:0;transition:opacity .25s}.article-badge{position:absolute;z-index:3;top:10px;left:10px;display:grid;place-items:center;width:34px;height:34px;background:var(--accent);color:#0b0d0f;pointer-events:none}.article-badge svg{width:18px;height:18px;display:block}.article-tile-copy{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:4px;padding:16px 14px 18px;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}.article-tile-copy span{font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:#d7dccf}.article-tile-copy strong{font-family:var(--heading);font-size:.95rem;line-height:1.25;letter-spacing:-.02em;color:#fff}.article-tile-copy em{font-style:normal;align-self:flex-start;margin-top:8px;background:var(--accent);color:#0b0d0f;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px}.article-tile:hover:after,.article-tile:focus-visible:after,.article-tile:hover .article-tile-copy,.article-tile:focus-visible .article-tile-copy{opacity:1;transform:none}.article-tile:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}
/* A readable career list with no decorative timeline or logo cards. */
.career-row{display:grid;grid-template-columns:220px 1fr;gap:60px;padding-block:36px;border-top:1px solid #cbd0c4}.career-row:last-child{border-bottom:1px solid #cbd0c4}.career-date{font-size:.8125rem;line-height:1.6;margin-bottom:12px}.career-meta h3{font-size:1.05rem;line-height:1.5;text-transform:uppercase;letter-spacing:.015em}.career-body h3{font-size:1.3rem;line-height:1.5;letter-spacing:-.03em}.career-body>p:not(.career-results){font-size:1rem;margin-top:10px}.career-body ul{color:var(--paper-muted);font-size:.9375rem;padding-left:19px;margin:14px 0 0;line-height:1.8}.career-body li{margin-top:4px}.career-body .career-results{font-size:.875rem;font-weight:500;color:#486006;margin-top:19px}
.contact-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.contact h2{font-size:clamp(2.6rem,5.2vw,4.5rem);letter-spacing:-.045em;line-height:1.05;margin-top:14px;text-transform:uppercase}.contact-description{font-size:1.0625rem;line-height:1.7;margin-top:22px;max-width:640px}.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px}.contact-actions .button{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;min-width:168px}.site-footer{border-top:1px solid var(--line);padding-block:25px}.site-footer .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;color:var(--muted);font-size:.75rem;letter-spacing:.02em}.site-footer a:hover{color:var(--accent)}
/* Native dialog: contained focus, full artwork and controlled playback. */
.project-dialog{position:fixed;width:min(1140px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid #3b4430;background:var(--surface);color:var(--text);overflow:auto;overscroll-behavior:contain}.project-dialog::backdrop{background:rgb(0 0 0 / .88)}.project-dialog[open]{animation:dialog-enter .16s ease-out}.dialog-bar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);background:var(--surface);padding:13px 24px}.dialog-bar p{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.dialog-close{display:flex;gap:16px;align-items:center;padding:9px 0 9px 14px;min-height:44px;font-size:.875rem;line-height:1.5}.dialog-close span{font-size:1.9rem;line-height:.8;color:var(--accent)}.dialog-close:hover{color:var(--accent)}.dialog-body{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:34px;padding:28px}.dialog-gallery{min-width:0}.main-media{background:#070908;display:grid;place-items:center;min-height:320px;height:min(60dvh,560px);width:100%;overflow:hidden}.main-media>img,.main-media>video{width:100%;height:100%;max-height:min(60dvh,560px);object-fit:contain}.main-media>p{padding:24px;text-align:center}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;min-height:44px}.gallery-controls p{font-size:.8125rem}.gallery-step{font-size:.875rem;padding:8px 0;min-height:44px;color:var(--accent)}.gallery-step:disabled{opacity:.35;cursor:default}.media-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:10px 3px;margin-top:6px}.media-thumb{flex:0 0 66px;position:relative;width:66px;height:66px;padding:0;border:2px solid transparent;background:var(--bg);overflow:hidden}.media-thumb>img{width:100%;height:100%;object-fit:cover}.media-thumb[aria-pressed=true]{border-color:var(--accent)}.media-thumb span{position:absolute;bottom:0;left:0;right:0;padding:2px;color:#fff;background:rgb(0 0 0 / .8);font-size:.75rem;line-height:1.2}.full-media-link{display:inline-block;margin-top:9px;font-size:.8125rem;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.full-media-link:hover{color:var(--accent)}.dialog-info{padding:8px 2px 14px;min-width:0}.dialog-info h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-top:16px;overflow-wrap:anywhere;line-height:1.15}.dialog-role{font-size:.875rem;color:var(--text);margin-top:19px}.dialog-summary{font-size:1rem;margin-top:22px;line-height:1.8}.dialog-metrics{display:flex;flex-wrap:wrap;gap:20px 28px;margin-top:26px;padding-top:23px;border-top:1px solid var(--line)}.dialog-metrics:empty{display:none}.dialog-metrics dt{font:800 1.8rem/1.2 var(--heading);color:var(--accent);letter-spacing:-.035em}.dialog-metrics dd{font-size:.75rem;color:var(--muted);margin-top:7px;line-height:1.5}.dialog-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.dialog-links:empty{display:none}.dialog-links a{padding:10px 14px;border:1px solid #647445;color:var(--text);font-size:.875rem;line-height:1.5;min-height:44px}.dialog-links a:hover{color:var(--bg);background:var(--accent);border-color:var(--accent)}.dialog-credit{font-size:.8125rem;line-height:1.7;margin-top:25px;color:var(--muted)}.dialog-credit:empty{display:none}.dialog-guide{display:grid;gap:22px;margin:4px 28px 32px;padding-top:26px;border-top:1px solid var(--line)}.dialog-guide[hidden]{display:none}.dialog-guide h3{font-size:clamp(1.4rem,2vw,1.8rem);letter-spacing:-.03em}.guide-grid{display:grid;gap:26px}.guide-section h4{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.guide-section p{margin-top:8px;max-width:68rem;color:var(--muted);font-size:.9375rem;line-height:1.65}.guide-figures{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;margin-top:14px}.guide-figures.is-wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.guide-figure{display:block;padding:8px;border:1px solid var(--line);background:#080a08}.guide-figure img{width:100%;height:112px;object-fit:contain}.guide-figures.is-wide .guide-figure img{height:168px}.guide-figure:hover,.guide-figure:focus-visible{border-color:var(--accent)}@media(max-width:700px){.dialog-guide{margin-inline:18px}}
@keyframes dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.reveal-visible{animation:reveal .4s ease-out both}
@media(min-width:1100px){.site-header nav{gap:26px}}
@media(max-width:959px){.wrap{width:calc(100% - 64px)}.brand{gap:10px}.brand span{display:none}.site-header nav{gap:22px}.hero{padding-block:60px 70px}.hero h1{font-size:clamp(5rem,12vw,7.5rem)}.hero-role{font-size:1.2rem}.about-grid,.career-row{grid-template-columns:160px 1fr;gap:36px}.about{padding-block:64px}.section-space{padding-block:64px}.section-heading{gap:24px;align-items:flex-start;flex-direction:column}.filters{gap:23px}.article-row{grid-template-columns:145px 1fr;gap:20px 28px}.article-link{grid-column:2;justify-self:start;padding-block:0}.dialog-body{gap:22px;padding:22px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.dialog-info h2{font-size:2rem}.main-media{height:48dvh;min-height:280px}.main-media>img,.main-media>video{max-height:48dvh}}
@media(max-width:700px){html{scroll-padding-top:86px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:66px;gap:14px;flex-wrap:wrap}.brand{font-size:.9375rem}.site-header nav{flex-basis:100%;gap:12px 20px;flex-wrap:wrap;padding-block:0 16px}.site-header nav a{padding-block:7px;font-size:.75rem;letter-spacing:.06em}.site-header nav a[aria-current]:after{bottom:0}.site-header nav[data-mobile=true]{display:none}.site-header nav[data-mobile=true].is-open{display:flex}.menu-toggle:not([hidden]){display:block;margin-left:auto}.hero{padding-block:47px 56px}.hero-eyebrow{font-size:.75rem;letter-spacing:.07em;max-width:320px;margin-bottom:25px}.hero h1{font-size:clamp(3.8rem,17.8vw,6.5rem);line-height:1.03;letter-spacing:-.065em}.hero-role{font-size:1.05rem;letter-spacing:.06em;margin-top:22px}.hero-intro{font-size:1.08rem;line-height:1.7;margin-top:22px}.desktop-break{display:none}.hero-platforms{gap:16px;margin-top:22px;flex-wrap:wrap}.hero-platforms li,.hero-platforms img{height:30px}.hero-actions{gap:12px;margin-top:24px}.button{padding:13px 20px}.about{padding-block:48px}.about-grid{grid-template-columns:1fr;gap:36px}.profile-proof dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.profile-proof dt{font-size:2.1rem}.profile-proof dd{font-size:.75rem;letter-spacing:.02em;line-height:1.5}.about-copy h2{margin-bottom:20px}.about-copy>p{font-size:1rem;line-height:1.8;margin-top:17px}.disciplines{gap:9px 21px;padding-top:20px;margin-top:24px}.section-space{padding-block:50px}.section-heading{gap:22px;margin-bottom:28px}.section-heading h2{font-size:2rem}.filters{gap:23px}.filters button{padding-block:6px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.project-caption{padding:24px 10px 42px}.project-caption h3{font-size:.75rem}.project-caption p{font-size:.6875rem}.view-project{left:8px;bottom:8px;padding:6px 9px;font-size:.6875rem}.project-stores{right:6px;top:6px;gap:4px;max-width:calc(100% - 12px)}.store-link{font-size:.6875rem;padding:6px 8px;min-height:32px}.portfolio-bottom{margin-top:30px;align-items:flex-start;flex-direction:column;gap:20px}.portfolio-bottom .button{width:100%}.article-row{grid-template-columns:1fr;gap:12px;padding-block:25px}.article-topic{font-size:.75rem;padding:0}.article-link{grid-column:auto;margin-top:4px;font-size:.875rem}.article-text h3{font-size:1.25rem}.article-text p{font-size:.9375rem}.career-row{grid-template-columns:1fr;gap:19px;padding-block:28px}.career-date{margin-bottom:5px;font-size:.8125rem}.career-meta h3{font-size:.875rem}.career-body h3{font-size:1.25rem}.career-body>p:not(.career-results){font-size:.9375rem}.career-body ul{font-size:.9375rem}.contact h2{font-size:clamp(2.2rem,10vw,3.2rem);margin-top:12px}.contact-description{font-size:1rem;max-width:34rem;margin-top:18px}.contact-actions{flex-direction:column;align-items:stretch;margin-top:24px;width:100%}.contact-actions .button{flex:none;width:100%;min-width:0}.site-footer{padding-block:22px}.site-footer .wrap{font-size:.75rem;flex-direction:column;align-items:flex-start;gap:12px}.project-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-color:#3b4430}.dialog-bar{padding:10px 18px}.dialog-body{display:flex;flex-direction:column;gap:25px;padding:18px}.dialog-gallery{order:2}.dialog-info{order:1;padding:0}.dialog-info h2{font-size:2rem;margin-top:10px}.dialog-role{margin-top:14px}.dialog-summary{margin-top:16px;font-size:.9375rem}.dialog-metrics{margin-top:20px;padding-top:17px}.dialog-metrics dt{font-size:1.5rem}.dialog-links{margin-top:20px;gap:8px}.dialog-links a{padding:10px 12px}.dialog-credit{font-size:.75rem;margin-top:17px}.main-media{height:50dvh;min-height:280px}.main-media>img,.main-media>video{max-height:50dvh}.media-thumb{width:60px;height:60px;flex-basis:60px}.gallery-controls{margin-top:8px}.gallery-step{font-size:.875rem}}
@media(max-width:360px){.hero h1{font-size:17.2vw}.hero-actions{flex-direction:column;align-items:flex-start}.profile-proof dl{gap:12px}.profile-proof dt{font-size:1.8rem}.filters{gap:20px}.filters button{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.project-open>img{transform:none!important}.view-project,.project-stores,.project-caption{transform:none!important}}
/* Let text reflow when visitors enlarge their browser's font size. */
h1,h2,h3{overflow-wrap:anywhere}.header-inner,.site-header nav,.gallery-controls{flex-wrap:wrap}.quiet-link{white-space:normal}
@media(max-width:700px){.brand{max-width:calc(100% - 65px);white-space:normal}.profile-proof dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,5rem),1fr))}}
@media(max-width:1499px){.project-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1199px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}}
@media(max-width:1099px){.hero{min-height:0;display:block;padding:48px 0 0}.hero-copy{padding-bottom:8px}.hero h1{font-size:clamp(3.5rem,9vw,5.6rem);max-width:8em}.hero-portrait{position:relative;right:auto;bottom:auto;display:block;height:auto;width:min(640px,92%);max-width:92%;margin:8px 0 0 0}}
@media(max-width:700px){.hero{padding:32px 0 0}.hero-copy{width:calc(100% - 40px)}.hero h1{font-size:clamp(3.15rem,15vw,4.5rem)}.hero-portrait{width:min(460px,100%);max-width:100%}}
@media(max-width:959px){.capability-grid{grid-template-columns:1fr 1fr}.article-tile,.article-tile:nth-child(-n+3){grid-column:span 6}}
@media(hover:none),(pointer:coarse){.article-tile:after,.article-tile-copy{opacity:1;transform:none}.article-tile-copy{padding:12px 10px 14px}.article-tile-copy strong{font-size:.8125rem}}
@media(max-width:700px){.capability-grid{grid-template-columns:1fr}.capability-card{padding:22px 18px 26px}}
.wanderer{position:fixed;z-index:25;left:0;top:0;width:78px;margin:0;padding:0;border:0;background:none;line-height:0;cursor:pointer;touch-action:manipulation}.wanderer-glow{position:absolute;z-index:0;left:50%;top:48%;width:72px;height:72px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgb(198 232 75 / .4) 0%,rgb(198 232 75 / .14) 36%,transparent 68%)}.wanderer-bubble-wrap{position:absolute;z-index:2;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);overflow:visible;pointer-events:none}.wanderer[data-edge=left] .wanderer-bubble-wrap{left:0;transform:none}.wanderer[data-edge=right] .wanderer-bubble-wrap{left:auto;right:0;transform:none}.wanderer-bubble-shell{position:absolute;z-index:0;inset:0;border-radius:14px;background:#10120e;pointer-events:none;filter:drop-shadow(1px 0 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(-1px 0 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 1px 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 -1px 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 0 8px rgba(198,232,75,var(--glow-near,.12))) drop-shadow(0 0 24px rgba(198,232,75,var(--glow-far,.08)))}.wanderer.is-info .wanderer-bubble-shell,.wanderer.is-break .wanderer-bubble-shell{filter:drop-shadow(1px 0 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(-1px 0 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 1px 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 -1px 0 rgba(198,232,75,var(--outline,.45))) drop-shadow(0 0 8px rgba(198,232,75,var(--info-glow-near,.08))) drop-shadow(0 0 28px rgba(198,232,75,var(--info-glow-far,.05)))}.wanderer-bubble-shell:after{content:'';position:absolute;left:calc(50% - 6px);bottom:-6px;width:12px;height:12px;background:#10120e;transform:rotate(45deg)}.wanderer[data-edge=left] .wanderer-bubble-shell:after{left:22px}.wanderer[data-edge=right] .wanderer-bubble-shell:after{left:auto;right:16px}.wanderer-bubble{position:relative;z-index:1;display:block;width:max-content;max-width:11.5rem;margin:0;padding:8px 12px 11px;border-radius:14px;background:transparent;color:#f4f6ef;font-size:.72rem;font-weight:700;letter-spacing:.02em;line-height:1.35;text-align:center;pointer-events:auto}.wanderer-sparkles{position:absolute;z-index:3;inset:-10px -6px 8px;pointer-events:none}.spark{position:absolute;opacity:.22;pointer-events:none}.spark-dot{width:3px;height:3px;border-radius:50%}.spark-star{width:7px;height:7px;clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%)}.spark-lime{background:#c6e84b}.spark-warm{background:#f6f1df}.spark:nth-child(1){top:0;left:6%;animation:spark-fade var(--spark-ms,4.2s) ease-in-out infinite}.spark:nth-child(2){top:22%;right:0;animation:spark-fade 4.8s ease-in-out infinite;animation-delay:-1.6s}.spark:nth-child(3){top:-2px;right:24%;width:2px;height:2px;animation:spark-fade 3.4s ease-in-out infinite;animation-delay:-2.5s}.spark:nth-child(4){top:48%;left:0;animation:spark-fade 5s ease-in-out infinite;animation-delay:-3.3s}.spark:nth-child(5){top:6%;left:48%;width:5px;height:5px;animation:spark-fade 4.5s ease-in-out infinite;animation-delay:-.8s}@keyframes spark-fade{0%,100%{opacity:.1}45%{opacity:.48}72%{opacity:.16}}.wanderer-body{position:relative;z-index:1;display:block;transform:rotate(var(--tilt,0deg)) translateY(calc(var(--bob,0px) + var(--hop,0px)));transform-origin:50% 92%}.wanderer.is-falling{pointer-events:none}.pupil{transform:translate(var(--px,0px),var(--py,0px))}.lid{transform-box:fill-box;transform-origin:center top;transform:scaleY(var(--lid,0))}.mouth{display:none}.wanderer[data-mood=smug] .mouth-smile,.wanderer[data-mood=curious] .mouth-smile,.wanderer[data-mood=proud] .mouth-smile{display:block}.wanderer[data-mood=startled] .mouth-o{display:block}.wanderer[data-mood=tired] .mouth-flat,.wanderer[data-mood=grumble] .mouth-flat{display:block}.arm,.leg{transform-box:fill-box;transform-origin:center top}.leg-l,.leg-r{transform-box:fill-box;transform-origin:50% 0%}.wanderer.is-walk{--step:650ms}.wanderer.is-run{--step:380ms}.wanderer.is-walk .leg-l,.wanderer.is-run .leg-l,.wanderer.is-walk .leg-r,.wanderer.is-run .leg-r{animation:cube-step var(--step,650ms) ease-in-out infinite}.wanderer.is-walk .leg-r,.wanderer.is-run .leg-r{animation-delay:calc(var(--step,650ms) / -2)}.wanderer.is-sit .leg-l,.wanderer.is-sit .leg-r{animation:none}.wanderer.is-point .arm-r{transform:rotate(-48deg)}.wanderer.is-push .arm-l{transform:rotate(36deg)}.wanderer.is-push .arm-r{transform:rotate(-36deg)}.wanderer.is-wave .arm-r{animation:cube-wave .42s ease-in-out 2}@keyframes cube-step{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@keyframes cube-wave{from{transform:rotate(0)}50%{transform:rotate(-68deg)}to{transform:rotate(0)}}.wanderer.is-break .wanderer-bubble{width:11.5rem;min-height:2.9em;box-sizing:border-box}.wanderer.is-sit .leg-l{transform:rotate(22deg) translateY(6px)}.wanderer.is-sit .leg-r{transform:rotate(-22deg) translateY(6px)}.wanderer.is-rest .cube-shadow{opacity:0}.wanderer.is-rest .wanderer-body{transform-origin:50% 46%;animation:cube-breathe 1.8s ease-in-out infinite}@keyframes cube-breathe{0%,100%{transform:rotate(var(--tilt,0deg)) translateY(calc(var(--bob,0px) + var(--hop,0px))) scale(1)}50%{transform:rotate(var(--tilt,0deg)) translateY(calc(var(--bob,0px) + var(--hop,0px))) scale(1.018,.975)}}
