:root{--bg:#f7f7f2;--ink:#242721;--muted:#666b62;--line:#dcded3;--plum:#492d46;--lime:#d6ec91;--mint:#e5ebe1;--peach:#edcfb7;--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #805a8c;outline-offset:5px}img{max-width:100%;display:block}button{color:inherit}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--lime);padding:12px}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:30;min-height:100px;display:flex;align-items:center;justify-content:space-between;padding:20px 4.5%;background:#f7f7f2f2;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:14px;font-size:15px;font-weight:650;line-height:1.3}.identity-sub{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}.monogram{display:block;font:750 43px/1 var(--display);letter-spacing:-7px;width:45px}.monogram span{color:var(--plum)}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover{color:#865f7d}.contact-nav{border:1px solid var(--ink);border-radius:99px;padding:11px 18px}.contact-nav span{margin-left:18px}.mobile-menu{display:none}.wrap{width:min(1320px,91%);margin:auto}.eyebrow{text-transform:uppercase;font:500 10px/1.5 var(--font);letter-spacing:.16em;display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;background:#6c8654;border-radius:50%;display:inline-block}.hero{padding:62px 0 0}.hero .eyebrow{margin:0 0 32px}.hero h1{font:500 clamp(52px,6.8vw,100px)/1.06 var(--display);letter-spacing:-.065em;max-width:1080px;margin:0}.hero h1 em{font-style:normal;color:var(--plum)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin:30px 0 50px;gap:30px}.hero-bottom p{margin:0 0 0 auto;width:470px;color:var(--muted);font-size:17px;line-height:1.65}.round-link{display:inline-flex;align-items:center;gap:15px;font-size:13px}.circle{display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:50%;height:44px;width:44px;font-size:20px;transition:.2s}.round-link:hover .circle{background:var(--ink);color:var(--bg);transform:translateY(3px)}.hero-art{height:410px;border-radius:8px;background:var(--mint);position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:20px;padding:40px 50px}.hero-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#7c8c6e12 1px,transparent 1px),linear-gradient(90deg,#7c8c6e12 1px,transparent 1px);background-size:40px 40px}.hero-art .art-label{position:absolute;left:24px;bottom:18px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.artifact-sheet{position:relative;background:white;padding:10px;box-shadow:0 12px 40px #263a1a15;border-radius:3px;align-self:center;transition:transform .5s}.artifact-sheet img{width:100%;aspect-ratio:1.35;object-fit:contain}.artifact-sheet:nth-child(1){transform:rotate(-7deg) translateY(10px)}.artifact-sheet:nth-child(2){transform:rotate(3deg) translateY(-28px);z-index:2}.artifact-sheet:nth-child(3){transform:rotate(8deg) translateY(22px)}.hero-art:hover .artifact-sheet:nth-child(1){transform:rotate(-4deg)}.hero-art:hover .artifact-sheet:nth-child(3){transform:rotate(4deg)}.art-caption{font-size:10px;color:#687160;padding:8px 3px 2px;display:flex;justify-content:space-between}.brandline{padding:29px 0;display:flex;gap:35px;align-items:center;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.brandnames{display:flex;justify-content:space-between;flex:1;gap:20px;align-items:center;color:#596050;font:700 21px var(--display);letter-spacing:-.06em}.brandnames span:last-child{font-weight:500}.section{padding:100px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head h2{font:500 clamp(36px,4vw,57px)/1.15 var(--display);letter-spacing:-.055em;margin:13px 0 0}.section-head p{color:var(--muted);max-width:340px;font-size:14px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.project-card{display:block;min-width:0}.project-visual{height:330px;position:relative;overflow:hidden;border-radius:6px;background:#eae6ef;display:flex;align-items:center;justify-content:center;padding:32px}.project-visual img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.project-card:hover .project-visual img{transform:scale(1.035)}.project-visual.marketplace{background:#e8e2ee}.project-visual.cloud{background:#e2e9dd}.project-visual.gsk{background:#efdfd1}.project-visual.capital{background:#dde7ec}.project-visual.arena{background:#302b3d}.project-visual.prototype{background:#e5e4dd}.project-tag{position:absolute;top:17px;left:18px;font-size:10px;letter-spacing:.07em;z-index:1}.project-no{position:absolute;right:18px;top:17px;font-size:10px;opacity:.6}.project-info{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:20px 0 0}.project-info h3{font:550 25px/1.25 var(--display);letter-spacing:-.035em;margin:0 0 9px}.project-info p{font-size:13px;max-width:440px;color:var(--muted);margin:0}.project-info .circle{width:36px;height:36px;flex-shrink:0;font-size:17px;border-color:var(--line)}.project-card:hover .project-info .circle{background:var(--ink);color:var(--bg)}.project-meta{font-size:10px;color:var(--muted);margin-top:15px;letter-spacing:.02em}.arena-art{color:#ece5f1;padding:45px;width:100%;height:100%;border:1px solid #ffffff25;display:flex;flex-direction:column;justify-content:center}.arena-art .tiny{font-size:10px;letter-spacing:.14em;color:#c5b5d8}.arena-art strong{font:500 56px/1.2 var(--display);letter-spacing:-.06em}.arena-art span:last-child{font-size:14px;margin-top:12px;color:#c5b5d8}.metrics-band{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric{padding:30px 24px 30px 0}.metric+.metric{padding-left:30px;border-left:1px solid var(--line)}.metric strong{display:block;font:500 49px var(--display);letter-spacing:-.05em}.metric span{display:block;font-size:13px;color:var(--muted);max-width:270px}.metric small{display:block;font-size:10px;color:var(--muted);margin-top:9px}.approach{background:var(--plum);color:#f5f1e8;padding:90px 0}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.approach h2{font:500 clamp(38px,4.5vw,65px)/1.12 var(--display);letter-spacing:-.05em;margin:25px 0}.approach p{color:#d2c4ce;max-width:420px;font-size:15px}.principle{padding:24px 0;border-top:1px solid #ffffff29;display:grid;grid-template-columns:30px 1fr;gap:20px}.principle .num{font-size:10px;color:#c9b6c6;margin-top:5px}.principle h3{margin:0 0 8px;font:500 23px var(--display);letter-spacing:-.025em}.principle p{margin:0;font-size:13px;max-width:440px}.approach .eyebrow{color:#d5c5d0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about h2{font:500 clamp(38px,4vw,57px)/1.16 var(--display);letter-spacing:-.05em;margin:22px 0}.about p{color:var(--muted);font-size:16px}.about-art{margin:32px 0 0;display:grid;grid-template-columns:155px 1fr;gap:22px;align-items:center}.about-art img{width:155px;height:155px;object-fit:cover;border-radius:4px}.about-art p{font-size:12px}.timeline{margin-top:16px}.timeline-row{padding:23px 0;display:grid;grid-template-columns:105px 1fr;border-top:1px solid var(--line);gap:12px}.timeline-row span{font-size:11px;color:var(--muted)}.timeline-row h3{font-size:18px;margin:0 0 3px;font-weight:500}.timeline-row p{font-size:12px;margin:0}.credentials{border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--muted)}.credentials strong{color:var(--ink);font-weight:500}.archive-teaser{border:1px solid var(--line);border-radius:6px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:#eeefe7}.archive-teaser h2{font:500 36px var(--display);letter-spacing:-.05em;margin:10px 0}.archive-teaser p{font-size:13px;color:var(--muted);max-width:590px}.archive-teaser .circle{width:58px;height:58px}.contact{padding:90px 0}.contact h2{font:500 clamp(42px,5.8vw,82px)/1.12 var(--display);letter-spacing:-.055em;margin:20px 0 32px;max-width:900px}.contact p{color:var(--muted);max-width:470px;font-size:15px}.primary-link{display:inline-flex;align-items:center;gap:40px;background:var(--plum);color:#fff;padding:15px 23px;border-radius:99px;font-size:13px;border:0}.primary-link:hover{background:#654560}.secondary-link{font-size:13px;margin-left:25px;text-decoration:underline;text-underline-offset:5px}footer{padding:35px 4.5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px}.footer-name{font-weight:600;font-size:14px}.footer-name span{display:block;font-weight:400;color:var(--muted);font-size:11px;margin-top:5px}footer>div{display:flex;gap:25px;align-items:center;font-size:11px}footer>div>span{color:var(--muted)}.case-hero{padding:50px 0}.back-link{font-size:12px;display:inline-block;margin-bottom:40px;color:var(--muted)}.case-hero h1{font:500 clamp(42px,6vw,78px)/1.1 var(--display);letter-spacing:-.055em;max-width:1050px;margin:20px 0 25px}.case-deck{font-size:19px;color:var(--muted);max-width:730px;line-height:1.6}.case-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding-top:25px;margin-top:38px;gap:20px}.case-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:7px}.case-facts dd{margin:0;font-size:12px}.case-cover{background:#e7e3ec;padding:45px;border-radius:6px;margin-bottom:60px;max-height:640px;display:flex;justify-content:center}.case-cover img{object-fit:contain;max-height:550px;width:100%}.case-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:60px;padding-bottom:80px}.case-aside{align-self:start;position:sticky;top:130px}.case-aside a{display:block;padding:8px 0;font-size:12px;color:var(--muted)}.case-aside p{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;max-width:160px}.case-content{min-width:0}.case-section{margin-bottom:65px}.case-section h2{font:500 35px/1.2 var(--display);letter-spacing:-.04em;margin:0 0 22px}.case-section p{max-width:760px;color:var(--muted);font-size:16px;line-height:1.8}.case-section h3{font:550 20px var(--display);margin:28px 0 13px;letter-spacing:-.02em}.case-section ul{padding-left:20px;color:var(--muted);line-height:1.85;font-size:15px}.case-section li{margin-bottom:10px}.case-figure{margin:30px 0}.figure-button{border:1px solid var(--line);background:#fff;width:100%;border-radius:5px;padding:22px;position:relative}.figure-button img{width:100%;max-height:570px;object-fit:contain}.zoom-hint{position:absolute;right:12px;bottom:10px;font-size:10px;background:var(--bg);padding:4px 10px;border-radius:99px;color:var(--muted)}figcaption{font-size:11px;color:var(--muted);margin-top:10px}.figure-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.figure-pair .figure-button{height:230px;padding:12px}.figure-pair img{height:190px}.case-callout{border-left:3px solid var(--plum);background:#eeebe9;padding:24px 28px;margin:30px 0}.case-callout p{margin:0;font-size:15px;color:var(--ink)}.case-results{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0;padding:25px 0}.case-results strong{font:500 38px var(--display);letter-spacing:-.04em;display:block}.case-results span{font-size:12px;color:var(--muted);display:block}.source-note{font-size:11px!important;color:var(--muted)}.next-project{padding:45px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:center}.next-project h2{font:500 30px var(--display);letter-spacing:-.04em;margin:8px 0}.archive-page{padding:55px 0 90px}.archive-page h1{font:500 clamp(42px,6vw,78px)/1.1 var(--display);letter-spacing:-.055em;margin:20px 0}.archive-page .intro{color:var(--muted);max-width:660px}.archive-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:32px 0 25px}.archive-controls label{font-size:11px;display:flex;flex-direction:column;gap:7px}.archive-controls input,.archive-controls select{border:1px solid var(--line);background:transparent;border-radius:4px;padding:12px 15px;font-size:13px;color:var(--ink)}.archive-controls input{width:300px}.archive-status{margin-left:auto;font-size:11px;color:var(--muted)}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px 20px}.archive-item{min-width:0}.archive-img{width:100%;height:170px;background:#eaece5;border:1px solid var(--line);padding:12px;display:flex;justify-content:center;align-items:center;border-radius:4px}.archive-img img{width:100%;height:100%;object-fit:contain;transition:.2s}.archive-img:hover img{transform:scale(1.04)}.archive-item h2{font:500 13px/1.4 var(--font);margin:11px 0 5px;overflow-wrap:anywhere}.archive-item p{font-size:10px;color:var(--muted);margin:0}.file-placeholder{display:flex;flex-direction:column;gap:10px;align-items:center;color:var(--plum);font:500 24px var(--display)}.file-placeholder small{font:11px var(--font);color:var(--muted)}dialog{width:min(1500px,96vw);max-width:none;height:92dvh;border:0;padding:0;background:#f7f7f2;border-radius:6px;color:var(--ink)}dialog::backdrop{background:#1d201bcd;backdrop-filter:blur(6px)}.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid var(--line)}.viewer-top h2{font:500 15px var(--font);margin:0}.viewer-top button{border:1px solid var(--line);background:transparent;padding:7px 13px;border-radius:99px;font-size:12px}#viewer-body{height:calc(92dvh - 134px);overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:25px;background:#eaece5}#viewer-body img{max-width:100%;max-height:none;object-fit:contain;align-self:center}#viewer-body iframe{border:0;width:100%;height:100%}.viewer-file{align-self:center;text-align:center}.viewer-file p{color:var(--muted)}.viewer-bottom{display:flex;align-items:center;gap:20px;padding:17px 24px;font-size:12px}.viewer-bottom #viewer-count{color:var(--muted);margin-right:auto}.viewer-bottom button{background:transparent;border:1px solid var(--line);border-radius:50%;width:32px;height:32px}.empty{grid-column:1/-1;padding:50px 0;color:var(--muted)}.private-note{font-size:10px;color:var(--muted);margin-top:20px}.reveal{animation:appear .65s both}@keyframes appear{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(min-width:1600px){.hero-art{height:470px}}@media(max-width:1000px){nav{gap:18px}.hero h1{font-size:70px}.hero-art{height:330px;padding:30px}.project-visual{height:270px;padding:25px}.approach-layout,.about-layout{gap:40px}.case-layout{grid-template-columns:160px 1fr;gap:35px}.archive-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.header{padding:15px 5%;min-height:78px}.identity{font-size:13px}.identity-sub{font-size:10px}.monogram{font-size:37px;width:38px}.mobile-menu{display:block;border:0;background:none;font-size:12px;padding:10px}nav{display:none;position:absolute;top:77px;left:0;right:0;padding:20px 6% 30px;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:start;gap:20px}nav.open{display:flex}.hero{padding-top:40px}.hero .eyebrow{font-size:9px;margin-bottom:25px}.hero h1{font-size:clamp(45px,10vw,70px);letter-spacing:-.06em}.hero-bottom{flex-direction:column-reverse;align-items:start;gap:23px;margin:25px 0 30px}.hero-bottom p{width:auto;font-size:15px;margin:0}.hero-art{height:245px;padding:25px 15px;gap:7px}.artifact-sheet{padding:5px;min-width:0}.artifact-sheet img{aspect-ratio:.8}.art-caption{display:none}.hero-art .art-label{font-size:8px;left:15px;bottom:12px}.brandline{display:block;padding:24px 0}.brandnames{margin-top:15px;font-size:18px;gap:10px;flex-wrap:wrap}.section{padding:65px 0}.section-head{display:block;margin-bottom:30px}.section-head p{max-width:400px}.project-grid{grid-template-columns:1fr;gap:35px}.project-visual{height:300px;padding:30px}.project-info h3{font-size:24px}.metrics-band{margin-top:40px;grid-template-columns:1fr}.metric,.metric+.metric{border:0;padding:20px 0;display:grid;grid-template-columns:110px 1fr;align-items:center}.metric+.metric{border-top:1px solid var(--line)}.metric strong{font-size:40px;grid-row:span 2}.metric small{margin-top:4px}.approach{padding:60px 0}.approach-layout,.about-layout{grid-template-columns:1fr;gap:30px}.approach h2{font-size:43px}.about h2{font-size:42px}.about-art{margin:25px 0}.archive-teaser{padding:25px}.archive-teaser h2{font-size:29px}.archive-teaser .circle{width:45px;height:45px;flex-shrink:0}.contact{padding:65px 0}.contact h2{font-size:48px}.secondary-link{display:block;margin:24px 0 0}footer{flex-direction:column;padding:28px 5%;gap:25px}footer>div{flex-wrap:wrap;gap:20px}.case-hero{padding:35px 0}.back-link{margin-bottom:25px}.case-deck{font-size:16px}.case-facts{grid-template-columns:1fr 1fr;gap:24px}.case-cover{padding:15px;margin-bottom:35px}.case-layout{grid-template-columns:1fr;padding-bottom:35px}.case-aside{position:static;display:flex;flex-wrap:wrap;gap:15px;border-bottom:1px solid var(--line);padding-bottom:15px}.case-aside a{padding:0}.case-aside p{display:none}.case-section{margin-bottom:45px}.case-section h2{font-size:29px}.case-section p{font-size:15px}.case-results{gap:15px}.case-results strong{font-size:31px}.case-results span{font-size:11px}.figure-pair{grid-template-columns:1fr}.case-section .figure-button{padding:10px}.archive-grid{grid-template-columns:1fr 1fr;gap:24px 15px}.archive-img{height:140px;padding:6px}.archive-controls{gap:15px}.archive-controls input{width:min(300px,88vw)}.archive-status{margin-left:0;width:100%}.viewer-top{padding:14px}.viewer-top h2{font-size:12px}.viewer-bottom{padding:15px 12px;gap:10px;font-size:10px}#viewer-body{padding:10px}.next-project h2{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Reserve image space so deep links stay aligned as lazy artifacts load. */
.case-cover{height:min(45vw,620px)}.case-content .figure-button img{height:400px}.case-content .case-figure>a>img{width:100%;height:430px;object-fit:contain;background:#eee}
@media(max-width:720px){.case-cover{height:280px}.case-content .figure-button img{height:250px}.case-content .case-figure>a>img{height:270px}}
html{scroll-padding-top:125px}
.project-visual.venue{background:#3d4740}.aws-progression{display:grid;grid-template-columns:repeat(4,1fr);margin:-5px 0 40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.aws-progression a{padding:20px 16px 20px 0}.aws-progression a+a{padding-left:20px;border-left:1px solid var(--line)}.aws-progression small{display:block;font-size:9px;letter-spacing:.06em;color:var(--muted)}.aws-progression span{display:block;font-size:13px;margin-top:8px}.aws-progression a:hover span{text-decoration:underline;text-underline-offset:5px}@media(max-width:720px){.aws-progression{grid-template-columns:1fr 1fr}.aws-progression a:nth-child(3){border-left:0;padding-left:0}.aws-progression a:nth-child(n+3){border-top:1px solid var(--line)}.aws-progression small{font-size:8px}.aws-progression span{font-size:12px}}
.hero-statement{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:end;padding:35px 0 38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:20px}.hero-statement>p{font:500 clamp(24px,2.5vw,36px)/1.4 var(--display);letter-spacing:-.04em;margin:0}.hero-statement>div{display:flex;flex-direction:column;gap:13px;color:var(--muted);font-size:12px}.hero-statement a{color:var(--plum);font-size:12px;margin-top:8px}.hero-statement a>span{margin-left:35px}.hero-statement .eyebrow{margin:0}.brandline{border-bottom:1px solid var(--line)}.project-visual.venue{padding:38px 24px 24px;background:#dde9e6}.project-visual.venue img{border-radius:4px}@media(max-width:720px){.hero-statement{grid-template-columns:1fr;gap:28px;padding:26px 0}.hero-statement>p{font-size:27px}.hero-statement>div{font-size:11px}.hero{padding-top:40px}}
.editorial-card{padding:36px;width:100%;height:100%;position:relative;display:flex;flex-direction:column;justify-content:center}.editorial-card>strong{font:500 clamp(40px,4.5vw,66px)/1.05 var(--display);letter-spacing:-.065em}.editorial-card>strong>span{color:#6d714e}.editorial-card>p{font-size:13px;max-width:320px;color:var(--muted);margin-top:23px}.editorial-arrow{position:absolute;bottom:16px;right:18px;font-size:26px}.project-visual.arena .editorial-card,.project-visual.venue .editorial-card{color:#f7f7f2}.project-visual.arena .editorial-card p,.project-visual.venue .editorial-card p{color:#d4d5cc}.project-visual.venue{background:#3d4740}.project-visual.venue .editorial-card>strong>span,.project-visual.arena .editorial-card>strong>span{color:var(--lime)}.project-visual.agency{background:#ebe0d3}.file-placeholder.placed{font-size:17px}.creative-note{padding:20px 0;border-top:1px solid var(--line);margin-top:25px}.creative-note p,.creative-note a{font-size:12px}.artwork-page,.resume-page{padding:55px 0 90px}.artwork-page h1,.resume-page h1{font:500 clamp(44px,6vw,80px)/1.12 var(--display);letter-spacing:-.06em;margin:20px 0}.gallery-intro{font-size:17px;line-height:1.8;color:var(--muted);max-width:780px;margin-bottom:40px}.artwork-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px 25px}.artwork-grid figure{margin:0}.artwork-grid button{border:0;background:#eeede6;padding:22px;width:100%;height:350px;border-radius:5px}.artwork-grid img{width:100%;height:100%;object-fit:contain}.artwork-grid figcaption{line-height:1.6}.resume-history{max-width:820px;padding-top:30px}.resume-history h2{font:500 28px var(--display);letter-spacing:-.04em;border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.resume-history p{color:var(--muted);line-height:1.8}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portfolio-guide{padding:35px 0 42px}.guide-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}.guide-heading h2{font:500 32px var(--display);letter-spacing:-.045em;margin:12px 0 0}.guide-heading>p{font-size:13px;color:var(--muted);max-width:300px;margin:0}.portfolio-guide form{display:flex;gap:15px;padding:10px 10px 10px 23px;border:1px solid #919587;border-radius:8px;background:#fff}.portfolio-guide input{flex:1;min-width:0;border:0;background:none;padding:12px 0;font-size:16px;color:var(--ink)}.portfolio-guide input:focus{outline:none}.portfolio-guide form:focus-within{outline:2px solid #86648b;outline-offset:3px}.portfolio-guide form>button{border:0;background:var(--plum);color:#fff;border-radius:5px;padding:11px 20px;font-size:13px}.portfolio-guide form>button>span{margin-left:24px}.guide-prompts{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:15px}.guide-prompts>span{font-size:9px;letter-spacing:.1em;color:var(--muted);margin-right:6px}.guide-prompts button{font-size:11px;background:transparent;border:1px solid var(--line);padding:8px 13px;border-radius:99px}.guide-prompts button:hover{background:var(--mint)}.guide-foot{display:flex;justify-content:space-between;gap:20px;margin-top:17px;font-size:10px;color:var(--muted)}.guide-foot button{border:0;background:none;font-size:10px;color:var(--muted);text-decoration:underline}.guide-log{max-height:440px;overflow:auto;margin-bottom:20px;overscroll-behavior:contain;padding:4px 4px 10px}.guide-message{padding:18px 22px;border-radius:6px;margin-bottom:14px;max-width:90%}.guide-message.visitor{background:#ece8ee;margin-left:auto;max-width:75%}.guide-message.assistant{background:#e9ede3}.guide-message p{font-size:14px;line-height:1.75;margin:6px 0 0;white-space:pre-wrap}.guide-speaker{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.guide-sources{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;margin-top:14px}.guide-sources a{text-decoration:underline;text-underline-offset:4px}@media(max-width:1000px){.artwork-grid{grid-template-columns:1fr 1fr}nav{gap:16px;font-size:12px}}@media(max-width:720px){.guide-heading{display:block}.guide-heading h2{font-size:29px}.guide-heading>p{margin-top:12px;max-width:340px}.portfolio-guide{padding:28px 0}.portfolio-guide form{padding-left:14px;gap:8px}.portfolio-guide input{font-size:14px}.portfolio-guide form>button{padding:10px 12px}.portfolio-guide form>button>span{margin-left:7px}.guide-prompts>span{width:100%;margin:0}.guide-foot{align-items:start}.guide-foot>span{max-width:230px}.guide-message{max-width:100%;padding:15px}.guide-message.visitor{max-width:90%}.artwork-grid{gap:30px 16px}.artwork-grid button{height:230px;padding:10px}.editorial-card{padding:25px}.editorial-card>strong{font-size:54px}}
.video-frame{aspect-ratio:16/9;background:#e9ece3;margin:25px 0}.video-frame iframe{height:100%;width:100%;border:0}
/* Theme controls stay available beside the desktop and mobile navigation. */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:transparent;margin-left:20px;color:var(--ink)}.theme-toggle:hover{background:var(--mint)}.theme-sun{display:none}[data-theme=dark] .theme-sun{display:block}[data-theme=dark] .theme-moon{display:none}.header nav{margin-left:auto}
:root[data-theme=dark]{--bg:#171a18;--ink:#eeeee6;--muted:#b4b9ae;--line:#3b433b;--plum:#d9aed2;--mint:#2c382f;--lime:#d6ec91;--peach:#edcfb7}
[data-theme=dark] .header{background:#171a18f2}[data-theme=dark] .brandnames{color:#bfcab5}[data-theme=dark] nav a:hover{color:#e6bfdc}[data-theme=dark] .dot{background:#b2cf8d}
[data-theme=dark] .approach{background:#342531}[data-theme=dark] .primary-link,[data-theme=dark] .portfolio-guide form>button{background:#d9aed2;color:#201b20}[data-theme=dark] .primary-link:hover{background:#ecc9e6}
[data-theme=dark] .archive-teaser,[data-theme=dark] .archive-img,[data-theme=dark] .artwork-grid button,[data-theme=dark] #viewer-body,[data-theme=dark] .video-frame{background:#242c26}[data-theme=dark] dialog{background:var(--bg)}[data-theme=dark] .case-callout{background:#30272e}[data-theme=dark] .portfolio-guide form{background:#202620;border-color:#727d6a}[data-theme=dark] .portfolio-guide input::placeholder{color:#a4ad9f}[data-theme=dark] .guide-message.visitor{background:#362b37}[data-theme=dark] .guide-message.assistant{background:#283528}
/* Original project artwork keeps its own colors and remains unfiltered. */
[data-theme=dark] .project-visual{color:#242721}[data-theme=dark] .project-visual .editorial-card>p{color:#50594d}[data-theme=dark] .project-visual.venue,[data-theme=dark] .project-visual.arena{color:#f7f7f2}[data-theme=dark] .project-visual.venue .editorial-card>p,[data-theme=dark] .project-visual.arena .editorial-card>p{color:#d4d5cc}[data-theme=dark] .figure-button{border-color:#65705e}[data-theme=dark] select option{background:var(--bg);color:var(--ink)}
@media(max-width:720px){.theme-toggle{margin-left:auto;margin-right:12px;width:36px;height:36px}.header nav{margin-left:0}}
.brandnames{gap:24px;justify-content:space-around}.brand-logo{display:flex;align-items:center;justify-content:center;min-height:80px;padding:10px 18px;border-radius:5px;flex:1;max-width:190px}.brand-logo img{object-fit:contain;max-width:100%;height:45px;width:auto}.brand-logo.aws img{height:48px}.brand-logo.gsk img{height:48px}.brand-logo.comcast img{height:32px}[data-theme=dark] .brand-logo{background:#f7f7f2}@media(max-width:720px){.brandnames{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.brand-logo{max-width:none;min-height:76px}.brand-logo img{max-width:130px}}
