@font-face{font-family:Archivo;src:url('/assets/archivo-text.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Archivo Display;src:url('/assets/archivo-display.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
:root{--ground:#f6f5f1;--paper:#fff;--ink:#20221f;--blue:#1431a4;--sand:#e6dbc7;--surface:#eeede7;--muted:#5d6059;--space:clamp(76px,10vw,160px);--gutter:clamp(20px,3vw,52px);--body:clamp(17px,1.2vw,19px);--lead:clamp(22px,2vw,30px);--heading:clamp(34px,4.1vw,64px);--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;background:var(--ground);color:var(--ink);font-family:Archivo,Arial,sans-serif;font-size:var(--body);line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none;text-underline-offset:.22em}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:active,.button:active{transform:translateY(2px)}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{background:var(--blue);color:var(--ground)}h1,h2,h3,p,figure,blockquote,dl,dd{margin:0}h1,h2,h3{font-weight:500;line-height:1.08;letter-spacing:-.045em;text-wrap:balance}h2{font-size:var(--heading)}h3{font-size:clamp(26px,2.4vw,36px)}p{text-wrap:pretty}button{touch-action:manipulation}.wrap{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}.skip{position:fixed;z-index:20;left:20px;top:20px;padding:12px 20px;background:var(--blue);color:var(--paper);transform:translateY(-160%)}.skip:focus{transform:translateY(0)}.site-header{min-height:116px;display:flex;justify-content:space-between;align-items:center;gap:32px}.wordmark{font-size:19px;font-weight:550;line-height:1.03;letter-spacing:-.045em;flex-shrink:0}.home-dot{color:var(--blue)}.site-header nav{display:flex;align-items:center;gap:clamp(22px,3vw,48px);font-size:16px}.site-header nav a{position:relative;padding:12px 0}.site-header nav a:not(.nav-contact)::after{position:absolute;content:'';height:2px;background:currentColor;left:0;bottom:6px;right:0;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.site-header nav a:hover::after,.site-header nav a[aria-current=page]::after{transform:scaleX(1)}.nav-contact{color:var(--blue)}.menu-toggle{display:none;background:none;padding:10px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--blue);color:var(--ground);padding:18px 24px;font-size:17px;line-height:1.4;transition:background .2s,transform .2s;min-height:58px}.button:hover{background:var(--ink)}.text-link{display:inline-block;color:var(--blue);font-weight:500;text-decoration:underline;text-decoration-thickness:1.5px;margin-top:26px;transition:transform .25s var(--ease)}.text-link:hover{transform:translateX(4px)}.statement{font-size:clamp(24px,2.45vw,36px);line-height:1.35;letter-spacing:-.025em}.home-hero{padding-top:clamp(52px,7vw,105px);padding-bottom:clamp(66px,7.5vw,120px)}.hero-title{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(82px,10.8vw,171px);font-weight:700;line-height:.92;letter-spacing:-.04em;color:var(--blue);max-width:1260px}.hero-title span{display:block}.hero-title span+span{margin-left:clamp(0px,9vw,145px)}.hero-bottom{margin-top:clamp(56px,6vw,96px);display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.hero-bottom p{max-width:610px;font-size:clamp(20px,1.65vw,26px);line-height:1.4;letter-spacing:-.02em}.hero-bottom .button{flex-shrink:0}.selected-work{padding-top:30px;padding-bottom:var(--space)}.section-opening{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:58px;align-items:end}.section-opening h2{max-width:650px}.section-opening>p{max-width:490px;justify-self:end}.project-image{overflow:hidden;background:var(--surface);position:relative}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.project-link:hover .project-image img{transform:scale(1.025)}.project-action{position:absolute;bottom:20px;right:20px;background:var(--ground);color:var(--ink);padding:10px 16px;font-size:16px;transform:translateY(8px);opacity:0;transition:transform .3s var(--ease),opacity .3s}.project-link:hover .project-action,.project-link:focus-visible .project-action{transform:translateY(0);opacity:1}.project-title{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:22px}.project-title h3{font-size:clamp(30px,3vw,44px)}.project-title>span{font-size:30px;transition:transform .3s var(--ease)}.project-link:hover .project-title>span{transform:translate(3px,-3px)}.project-summary{max-width:740px;font-size:clamp(19px,1.65vw,24px);line-height:1.4;margin-top:10px;letter-spacing:-.015em}.project-meta{font-size:16px;color:var(--muted);margin-top:14px}.project-featured .project-image{aspect-ratio:1.76;padding:clamp(20px,3.7vw,60px);background:var(--sand)}.project-featured .project-image img{object-fit:contain}.project-pair{display:grid;grid-template-columns:1.1fr .8fr;gap:clamp(45px,7vw,110px);margin-top:110px;align-items:start}.project-opus .project-image{aspect-ratio:1}.project-mittee{margin-top:165px}.project-mittee .project-image{aspect-ratio:1.12}.project-mittee .project-image img{object-fit:cover}.project-velogra{margin-top:110px;width:82%;margin-left:auto}.project-velogra .project-image{aspect-ratio:16/9}.question-section{background:var(--sand);padding-block:var(--space)}.question-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,130px)}.question-intro{max-width:460px;margin-top:26px}.question-tabs{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:42px}.question-tabs button{background:transparent;padding:11px 16px;font-size:19px;text-align:left;transition:background .2s,color .2s}.question-tabs button[aria-selected=true]{background:var(--blue);color:var(--ground)}.question-tabs button:not([aria-selected=true]):hover{background:rgba(20,49,164,.08)}.theme-panel h3{font-size:32px}.theme-panel>p{margin-top:20px;margin-bottom:38px;max-width:500px;font-size:21px}.theme-panel>a{display:block;margin-top:26px;font-size:25px;line-height:1.2;letter-spacing:-.025em}.theme-panel>a span{display:block;font-size:16px;line-height:1.5;letter-spacing:0;margin-top:8px}.theme-panel>a:hover{color:var(--blue)}.theme-panel+.theme-panel{margin-top:70px}.theme-panel[hidden]{display:none}.question-enhanced .theme-panel+.theme-panel{margin-top:0}.writing-preview{padding-block:var(--space)}.essay-preview-list{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.essay-item{padding-block:22px}.essay-meta{font-size:16px;color:var(--muted);display:flex;flex-wrap:wrap;gap:10px 30px;justify-content:space-between}.essay-item>a{display:flex;justify-content:space-between;gap:30px;align-items:baseline;margin-top:18px}.essay-item h3{font-size:clamp(26px,2.2vw,34px);max-width:700px;line-height:1.16}.essay-arrow{font-size:25px;transition:transform .25s var(--ease);flex-shrink:0}.essay-item>a:hover{color:var(--blue)}.essay-item>a:hover .essay-arrow{transform:translate(3px,-3px)}.essay-item>p{margin-top:18px;max-width:640px}.essay-item.compact .essay-meta{display:block}.essay-item.compact time{display:block;margin-top:5px}.essay-item.compact h3{font-size:clamp(27px,2.2vw,33px)}.essay-item.compact>a{gap:15px}.writing-preview>.text-link{margin-top:36px}.studio-section{background:var(--blue);color:var(--ground);padding-block:var(--space)}.studio-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.studio-layout h2{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(64px,8.5vw,133px);font-weight:700;letter-spacing:-.035em}.studio-layout>div>p+p{margin-top:28px;max-width:550px}.studio-layout .text-link{color:var(--ground)}.personal-section{display:grid;grid-template-columns:.74fr 1fr;gap:clamp(70px,13vw,200px);padding-block:var(--space);align-items:center}.personal-photo{max-width:450px}.personal-photo img{aspect-ratio:.8;object-fit:cover;object-position:center}.personal-copy>p{margin-top:28px;max-width:590px}.personal-copy .statement{margin-top:35px}.site-footer{background:var(--surface);padding-top:75px}.footer-top>p{font-size:18px;margin-bottom:26px}.footer-invite{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(48px,7.5vw,118px);line-height:1;letter-spacing:-.045em;display:block;max-width:1300px;font-weight:600}.footer-invite:hover{color:var(--blue)}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-block:70px 30px;align-items:end;font-size:16px}.footer-name{font-size:22px;font-weight:500;letter-spacing:-.025em}.footer-links{display:flex;justify-content:flex-end;gap:28px}.footer-links a:hover{text-decoration:underline}.footer-bottom>p{grid-column:1/-1;color:var(--muted);font-size:16px}.case-intro{padding-top:46px;text-align:center}.back-link{display:block;font-size:16px;width:fit-content;margin-bottom:50px;color:var(--muted)}.back-link:hover{color:var(--blue)}.case-intro h1{font-family:Archivo Display,Archivo,sans-serif;color:var(--blue);font-size:clamp(70px,10vw,150px);font-weight:650;letter-spacing:-.035em;line-height:.95}.case-tagline{font-size:clamp(27px,3vw,45px);letter-spacing:-.03em;line-height:1.2;margin-top:26px}.case-description{font-size:clamp(19px,1.7vw,25px);line-height:1.45;max-width:790px;margin:30px auto 0}.case-meta{display:grid;grid-template-columns:.8fr 1.3fr 1fr;text-align:left;gap:40px;margin:60px auto 0;max-width:1190px}.case-meta dt{font-size:16px;color:var(--muted);margin-bottom:10px}.case-meta dd{font-size:17px;line-height:1.45}.case-hero{margin-top:66px}.case-hero figure>button{background:var(--surface)}.case-hero img{max-height:850px;object-fit:contain}.protobench-page .case-hero figure>button{padding:clamp(16px,3vw,50px);background:var(--sand)}.opus-page .case-hero img{max-height:800px;object-fit:cover;aspect-ratio:1.55;object-position:center 35%}.image-open{display:block;position:relative;width:100%;padding:0;background:none;text-align:left;cursor:zoom-in}.zoom-note{position:absolute;right:16px;bottom:16px;background:var(--ground);color:var(--ink);padding:8px 12px;font-size:15px;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.image-open:hover .zoom-note,.image-open:focus-visible .zoom-note{opacity:1;transform:translateY(0)}figcaption{font-size:16px;color:var(--muted);margin-top:14px;line-height:1.5;max-width:850px}.case-toc{display:flex;flex-wrap:wrap;gap:16px 35px;font-size:16px;margin-top:55px;justify-content:center}.case-toc a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1.5px}.chapter{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,130px);padding-top:var(--space);scroll-margin-top:40px}.chapter h2{max-width:520px}.chapter-body{max-width:760px}.chapter-body>p+p{margin-top:25px}.chapter-body>.text-link{display:table}.stack-note{padding:26px;background:var(--surface);font-size:16px;margin-top:32px!important}.wide-artifact{margin-top:75px}.wide-artifact img{max-height:900px;object-fit:contain;background:var(--surface)}.relationship-field{background:var(--sand);padding-block:65px;margin-top:var(--space)}.diagram-intro{font-size:var(--lead);letter-spacing:-.02em}.relationship-path{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-block:50px}.relationship-path>div{flex:1}.relationship-path strong{display:block;font-size:clamp(24px,2.7vw,40px);font-weight:500;letter-spacing:-.03em}.relationship-path>div>span{font-size:16px;margin-top:9px;display:block}.path-arrow{font-size:30px;color:var(--blue)}.diagram-caption{font-size:16px;color:var(--muted)}.pullquote{padding-block:var(--space) 0;max-width:1250px}.pullquote blockquote{font-size:clamp(28px,3vw,36px);line-height:1.35;letter-spacing:-.025em;max-width:960px;color:var(--blue)}.pullquote>p{font-size:16px;margin-top:20px;color:var(--muted)}.development-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:65px}.development-timeline>div{background:var(--surface);padding:30px}.timeline-date{font-size:16px;color:var(--muted);margin-bottom:35px}.development-timeline h3{font-size:28px}.development-timeline h3+p{margin-top:20px}.detail-pair{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(50px,10vw,160px);margin-top:var(--space);align-items:center}.fastener-figure img{max-height:650px;object-fit:contain;background:var(--surface)}.detail-copy>p{margin-top:28px;max-width:570px}.artifact-pair{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:70px}.artifact-pair img{aspect-ratio:1.5;object-fit:contain;background:var(--surface)}.next-project{padding-block:var(--space);margin-top:25px}.next-project>p:first-child{font-size:16px;color:var(--muted)}.next-project>a{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(56px,7vw,105px);font-weight:600;letter-spacing:-.035em;line-height:1.1;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:15px}.next-project>a:hover{color:var(--blue)}.next-project>p:last-child{margin-top:18px}.opus-material{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(55px,11vw,176px);align-items:center;margin-top:var(--space)}.opus-material figure{max-width:580px}.opus-material img{max-height:830px;object-fit:contain;background:var(--surface)}.material-copy>p{margin-top:27px;max-width:600px}.creative-pair{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1330px;margin-top:var(--space);align-items:start}.creative-pair img{aspect-ratio:1;object-fit:cover}.artwork-gravity{margin-top:130px}.case-action{margin-top:38px;display:flex;justify-content:center}.editorial-intro{padding-top:70px;padding-bottom:80px;display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.editorial-intro h1{font-size:clamp(58px,6.8vw,104px);font-family:Archivo Display,Archivo,sans-serif;font-weight:650;letter-spacing:-.04em;line-height:1.0}.editorial-lead{padding-top:12px;max-width:640px}.editorial-lead>p:first-child{font-size:clamp(23px,2.2vw,32px);line-height:1.4;letter-spacing:-.025em}.editorial-lead>p+p{margin-top:28px}.writing-list{max-width:1260px;padding-bottom:70px}.writing-list .essay-item{display:grid;grid-template-columns:240px 1fr;gap:12px 60px;padding-block:37px}.writing-list .essay-meta{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px}.writing-list .essay-item>a{margin-top:0}.writing-list .essay-item>p{grid-column:2;margin-top:0}.writing-list .essay-item:nth-child(even){background:var(--surface);padding-inline:30px;margin-inline:-30px}.writing-list .essay-item h3{font-size:clamp(29px,3vw,42px)}.writing-close{padding-block:60px var(--space);display:grid;grid-template-columns:1fr 1fr;gap:30px 90px}.writing-close>.text-link{grid-column:2;justify-self:start;margin-top:0}.about-intro{display:grid;grid-template-columns:1.2fr .7fr;gap:clamp(60px,10vw,160px);padding-top:70px;align-items:start}.about-title h1{font-size:clamp(57px,6.2vw,98px);font-family:Archivo Display,Archivo,sans-serif;font-weight:650;line-height:1.02;max-width:760px}.about-title>p{max-width:600px;margin-top:55px}.about-portrait img{aspect-ratio:.78;object-fit:cover;object-position:center}.about-page .chapter:last-child,.labs-page .chapter:last-child{padding-bottom:var(--space)}.interest-section{margin-top:var(--space);padding-block:var(--space);background:var(--sand)}.interest-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,130px)}.interest-layout>div{display:grid;gap:50px}.interest-layout h3{font-size:32px}.interest-layout p{max-width:650px;margin-top:20px}.labs-intro{padding-bottom:var(--space)}.labs-intro h1{font-size:clamp(66px,7.4vw,118px)}.labs-statement{background:var(--blue);color:var(--ground);padding-block:var(--space)}.labs-statement p{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(40px,5.4vw,85px);font-weight:600;line-height:1.15;letter-spacing:-.035em}.labs-projects{display:grid;grid-template-columns:1fr 1fr;gap:0 110px;margin-top:var(--space)}.labs-projects>a{display:block;padding-block:30px 60px}.labs-projects>a:nth-child(even){padding-top:120px}.labs-projects h2{font-size:clamp(34px,3vw,46px)}.labs-projects p{margin-top:25px;max-width:540px}.labs-projects span{display:block;margin-top:25px;color:var(--blue);font-size:17px}.labs-projects>a:hover h2{color:var(--blue)}.contact-intro{padding-block:85px var(--space);max-width:1290px}.contact-intro h1{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(58px,8vw,125px);font-weight:650;line-height:1;letter-spacing:-.04em}.contact-intro>.statement{max-width:760px;margin-top:46px}.contact-options{margin-top:75px;max-width:850px}.contact-options>a{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:26px;font-size:clamp(23px,2.5vw,36px);line-height:1.3;letter-spacing:-.025em}.contact-options>a:nth-child(odd){background:var(--surface)}.contact-options>a:hover{background:var(--blue);color:var(--ground)}.contact-note{font-size:16px;color:var(--muted);margin-top:30px}.contact-page .footer-top{display:none}.not-found{padding-block:100px var(--space);min-height:55vh}.not-found h1{font-size:clamp(52px,7vw,105px);max-width:1100px}.not-found p{margin-top:30px}.not-found .button{margin-top:45px}.image-dialog{max-width:calc(100vw - 40px);width:1400px;max-height:calc(100dvh - 40px);padding:20px;background:var(--ground);color:var(--ink);border:0;overflow:auto}.image-dialog::backdrop{background:rgba(15,17,19,.85)}.dialog-bar{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;margin-bottom:20px}.dialog-bar p{font-size:16px;max-width:80ch}.dialog-close{padding:8px 16px;background:var(--blue);color:var(--ground);font-size:16px;flex-shrink:0}.image-dialog>img{max-height:calc(100dvh - 150px);object-fit:contain;width:100%}.image-dialog:focus-visible{outline:0}
@keyframes hero-enter{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes picture-drift{from{transform:scale(1)}to{transform:scale(1.025)}}
@media(prefers-reduced-motion:no-preference){.hero-title span{animation:hero-enter .9s var(--ease) both}.hero-title span+span{animation-delay:.1s}.hero-bottom>p{animation:hero-enter .8s .17s var(--ease) both}.hero-bottom>.button{animation:hero-enter .8s .24s var(--ease) both}.wordmark,.site-header nav>a{animation:hero-enter .6s var(--ease) both}.site-header nav>a:nth-child(2){animation-delay:.05s}.site-header nav>a:nth-child(3){animation-delay:.1s}.site-header nav>a:nth-child(4){animation-delay:.15s}.site-header nav>a:nth-child(5){animation-delay:.2s}.case-intro h1,.editorial-intro h1,.about-title h1,.contact-intro h1{animation:hero-enter .9s var(--ease) both}.artwork-spirograph img{animation:picture-drift 10s ease-in-out infinite alternate}}
@media(min-width:1601px){.hero-title{font-size:171px}}
@media(max-width:1050px){.site-header nav{gap:24px}.project-pair{gap:50px;grid-template-columns:1fr 1fr}.project-mittee{margin-top:100px}.project-featured .project-image{aspect-ratio:1.6}.essay-preview-list{gap:30px}.essay-preview-list .essay-item h3{font-size:27px}.studio-layout{grid-template-columns:.9fr 1.1fr}.personal-section{gap:80px}.case-meta{gap:26px}.chapter{gap:70px;grid-template-columns:.8fr 1.2fr}.development-timeline{gap:24px}.development-timeline>div{padding:24px}.development-timeline h3{font-size:25px}.writing-list .essay-item{grid-template-columns:190px 1fr;gap:12px 40px}.about-intro{gap:70px}.about-title h1{font-size:70px}.labs-projects{gap:0 65px}}
@media(max-width:980px){:root{--space:84px;--gutter:24px;--heading:40px}.site-header{min-height:96px}.site-header nav{gap:20px}.site-header nav a{font-size:15px}.wordmark{font-size:18px}.nav-contact{display:none}.hero-title{font-size:clamp(70px,12vw,100px)}.hero-title span+span{margin-left:4vw}.hero-bottom{gap:35px;margin-top:55px}.hero-bottom p{font-size:20px}.hero-bottom .button{gap:20px;padding:16px 18px}.section-opening{gap:35px;margin-bottom:38px}.section-opening h2{font-size:38px}.section-opening p{font-size:17px}.project-featured .project-image{padding:22px;aspect-ratio:1.5}.project-pair{gap:30px;margin-top:70px}.project-mittee{margin-top:90px}.project-meta{font-size:15px}.project-title{margin-top:18px}.project-title h3{font-size:32px}.project-summary{font-size:19px}.project-velogra{width:90%;margin-top:75px}.question-layout{gap:45px;grid-template-columns:1fr 1fr}.question-tabs{margin-top:30px}.question-tabs button{font-size:17px;padding:11px 13px}.theme-panel h3{font-size:29px}.theme-panel>p{font-size:18px}.theme-panel>a{font-size:22px}.essay-preview-list{grid-template-columns:1fr;gap:25px}.essay-item.compact{display:grid;grid-template-columns:1fr 1.45fr;gap:10px 35px}.essay-item.compact>a{margin-top:0}.essay-item.compact>p{grid-column:2;margin-top:0}.studio-layout{grid-template-columns:1fr;gap:40px}.studio-layout h2{font-size:80px}.studio-layout>div{max-width:630px}.personal-section{gap:50px;grid-template-columns:.75fr 1fr}.personal-copy h2{font-size:36px}.personal-copy .statement{font-size:25px}.personal-copy>p{font-size:17px}.footer-invite{font-size:70px}.footer-bottom{gap:25px}.footer-name{font-size:20px}.footer-links{gap:20px;font-size:15px}.case-intro{padding-top:30px}.back-link{margin-bottom:40px}.case-intro h1{font-size:90px}.case-meta{margin-top:45px;grid-template-columns:1fr 1.3fr;gap:25px}.case-meta>div:last-child{grid-column:1/-1}.case-hero{margin-top:45px}.case-tagline{font-size:32px}.case-description{font-size:20px;max-width:620px}.case-toc{justify-content:flex-start;gap:14px 25px}.chapter{grid-template-columns:1fr;gap:30px}.chapter-body{max-width:650px}.chapter h2{max-width:650px}.relationship-path{gap:16px}.relationship-path strong{font-size:25px}.relationship-path>div>span{font-size:15px}.path-arrow{font-size:22px}.development-timeline{grid-template-columns:1fr;gap:20px}.development-timeline>div{display:grid;grid-template-columns:145px 1fr;gap:10px 30px;padding:26px}.development-timeline .timeline-date{margin-bottom:0}.development-timeline h3{font-size:28px}.development-timeline h3+p{grid-column:2;margin-top:0}.detail-pair{gap:50px}.detail-copy h2{font-size:35px}.detail-copy p{font-size:17px}.artifact-pair{gap:25px}.opus-material{gap:55px}.material-copy h2{font-size:34px}.material-copy p{font-size:17px}.material-copy .statement{font-size:25px}.creative-pair{gap:30px}.artwork-gravity{margin-top:80px}.editorial-intro{grid-template-columns:1fr;gap:35px;padding-top:50px;padding-bottom:65px}.editorial-intro h1{font-size:74px;max-width:670px}.editorial-lead{padding-top:0}.writing-list .essay-item{grid-template-columns:170px 1fr;gap:12px 35px}.writing-list .essay-item h3{font-size:30px}.writing-close{gap:25px 50px}.about-intro{gap:50px;grid-template-columns:1.15fr .8fr}.about-title h1{font-size:57px}.about-title>p{margin-top:35px;font-size:26px}.interest-layout{grid-template-columns:1fr;gap:40px}.interest-layout>div{grid-template-columns:1fr 1fr;gap:40px}.interest-layout h3{font-size:27px}.labs-statement p{font-size:55px}.labs-projects{gap:0 45px}.labs-projects h2{font-size:33px}.contact-intro h1{font-size:78px}.image-dialog{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px}.dialog-bar p{font-size:15px}.zoom-note{display:none}}
@media(max-width:580px){:root{--gutter:20px;--heading:34px;--body:17px;--space:76px}.site-header{min-height:88px;gap:20px;position:relative;z-index:5;align-items:center}.wordmark{font-size:18px}.menu-toggle{display:flex;align-items:center;gap:20px;font-size:17px;min-height:44px}.menu-toggle>span{font-size:24px;line-height:1;transition:transform .2s}.menu-toggle[aria-expanded=true]>span{transform:rotate(45deg)}.site-header nav{display:none;position:absolute;left:0;right:0;top:88px;background:var(--ground);padding:22px var(--gutter) 32px;align-items:stretch;flex-direction:column;gap:4px}.site-header nav.is-open{display:flex}.site-header nav a{font-size:25px;line-height:1.25;padding:13px 0;width:fit-content}.site-header .nav-contact{display:block}.site-header nav a::after{display:none}.home-hero{padding-top:45px;padding-bottom:65px}.hero-title{font-size:clamp(62px,15.8vw,91px);letter-spacing:-.035em;line-height:.98}.hero-title span+span{margin-left:0}.hero-bottom{display:block;margin-top:42px}.hero-bottom p{font-size:19px;line-height:1.48;max-width:490px}.hero-bottom .button{margin-top:30px;width:100%;padding:17px 20px;font-size:17px}.selected-work{padding-top:10px}.section-opening{display:block;margin-bottom:32px}.section-opening h2{font-size:34px}.section-opening>p{margin-top:22px;max-width:480px;font-size:17px}.project-featured .project-image{padding:12px;aspect-ratio:1.25}.project-title{margin-top:18px}.project-title h3{font-size:33px}.project-title>span{font-size:25px}.project-summary{font-size:19px;line-height:1.4;margin-top:10px}.project-meta{font-size:15px;line-height:1.5;margin-top:12px}.project-pair{display:block;margin-top:54px}.project-mittee{margin-top:54px}.project-mittee .project-image{aspect-ratio:1.1}.project-opus .project-image{aspect-ratio:1}.project-velogra{width:100%;margin-top:54px}.project-velogra .project-image{aspect-ratio:1.45}.project-velogra .project-image img{object-fit:cover}.project-action{display:none}.question-layout{grid-template-columns:1fr;gap:42px}.question-intro{margin-top:22px}.question-tabs{flex-direction:row;flex-wrap:wrap;gap:8px;margin-top:26px}.question-tabs button{font-size:16px;padding:12px 14px;min-height:46px}.theme-panel h3{font-size:29px}.theme-panel>p{margin-top:15px;margin-bottom:30px;font-size:19px}.theme-panel>a{margin-top:23px;font-size:24px}.theme-panel>a span{font-size:16px;margin-top:9px;max-width:450px}.essay-preview-list{gap:20px}.essay-item.compact{display:block;padding-block:18px}.essay-item.compact .essay-meta{display:flex;flex-wrap:wrap;gap:6px 20px}.essay-item.compact time{margin-top:0}.essay-item.compact>a{margin-top:16px}.essay-item.compact h3{font-size:29px;max-width:420px}.essay-item.compact>p{margin-top:14px}.essay-preview-list .essay-item.compact h3{font-size:29px}.studio-layout{gap:32px}.studio-layout h2{font-size:65px}.studio-layout .statement{font-size:27px}.studio-layout>div>p+p{margin-top:25px}.personal-section{display:flex;flex-direction:column;align-items:stretch;gap:38px}.personal-photo{width:72%;max-width:350px}.personal-photo img{aspect-ratio:.85}.personal-copy h2{font-size:34px}.personal-copy .statement{font-size:26px;margin-top:26px}.personal-copy>p{margin-top:24px;font-size:17px}.site-footer{padding-top:52px}.footer-top>p{font-size:16px;margin-bottom:25px}.footer-invite{font-size:clamp(44px,11vw,64px);line-height:1.04}.footer-bottom{grid-template-columns:1fr;padding-block:48px 26px;gap:26px}.footer-name{font-size:21px}.footer-links{justify-content:flex-start;gap:28px;font-size:16px}.footer-bottom>p{font-size:15px}.case-intro{padding-top:26px}.back-link{font-size:16px;margin-bottom:38px}.case-intro h1{font-size:clamp(63px,16vw,94px)}.case-tagline{font-size:27px;line-height:1.25;margin-top:22px}.case-description{font-size:19px;margin-top:24px;line-height:1.5}.case-meta{margin-top:37px;gap:24px 26px;grid-template-columns:1fr}.case-meta>div:last-child{grid-column:auto}.case-meta dt{margin-bottom:6px;font-size:15px}.case-meta dd{font-size:16px;max-width:440px}.case-hero{margin-top:36px}.protobench-page .case-hero figure>button{padding:10px}.case-hero img{max-height:500px}.opus-page .case-hero img{aspect-ratio:1;object-position:center}.case-toc{margin-top:34px;gap:12px 24px;font-size:16px}figcaption{font-size:15px;margin-top:12px;line-height:1.5}.chapter{gap:26px}.chapter h2{font-size:34px}.chapter-body>p+p{margin-top:23px}.wide-artifact{margin-top:38px}.wide-artifact img{max-height:580px}.relationship-field{padding-block:42px}.diagram-intro{font-size:24px;line-height:1.35}.relationship-path{margin-block:35px;display:grid;grid-template-columns:1fr auto;gap:22px 20px}.relationship-path>div{grid-column:1}.relationship-path>.path-arrow{grid-column:2;transform:rotate(90deg);grid-row:auto;align-self:center}.relationship-path>div>strong{font-size:28px}.relationship-path>div>span{font-size:16px;margin-top:5px}.diagram-caption{font-size:15px}.pullquote blockquote{font-size:25px;line-height:1.4}.pullquote>p{font-size:15px;margin-top:18px}.development-timeline{margin-top:38px;gap:16px}.development-timeline>div{display:block;padding:25px}.development-timeline .timeline-date{font-size:16px;margin-bottom:20px}.development-timeline h3{font-size:29px}.development-timeline h3+p{margin-top:18px;font-size:17px}.stack-note{padding:22px;font-size:16px}.detail-pair{grid-template-columns:1fr;gap:35px}.detail-pair>div:first-child{max-width:420px;width:86%}.fastener-figure img{max-height:480px}.detail-copy h2{font-size:34px}.detail-copy>p{font-size:17px;margin-top:24px}.artifact-pair{grid-template-columns:1fr;gap:38px;margin-top:38px}.artifact-pair img{aspect-ratio:1.35}.next-project{margin-top:0}.next-project>a{font-size:61px;gap:20px;margin-top:20px}.next-project>p:last-child{font-size:17px}.opus-material{grid-template-columns:1fr;gap:38px}.opus-material figure{width:86%;max-width:400px}.opus-material img{max-height:590px}.material-copy h2{font-size:34px}.material-copy p{font-size:17px;margin-top:24px}.material-copy .statement{font-size:26px}.creative-pair{gap:25px;grid-template-columns:1fr 1fr;padding-inline:20px}.artwork-gravity{margin-top:65px}.creative-pair figcaption{font-size:15px}.case-action{justify-content:stretch;margin-top:28px}.case-action .button{width:100%}.editorial-intro{padding-top:45px;padding-bottom:50px;gap:30px}.editorial-intro h1{font-size:clamp(48px,12vw,67px);line-height:1.06;max-width:500px}.editorial-lead>p:first-child{font-size:24px;line-height:1.4}.editorial-lead>p+p{margin-top:24px}.writing-list .essay-item{display:block;padding-block:30px}.writing-list .essay-meta{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px 20px;font-size:15px}.writing-list .essay-item>a{margin-top:17px;gap:22px}.writing-list .essay-item h3{font-size:28px;line-height:1.16}.writing-list .essay-item>p{margin-top:16px;font-size:17px}.writing-list .essay-item:nth-child(even){padding-inline:20px;margin-inline:-20px}.writing-list{padding-bottom:15px}.writing-close{grid-template-columns:1fr;gap:25px;padding-top:50px}.writing-close .statement{font-size:25px}.writing-close>.text-link{grid-column:auto}.about-intro{padding-top:45px;display:flex;flex-direction:column;gap:40px}.about-title h1{font-size:clamp(46px,11.6vw,66px);line-height:1.05;max-width:500px}.about-title>p{font-size:25px;margin-top:30px;max-width:500px}.about-portrait{width:76%;max-width:380px;align-self:flex-end}.about-portrait img{aspect-ratio:.8}.interest-layout>div{grid-template-columns:1fr;gap:37px}.interest-layout h3{font-size:28px}.interest-layout p{font-size:17px;margin-top:18px}.labs-intro h1{font-size:67px}.labs-intro .statement{font-size:26px}.labs-statement p{font-size:clamp(30px,8vw,46px);line-height:1.25;letter-spacing:-.025em}.labs-projects{grid-template-columns:1fr;gap:25px;margin-top:65px}.labs-projects>a{padding-block:10px 25px}.labs-projects>a:nth-child(even){padding-top:10px}.labs-projects h2{font-size:34px}.labs-projects p{margin-top:23px}.contact-intro{padding-top:54px}.contact-intro h1{font-size:clamp(46px,12vw,65px);line-height:1.08}.contact-intro>.statement{font-size:25px;margin-top:33px}.contact-options{margin-top:46px}.contact-options>a{font-size:23px;padding:23px 18px;gap:20px}.contact-note{font-size:16px}.not-found{padding-top:70px;min-height:58vh}.not-found h1{font-size:52px}.image-dialog{padding:13px}.dialog-bar{gap:18px}.dialog-bar p{font-size:15px}.dialog-close{padding:9px 12px;font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.project-link:hover .project-image img{transform:none}}

/* Final reading rhythm and touch-target review. */
.wordmark{padding-block:8px}.text-link{min-height:44px;padding-block:9px}.footer-links a{display:inline-block;padding-block:12px}.fallback-nav{display:flex;gap:16px 28px;flex-wrap:wrap;padding-bottom:22px}.fallback-nav a{padding-block:10px}
@media(min-width:981px){.home-hero{padding-top:clamp(42px,4.2vw,65px);padding-bottom:clamp(52px,5vw,78px)}.hero-title{font-size:clamp(100px,10vw,160px)}.hero-bottom{margin-top:clamp(40px,4vw,64px)}.selected-work .section-opening{margin-bottom:44px}}

.chapter>h2,.studio-layout>h2,.editorial-intro>h1,.interest-layout>h2,.writing-close>h2{align-self:start}.case-toc a{display:inline-flex;align-items:center;min-height:44px;padding-block:6px}

/* Decorative navigation cues stay secondary at every type size and breakpoint. */
.ui-arrow{display:inline-block;width:14px;height:14px;flex-shrink:0;vertical-align:-.08em;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;opacity:.6;transition:opacity .2s var(--ease)}
.essay-arrow,.project-title>span,.footer-invite>span,.next-project>a>span:last-child,.contact-options>a>span:last-child,.path-arrow{font-family:Arial,sans-serif;font-size:16px;font-weight:400;line-height:1;letter-spacing:0}
.footer-invite>span{display:inline-block;margin-left:.35em;vertical-align:middle}
.project-link:hover .project-title>span,.essay-item>a:hover .essay-arrow{transform:none}
a:hover .ui-arrow,a:focus-visible .ui-arrow,button:hover .ui-arrow,button:focus-visible .ui-arrow{opacity:.9}

/* Original signature assets follow the same saved/system mode as the page. */
.site-header .wordmark{position:relative;display:block;flex:0 1 340px;min-width:120px;width:340px;height:64px;padding:0;overflow:hidden}
.wordmark img{position:absolute;left:0;top:50%;width:100%;height:auto;transform:translateY(-50%)}
.wordmark .signature-dark{display:none}
:root[data-color-mode=dark] .wordmark .signature-light{display:none}
:root[data-color-mode=dark] .wordmark .signature-dark{display:block}
@media(max-width:580px){.site-header .wordmark{flex-basis:260px;max-width:260px;height:52px}}

/* Site-wide color modes; photography and project artwork retain their colors. */
:root{color-scheme:light;--brand:#1431a4;--on-brand:#f6f5f1;--control-border:#d9dbd3;--accent-hover:rgba(20,49,164,.08)}
:root[data-color-mode=dark]{color-scheme:dark;--ground:#151716;--paper:#222622;--ink:#eeeee6;--blue:#a8baff;--sand:#262b29;--surface:#202522;--muted:#b0b7ae;--control-border:#414841;--accent-hover:rgba(168,186,255,.1)}
.studio-section,.labs-statement{background:var(--brand);color:var(--on-brand)}
.studio-layout .text-link{color:var(--on-brand)}
.skip{color:var(--ground)}
.question-tabs button:not([aria-selected=true]):hover{background:var(--accent-hover)}
.site-header nav{margin-left:auto}
.header-actions{display:flex;align-items:center;gap:18px;flex-shrink:0}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;min-height:44px;padding:10px;border:1px solid var(--control-border);border-radius:999px;background:transparent;line-height:1}
.theme-toggle[hidden]{display:none}
.theme-toggle:hover{background:var(--surface);border-color:var(--muted)}
.theme-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.theme-sun{display:none}
[data-color-mode=dark] .theme-sun{display:block}
[data-color-mode=dark] .theme-moon{display:none}
@media(max-width:980px){.site-header{gap:24px}}
@media(max-width:580px){.header-actions{margin-left:auto;gap:18px}.site-header{gap:20px}.site-header nav{margin-left:0}}
@media(max-width:360px){.site-header{gap:12px}.header-actions{gap:8px}.menu-toggle{gap:12px}}

/* A persistent, quiet navigation layer above the longer project narratives. */
:root{--header-height:88px}
html{scroll-padding-top:calc(var(--header-height) + 24px)}
.site-chrome{position:sticky;top:0;z-index:30;background:var(--ground)}
.site-header{position:relative;min-height:var(--header-height)}
.skip{z-index:50}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Personal overview; the complete project collection lives at /work/. */
.practice-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(60px,10vw,160px);padding-bottom:var(--space)}
.practice-intro h2{max-width:460px}
.practice-intro>p{margin-top:30px;max-width:430px;font-size:20px;line-height:1.5}
.practice-list article{padding-bottom:28px}
.practice-list article+article{padding-top:28px}
.practice-list h3{font-size:clamp(28px,2.6vw,38px)}
.practice-list p{margin-top:18px;max-width:620px}
.practice-list .practice-detail{font-size:15px;line-height:1.5;color:var(--muted);margin-top:15px}
.personal-threads .question-intro{max-width:420px}
.personal-threads .theme-panel h3{font-size:clamp(29px,2.8vw,41px);max-width:540px}
.personal-threads .theme-panel>p{font-size:20px;line-height:1.5;max-width:570px}
.personal-threads .theme-panel>a{font-size:23px;max-width:570px}
.current-focus{padding-block:var(--space);background:var(--surface)}
.focus-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:clamp(50px,7vw,112px);align-items:center}
.focus-copy h2{font-size:clamp(42px,4.6vw,70px)}
.focus-copy>p:not(.focus-kicker){margin-top:24px}
.focus-copy .statement{font-size:clamp(24px,2.1vw,32px);margin-top:30px}
.focus-copy .text-link{margin-right:24px;font-size:17px}
.focus-image{display:block;background:var(--sand);padding:clamp(14px,2.5vw,40px)}
.focus-image img{aspect-ratio:1.54;object-fit:contain}
.focus-image:hover img{opacity:.92}
.work-intro h1{color:var(--blue)}
.work-page .selected-work{padding-top:0}
.work-close{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:var(--space)}
.work-close h2{max-width:550px;align-self:start}
@media(max-width:980px){
 .practice-section{grid-template-columns:1fr;gap:42px}
 .practice-intro h2{max-width:650px}
 .practice-intro>p{max-width:620px}
 .practice-list{display:grid;grid-template-columns:1fr 1fr;gap:38px}
 .practice-list article,.practice-list article+article{padding:0;border:0}
 .focus-layout{grid-template-columns:1fr;gap:45px}
 .focus-copy{max-width:680px}
 .focus-figure{width:100%}
 .work-close{grid-template-columns:1fr;gap:30px}
}
@media(max-width:580px){
 :root{--header-height:80px}
 .site-header nav{top:100%;max-height:calc(100dvh - var(--header-height) - 12px);overflow-y:auto;background:var(--surface)}
 .practice-intro>p{font-size:19px;margin-top:25px}
 .practice-section{gap:35px}
 .practice-list{grid-template-columns:1fr;gap:33px}
 .practice-list h3{font-size:29px}
 .practice-list p{margin-top:16px}
 .practice-list .practice-detail{font-size:15px;margin-top:12px}
 .personal-threads .theme-panel>p{font-size:19px}
 .personal-threads .theme-panel>a{font-size:23px}
 .focus-layout{gap:35px}
 .focus-copy h2{font-size:43px}
 .focus-copy .statement{font-size:25px}
 .focus-copy .text-link{margin-top:20px}
 .focus-image{padding:12px}
 .work-intro h1{font-size:clamp(55px,13vw,74px)}
 .work-close{grid-template-columns:1fr;gap:26px}
 .work-close .statement{font-size:25px}
}

/* A typographic invitation, followed by connected ways into the practice. */
.curiosity-intro{padding-top:clamp(38px,4.5vw,72px);padding-bottom:clamp(66px,7vw,112px)}
.intro-location{display:flex;justify-content:space-between;gap:24px;font-size:16px;color:var(--muted);margin-bottom:clamp(36px,4.2vw,66px)}
.curiosity-title{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(76px,12.4vw,198px);font-weight:800;line-height:.92;letter-spacing:-.045em;color:var(--blue)}
.curiosity-title>span{display:block;white-space:nowrap}
.curiosity-title>span+span{margin-left:10.5%;margin-top:.04em}
.curiosity-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:65px;margin-top:clamp(42px,5vw,80px)}
.curiosity-bottom>p{max-width:640px;font-size:clamp(21px,1.8vw,28px);line-height:1.45;letter-spacing:-.025em}
.intro-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px;flex-shrink:0}
.intro-actions .button{min-width:228px}
.intro-actions .text-link{margin-top:0;font-size:16px}

/* Exact Spectrum artwork on its own ink field; app imagery stays subordinate. */
.pb-brand-field{background:#141518;color:#fff;padding:clamp(28px,3.3vw,52px);text-align:center}
.pb-signature{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px}
.pb-signature .pb-spectrum{width:156px;height:156px;object-fit:contain}
.pb-signature .pb-wordmark{width:230px;height:auto;object-fit:contain}
.pb-brand-line{font-size:20px;line-height:1.35;letter-spacing:-.02em;max-width:300px;margin:30px auto 0;color:#eef0f4}
.pb-app-inset{display:block;width:82%;max-width:470px;margin:36px auto 0;padding:0;background:none}
.pb-app-inset img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.pb-field-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-top:32px;text-align:left;font-size:13px;line-height:1.5}
.pb-field-note{color:#bfc4cf}
.pb-domain{color:#fff;text-decoration:underline;text-underline-offset:.25em;white-space:nowrap;min-height:36px;display:inline-flex;align-items:center;gap:6px}
.pb-brand-field a:focus-visible,.pb-brand-field button:focus-visible{outline-color:#00f6ff}
.pb-case-showcase .pb-brand-field{display:grid;grid-template-columns:.7fr 1.3fr;gap:25px clamp(30px,5vw,80px);align-items:center;padding:clamp(32px,4vw,64px)}
.pb-case-showcase .pb-signature{grid-column:1;grid-row:1}
.pb-case-showcase .pb-brand-line{grid-column:1;grid-row:2;margin:0 auto;max-width:260px}
.pb-case-showcase .pb-app-inset{grid-column:2;grid-row:1/3;max-width:760px;width:100%;margin:0}
.pb-case-showcase .pb-field-footer{grid-column:1/-1;margin-top:10px}
.protobench-page .case-hero .pb-case-showcase .pb-app-inset{padding:0;background:none}
.brand-direction .image-open{background:#f5f5f2}
.brand-direction img{max-height:none;aspect-ratio:16/9;object-fit:contain}
@media(hover:hover) and (pointer:fine){
 .pb-domain:hover{text-decoration-thickness:2px}
}
@media(prefers-reduced-motion:no-preference){
 .curiosity-title>span{animation:curiosity-arrive 700ms var(--ease) both}
 .curiosity-title>span+span{animation-delay:70ms}
 .curiosity-bottom{animation:curiosity-arrive 700ms 140ms var(--ease) both}
 @keyframes curiosity-arrive{from{opacity:.2;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
 @view-transition{navigation:auto}
 ::view-transition-old(root){animation:route-out 160ms ease both}
 ::view-transition-new(root){animation:route-in 200ms ease both}
 @keyframes route-out{to{opacity:0}}
 @keyframes route-in{from{opacity:0}}
}
@media(max-width:980px){
 .curiosity-title{font-size:12.1vw}
 .curiosity-bottom{gap:40px}
 .curiosity-bottom>p{font-size:22px;max-width:520px}
 .intro-actions .button{min-width:190px;padding:16px 20px;gap:20px}
 .focus-figure{max-width:660px;justify-self:center}
 .pb-case-showcase .pb-wordmark{width:200px}
 .pb-case-showcase .pb-spectrum{width:128px;height:128px}
}
@media(max-width:700px){
 .intro-location{font-size:14px;margin-bottom:36px}
 .curiosity-intro{padding-top:35px;padding-bottom:74px}
 .curiosity-title{font-size:clamp(50px,16vw,108px);line-height:.98}
 .curiosity-title>span+span{margin-left:4%;margin-top:.02em}
 .curiosity-bottom{align-items:start;flex-direction:column;gap:27px;margin-top:38px}
 .curiosity-bottom>p{font-size:21px;max-width:530px}
 .intro-actions{flex-direction:row;align-items:center;gap:25px;flex-wrap:wrap}
 .intro-actions .button{min-width:180px;font-size:16px;padding:15px 18px}
 .pb-brand-field{padding:32px 24px}
 .pb-brand-line{font-size:20px}
 .pb-app-inset{width:88%;margin-top:32px}
 .pb-field-footer{font-size:12px;justify-content:center;text-align:center;gap:6px;margin-top:25px}
 .pb-domain{min-height:44px}
 .pb-case-showcase .pb-brand-field{display:flex;flex-direction:column;gap:0;padding:35px 24px 24px}
 .pb-case-showcase .pb-brand-line{margin-top:28px;max-width:280px}
 .pb-case-showcase .pb-app-inset{width:100%;margin-top:32px}
 .pb-case-showcase .pb-field-footer{margin-top:22px}
}
@media(prefers-reduced-motion:reduce){
 .curiosity-title>span,.curiosity-bottom{animation:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none}
}

/* Interests, questions, projects, and essays form one continuous reading path. */
.curiosity-intro{overflow:clip}
.curiosity-bottom>p>a{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--control-border);text-underline-offset:.2em}
.curiosity-bottom>p>a:hover{color:var(--blue);text-decoration-color:currentColor}
.thread-invitation{display:inline-flex;align-items:center;gap:12px;margin-top:46px;font-size:16px;color:var(--muted);min-height:44px}
.thread-invitation:hover{color:var(--blue)}
.connections{padding-bottom:clamp(70px,9vw,140px);scroll-margin-top:0}
.connections-opening{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,144px);align-items:end;margin-bottom:65px}
.connections-opening h2{font-size:clamp(38px,4.7vw,72px);line-height:1.06}
.connections-opening>p{font-size:clamp(20px,1.8vw,26px);line-height:1.45;max-width:520px}
.thread-layout{display:grid;grid-template-columns:1fr;gap:0}
.thread-preview,.thread-caption{display:none}
.thread-navigation{display:flex;gap:12px 30px;flex-wrap:wrap;font-size:17px;padding-bottom:40px}
.thread-navigation>a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.35em}
.thread-navigation>a:hover,.thread-navigation>a[aria-current=step]{color:var(--blue);text-decoration-color:currentColor}
.thread-step{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,8vw,128px);align-items:center;padding-block:60px;scroll-margin-top:0}
.thread-step:first-child{padding-top:0}
.thread-copy h3{font-size:clamp(34px,3.6vw,56px);line-height:1.08;letter-spacing:-.045em}
.thread-body{font-size:clamp(19px,1.45vw,23px);line-height:1.55;margin-top:26px;max-width:570px}
.thread-evidence{margin-top:30px;max-width:570px}
.thread-evidence>p{font-size:17px;line-height:1.5;color:var(--muted)}
.thread-project-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:18px;line-height:1.4;color:var(--blue);padding-block:12px;min-height:48px;margin-top:12px;text-decoration:underline;text-decoration-thickness:1.5px}
.thread-project-link:hover{text-decoration-thickness:2px}
.thread-evidence>.text-link{font-size:16px;margin-top:0;margin-left:22px}
.thread-essay{display:block;font-size:19px;line-height:1.3;letter-spacing:-.02em;margin-top:18px;max-width:490px}
.thread-essay>span:first-child{display:block;font-size:15px;line-height:1.5;letter-spacing:0;color:var(--muted);margin-bottom:6px}
.thread-essay:hover{color:var(--blue)}
.thread-next{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:15px;color:var(--muted);margin-top:30px}
.thread-next:hover{color:var(--blue)}
.thread-art{display:flex;align-items:center;justify-content:center;aspect-ratio:1.15;overflow:hidden;background:var(--surface)}
.thread-art>img{width:100%;height:100%;object-fit:cover;flex:none}
.thread-art-seeing{background:#100f18}
.thread-art-seeing>img{width:90%;height:90%;object-fit:contain}
.thread-art-feeling>img{object-position:center}
.thread-art-living>img{object-position:center}
.thread-art-making{flex-direction:column;gap:24px;padding:28px;background:#141518;aspect-ratio:auto;min-height:420px}
.thread-art-making .pb-signature{flex-direction:row;gap:30px;flex:none;width:100%}
.thread-art-making .pb-spectrum{width:128px;height:128px}
.thread-art-making .pb-wordmark{width:clamp(140px,15vw,230px)}
.thread-art-making>.thread-pb-app{width:100%;max-width:420px;height:auto;max-height:250px;object-fit:contain}
.thread-pinned{grid-template-columns:1.05fr 1fr;gap:clamp(65px,9vw,144px);align-items:start}
.thread-pinned .thread-stage{position:sticky;top:calc(var(--header-height) + 24px);align-self:start}
.thread-pinned .thread-preview{display:block;position:relative;height:min(43vw,calc(100svh - var(--header-height) - 155px));min-height:320px;overflow:hidden;background:var(--surface)}
.thread-pinned .thread-caption{display:block;font-size:15px;line-height:1.45;color:var(--muted);margin-top:15px;min-height:22px}
.thread-pinned .thread-navigation{justify-content:space-between;gap:8px 16px;font-size:16px;margin-top:12px;padding-bottom:0}
.thread-scene{position:absolute;inset:0;opacity:0;transform:translateY(18px) scale(.985);pointer-events:none;transition:opacity 450ms ease,transform 550ms var(--ease)}
.thread-scene.is-active{opacity:1;transform:translateY(0) scale(1)}
.thread-scene>.thread-art{width:100%;height:100%;aspect-ratio:auto;min-height:0}
.thread-scene .thread-art-making{padding:28px;gap:24px}
.thread-scene .thread-art-making>.thread-pb-app{max-height:24svh}
.thread-immediate .thread-scene{transition:none}
.thread-pinned .thread-step{display:flex;min-height:76svh;padding-block:70px;align-items:center}
.thread-pinned .thread-inline{display:none}
.thread-pinned .thread-step:first-child{padding-top:20px}
.connections-bridge{overflow:clip;background:#1431a4;color:#f6f5f1;padding-block:clamp(75px,9vw,144px)}
.connections-bridge h2{font-family:Archivo Display,Archivo,sans-serif;font-size:clamp(58px,9.5vw,152px);font-weight:800;line-height:.99;letter-spacing:-.04em}
.connections-bridge h2>span{display:block;white-space:nowrap}
.connections-bridge h2>span+span{margin-left:9%}
.bridge-bottom{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-top:58px}
.bridge-bottom>p{font-size:clamp(22px,2vw,30px);line-height:1.4;max-width:720px;letter-spacing:-.02em}
.bridge-bottom>.text-link{flex:none;color:#f6f5f1;font-size:17px;margin-top:0}
.home-practice{padding-top:var(--space)}
.home-writing{padding-top:0}
.home-writing .essay-preview-list{display:block}
.home-writing .essay-item.compact{display:grid;grid-template-columns:.65fr 1.35fr;gap:16px 60px;padding-block:34px}
.home-writing .essay-item.compact>a{margin-top:0}
.home-writing .essay-item.compact h3{font-size:clamp(28px,2.5vw,39px)}
.home-writing .essay-item.compact>p{grid-column:2;margin-top:0}
@media(prefers-reduced-motion:no-preference){
 .curiosity-title>.hero-line{animation:none}
 .hero-line>span{display:inline-block;animation:curiosity-arrive 700ms var(--ease) both}
 .hero-line+ .hero-line>span{animation-delay:70ms}
 @supports(animation-timeline:view()){
  .curiosity-intro{view-timeline:--intro block}
  .curiosity-title>.hero-line{animation:thought-left linear both;animation-timeline:--intro;animation-range:exit 0% exit 85%}
  .curiosity-title>.hero-line+ .hero-line{animation-name:thought-right}
  @keyframes thought-left{from{transform:translateX(0);opacity:1}to{transform:translateX(-5vw);opacity:.3}}
  @keyframes thought-right{from{transform:translateX(0);opacity:1}to{transform:translateX(3vw);opacity:.3}}
  .connections-bridge{view-timeline:--bridge block}
  .connections-bridge h2>span{animation:bridge-left linear both;animation-timeline:--bridge;animation-range:entry 0% entry 90%}
  .connections-bridge h2>span+span{animation-name:bridge-right}
  @keyframes bridge-left{from{transform:translateX(-3vw);opacity:.4}to{transform:translateX(0);opacity:1}}
  @keyframes bridge-right{from{transform:translateX(3vw);opacity:.4}to{transform:translateX(0);opacity:1}}
 }
}
@media(max-width:980px){
 .connections-opening{gap:40px;margin-bottom:38px}
 .connections-opening h2{font-size:45px}
 .connections-opening>p{font-size:20px}
 .thread-step{gap:38px;align-items:start}
 .thread-copy h3{font-size:34px}
 .thread-body{font-size:18px;margin-top:22px}
 .thread-evidence{margin-top:23px}
 .thread-essay{font-size:18px}
 .thread-art{aspect-ratio:1}
 .thread-art-making{aspect-ratio:auto;min-height:360px;padding:22px}
 .thread-art-making .pb-signature{flex-direction:column;gap:25px}
 .thread-art-making .pb-wordmark{width:185px}
 .thread-art-making>.thread-pb-app{margin-top:3px}
 .connections-bridge h2{font-size:9.8vw}
 .bridge-bottom{align-items:start;flex-direction:column;gap:28px;margin-top:38px}
 .bridge-bottom>p{max-width:650px}
}
@media(max-width:580px){
 .curiosity-title>span+span{margin-left:2%}
 .thread-invitation{font-size:15px;margin-top:30px;gap:8px}
 .connections-opening{display:block;margin-bottom:28px}
 .connections-opening h2{font-size:40px}
 .connections-opening>p{font-size:19px;margin-top:25px}
 .thread-navigation{gap:10px 23px;font-size:16px;padding-bottom:30px}
 .thread-step{grid-template-columns:1fr;gap:28px;padding-block:45px}
 .thread-copy h3{font-size:36px}
 .thread-body{font-size:19px;margin-top:23px}
 .thread-evidence{margin-top:25px}
 .thread-evidence>p{font-size:16px}
 .thread-evidence>.text-link{margin-left:18px}
 .thread-next{margin-top:24px}
 .thread-art{aspect-ratio:1.2}
 .thread-art-seeing{aspect-ratio:1.12}
 .thread-art-making{aspect-ratio:auto;min-height:0;padding:25px;gap:27px}
 .thread-art-making .pb-signature{flex-direction:row;gap:22px}
 .thread-art-making .pb-spectrum{width:128px;height:128px}
 .thread-art-making .pb-wordmark{width:140px}
 .thread-art-making>.thread-pb-app{width:100%;max-height:none;margin:0}
 .connections-bridge h2{font-size:12.4vw;line-height:1.05}
 .connections-bridge h2>span+span{margin-left:1%}
 .bridge-bottom{gap:27px;margin-top:32px}
 .bridge-bottom>p{font-size:23px}
 .bridge-bottom>.text-link{font-size:16px}
 .home-writing .essay-item.compact{display:block;padding-block:27px}
 .home-writing .essay-item.compact>a{margin-top:17px}
 .home-writing .essay-item.compact>p{margin-top:17px}
}
@media(prefers-reduced-motion:reduce){
 .thread-scene{transition:none;transform:none}
 .curiosity-title>.hero-line,.hero-line>span,.connections-bridge h2>span{animation:none;transform:none;opacity:1}
}
@media(max-width:380px){
 .thread-copy h3{font-size:32px}
 .home-writing .essay-item.compact h3{font-size:24px}
 .thread-art-making .pb-signature{flex-direction:column;gap:24px}
 .thread-art-making .pb-wordmark{width:180px}
}

/* The first impression is the work itself: an open, asymmetric visual worktable. */
.visual-intro{display:grid;grid-template-columns:minmax(240px,.76fr) minmax(0,1.6fr);gap:28px 5%;padding-top:36px;padding-bottom:90px;align-items:center}
.visual-intro h1{font-family:Archivo,Arial,sans-serif;font-size:clamp(30px,3vw,46px);line-height:1.1;letter-spacing:-.055em;font-weight:500}
.visual-intro-role{font-size:16px;margin-top:20px;color:var(--muted)}
.visual-intro-description{font-size:clamp(19px,1.7vw,24px);line-height:1.5;letter-spacing:-.02em;margin-top:28px;max-width:350px}
.visual-intro-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:30px}
.visual-intro-actions .button{font-size:16px;min-height:52px;padding:15px 20px;gap:35px}
.visual-intro-actions .text-link{margin-top:5px;font-size:16px}
.worktable{position:relative;isolation:isolate;width:100%;aspect-ratio:1.2}
.worktable-piece{position:absolute;display:block;overflow:hidden;transition:transform 420ms var(--ease);transform:rotate(var(--angle));will-change:auto}
.worktable-piece>img{width:100%;height:calc(100% - 36px);object-fit:cover;transition:transform 650ms var(--ease)}
.worktable-tools{left:0;top:4%;width:50%;height:53%;--angle:-4deg;background:#141518;color:#fff;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 18px 40px}
.worktable-pb-identity{width:100%;margin-bottom:22px}
.worktable-pb-identity .pb-signature{flex-direction:row;gap:13px}
.worktable-pb-identity .pb-spectrum{width:45px;height:45px}
.worktable-pb-identity .pb-wordmark{width:132px;max-width:57%;height:auto}
.worktable-tools>img.worktable-app{width:100%;height:auto;object-fit:contain;max-height:58%}
.worktable-touch{width:43%;height:46%;left:54%;top:7%;--angle:4deg;background:#e9e2d7;z-index:1;color:#222}
.worktable-touch>img{object-position:50% 50%;object-fit:cover}
.worktable-play{width:31%;height:35%;left:5%;top:65%;--angle:3deg;background:#100f17;color:#fff;z-index:3}
.worktable-play>img{object-fit:cover}
.worktable-everyday{width:58%;height:38%;left:39%;top:62%;--angle:-3deg;background:#e6e5e1;color:#222;z-index:4}
.worktable-everyday>img{object-fit:contain;object-position:50% 50%}
.worktable-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 13px;background:inherit;font-size:12px;line-height:1.3}
.worktable-caption>span+span{font-size:11px}
.worktable-piece:focus-visible{z-index:6;outline-offset:5px;transform:rotate(0) translateY(-6px)}
.visual-intro-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:24px;font-size:14px;color:var(--muted)}
.visual-intro-footer .thread-invitation{margin:0;font-size:15px;color:var(--ink)}
.visual-intro-footer>p{text-align:right}
@media(hover:hover) and (pointer:fine){
 .worktable-piece:hover{z-index:6;transform:rotate(0) translateY(-8px)}
 .worktable-piece:hover>img{transform:scale(1.025)}
}
@media(prefers-reduced-motion:no-preference){
 .worktable-piece{animation:worktable-arrive 850ms var(--ease) both}
 .worktable-touch{animation-delay:80ms}.worktable-play{animation-delay:160ms}.worktable-everyday{animation-delay:240ms}
 @keyframes worktable-arrive{from{opacity:.35;translate:0 24px;rotate:3deg}to{opacity:1;translate:0 0;rotate:0deg}}
 @supports(animation-timeline:view()){
  .worktable{view-timeline:--worktable block}
  .worktable-pb-identity{animation:worktable-scroll linear both;animation-timeline:--worktable;animation-range:exit 0% exit 100%}
  @keyframes worktable-scroll{from{transform:translateY(0)}to{transform:translateY(-15px)}}
 }
}
@media(min-width:1600px){.visual-intro{gap:40px 7%;padding-top:60px}.worktable{max-width:880px}}
@media(max-width:980px){
 .visual-intro{grid-template-columns:.8fr 1.5fr;gap:24px 4%;padding-top:30px;padding-bottom:75px}
 .visual-intro-description{font-size:19px;margin-top:23px}
 .worktable{aspect-ratio:1.05}
 .worktable-tools{padding:14px 12px 34px}
 .worktable-pb-identity .pb-spectrum{width:32px;height:32px}.worktable-pb-identity .pb-signature{gap:9px}
 .worktable-caption{font-size:11px;padding:9px 10px}.worktable-caption>span+span{display:none}
 .worktable-prompt{display:none}
}
@media(max-width:700px){
 .visual-intro{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:18px;padding-bottom:60px}
 .worktable{order:0;width:100%;aspect-ratio:1.12;margin-bottom:36px}
 .visual-intro-copy{order:1}
 .visual-intro h1{font-size:30px;line-height:1.1}.visual-intro h1 br{display:none}
 .visual-intro-role{margin-top:13px;font-size:15px}
 .visual-intro-description{max-width:540px;margin-top:19px;font-size:19px}
 .visual-intro-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:15px 25px;margin-top:24px}
 .visual-intro-actions .button{min-height:50px;padding:14px 17px;gap:25px}
 .visual-intro-actions .text-link{font-size:15px;margin:0}
 .visual-intro-footer{order:2;margin-top:33px}.visual-intro-footer>p{display:none}
 .worktable-pb-identity{margin-bottom:12px}.worktable-pb-identity .pb-spectrum{width:29px;height:29px}
 .worktable-tools{padding:12px 10px 32px}
}
@media(prefers-reduced-motion:reduce){
 .worktable-piece,.worktable-piece>img{animation:none;transition:none}
 .worktable-piece:hover,.worktable-piece:focus-visible{transform:rotate(var(--angle))}
 .worktable-piece:hover>img{transform:none}
}

/* Native current-app captures keep the complete captured frame at every width. */
.current-captures{align-items:start;gap:clamp(24px,3vw,48px)}
.current-captures img,.current-capture img,.current-internals img{height:auto;aspect-ratio:auto;object-fit:contain;max-height:none}
.current-captures .image-open,.current-capture .image-open,.current-internals .image-open{background:#121316}
.robot-capture{max-width:1160px;margin-inline:auto}
.current-internals{grid-template-columns:1.2fr 1fr;align-items:center}
.current-internals>div:first-child{width:100%;max-width:none}
.current-documents{align-items:center}
@media(max-width:700px){.current-internals{grid-template-columns:1fr}.current-internals>div:first-child{width:100%}.current-captures{gap:36px}}

/* New physical-product studies retain whole objects and original process evidence. */
.project-pair-objects{grid-template-columns:1.05fr .95fr}
.project-pair-objects .project-image{aspect-ratio:3/2}
.project-pair-objects .project-image img{object-fit:contain}
.project-ubi{margin-top:clamp(60px,8vw,120px)}
.boom-page .case-hero img,.ubi-page .case-hero img{aspect-ratio:3/2;max-height:none;object-fit:contain}
.product-study{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(40px,7vw,110px);margin-top:var(--space)}
.product-study-copy h2{margin-top:20px}
.product-study-copy>p:not(.eyebrow){margin-top:26px;max-width:520px}
.product-study figure img,.product-context img{height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain}
.original-process img{height:auto;max-height:none;object-fit:contain}
.boom-page .original-process img{aspect-ratio:16/9}
.ubi-page .original-process img{aspect-ratio:17/11}
.ubi-page .ubi-assembly img{aspect-ratio:33/23}
.original-process .image-open{background:#fff}
.ubi-process-pair{align-items:start}
.ubi-process-pair img{max-height:none;object-fit:contain}
.stakeholder-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(25px,4vw,64px);margin-top:50px}
.stakeholder-strip article{padding-top:24px;border-top:1px solid color-mix(in srgb,var(--muted) 28%,var(--ground))}
.product-study .eyebrow,.stakeholder-strip .eyebrow{font-size:15px;color:var(--muted);letter-spacing:.015em}
.stakeholder-strip h3{font-size:clamp(25px,2.6vw,35px);margin-top:20px;line-height:1.15}
.stakeholder-strip article>p:last-child{margin-top:18px;max-width:350px}
.visual-note{margin-block:60px var(--space);color:var(--muted);font-size:15px;line-height:1.6;max-width:1050px}
@media(max-width:980px){.product-study{grid-template-columns:1fr;gap:36px}.product-study-copy{max-width:650px}.product-study-copy>p:not(.eyebrow){max-width:none}.product-study figure{max-width:850px}.stakeholder-strip{gap:25px}}
@media(max-width:580px){.project-ubi{margin-top:54px}.product-study{gap:30px}.product-study-copy h2{font-size:34px}.product-study-copy>p:not(.eyebrow){margin-top:23px}.stakeholder-strip{grid-template-columns:1fr;gap:30px;margin-top:36px}.stakeholder-strip h3{font-size:28px;margin-top:14px}.stakeholder-strip article>p:last-child{margin-top:13px;max-width:440px}.visual-note{margin-block:38px 60px}.ubi-process-pair{gap:30px}}

.boom-assembly,.ubi-assembly-study{padding-top:var(--space)}
.assembly-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,130px);align-items:start;margin-bottom:48px}
.assembly-intro>p{max-width:760px}
.boom-exploded img,.ubi-exploded img{height:auto;aspect-ratio:3/2;object-fit:contain}
.assembly-components{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,130px);margin-top:32px}
.assembly-components>.eyebrow{font-size:15px;color:var(--muted)}
.assembly-components ol{list-style:none;counter-reset:assembly;display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;margin:0;padding:0;font-size:16px}
.assembly-components li{counter-increment:assembly;display:flex;gap:14px;align-items:baseline;line-height:1.4}
.assembly-components li::before{content:counter(assembly,decimal-leading-zero);color:var(--blue);font-size:13px;font-variant-numeric:tabular-nums}
.assembly-reference{margin-top:38px;border-block:1px solid color-mix(in srgb,var(--muted) 28%,var(--ground))}
.assembly-reference>summary{cursor:pointer;padding-block:20px;font-size:16px;color:var(--blue);width:100%}
.assembly-reference>summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.assembly-reference figure{margin-bottom:28px}
@media(max-width:980px){.assembly-intro{grid-template-columns:1fr;gap:26px;margin-bottom:36px}.assembly-components{grid-template-columns:1fr;gap:20px}}
@media(max-width:580px){.assembly-intro{margin-bottom:28px}.assembly-components ol{grid-template-columns:1fr;gap:12px}.assembly-components{margin-top:24px}.assembly-reference{margin-top:30px}.assembly-reference>summary{min-height:56px}.assembly-intro h2{font-size:34px}}

/* Original prototype photos follow the case study's native image and caption system. */
.prototype-study{margin-top:58px}
.prototype-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:38px clamp(20px,3vw,40px);align-items:start}
.prototype-primary{grid-column:span 3}
.prototype-detail{grid-column:span 2}
.prototype-photo img{height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--surface)}
.prototype-photo .image-open{background:var(--surface)}
.prototype-photo figcaption{font-size:15px;line-height:1.5;color:var(--muted);margin-top:13px}
.prototype-view{display:block;color:var(--ink);font-size:16px;margin-bottom:3px}
.prototype-source-note{font-size:15px;color:var(--muted);margin-top:28px}
.prototype-reference{margin-top:24px}
@media(max-width:700px){.prototype-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px}.prototype-primary,.prototype-detail{grid-column:span 1}.prototype-detail:last-child{max-width:calc(50% - 11px);grid-column:1/-1}}
@media(max-width:480px){.prototype-study{margin-top:34px}.prototype-gallery{grid-template-columns:1fr;gap:30px}.prototype-primary,.prototype-detail,.prototype-detail:last-child{grid-column:auto;max-width:none}.prototype-source-note{margin-top:24px}}

/* Shared editorial scale: measured reading columns and quieter visual hierarchy. */
:root{
 --page-width:1160px;
 --reading-measure:62ch;
 --space:clamp(60px,6vw,92px);
 --gutter:clamp(24px,4.5vw,56px);
 --body:17px;
 --lead:clamp(20px,1.8vw,24px);
 --heading:clamp(30px,3vw,42px);
 --display:clamp(42px,4.6vw,68px);
 --header-height:80px;
}
.wrap{max-width:var(--page-width)}
h3{font-size:clamp(23px,2vw,29px);line-height:1.18}
.site-header{gap:28px}
.site-header nav{font-size:15px;gap:clamp(22px,2.2vw,32px)}
.wordmark{font-size:18px}
.statement{font-size:clamp(22px,2vw,28px);line-height:1.45}
.case-intro h1,.editorial-intro h1,.about-title h1,.contact-intro h1,.labs-intro h1,.work-intro h1{font-size:var(--display);line-height:1.06}
.case-intro{padding-top:28px}
.back-link{margin-bottom:30px;font-size:15px}
.case-tagline{font-size:clamp(22px,2.1vw,30px);line-height:1.35;margin-top:20px}
.case-description{font-size:18px;line-height:1.6;max-width:64ch;margin-top:22px}
.case-hero{margin-top:40px;max-width:1040px}
.case-meta{margin-top:40px;gap:28px}
.case-meta dt{font-size:14px;margin-bottom:7px}
.case-meta dd{font-size:16px;line-height:1.55}
.case-toc{margin-top:30px;gap:8px 26px;font-size:15px}
.chapter,.assembly-intro,.interest-layout{column-gap:clamp(36px,5vw,70px)}
.chapter-body,.assembly-intro>p,.material-copy>p,.detail-copy>p,.interest-layout p{max-width:var(--reading-measure)}
.chapter h2,.assembly-intro h2,.detail-copy h2,.material-copy h2,.product-study-copy h2{font-size:var(--heading);line-height:1.15}
.chapter-body>p+p{margin-top:22px}
.wide-artifact{max-width:1040px;margin-top:48px}
.artifact-pair{margin-top:48px;gap:30px}
.pullquote blockquote{font-size:clamp(25px,2.3vw,31px);max-width:43ch}
.relationship-path strong{font-size:clamp(22px,2vw,29px)}
.development-timeline{gap:24px;margin-top:44px}
.development-timeline>div{padding:24px}
.development-timeline h3{font-size:24px;line-height:1.2}
.timeline-date{margin-bottom:24px}
.next-project>a{font-size:clamp(38px,4.2vw,60px)}
.editorial-intro{padding-top:44px;padding-bottom:48px;gap:48px}
.editorial-lead{padding-top:4px}
.editorial-lead>p:first-child{font-size:21px;line-height:1.5;max-width:48ch}
.editorial-lead>p+p{margin-top:22px;max-width:var(--reading-measure)}
.project-title{margin-top:18px}
.project-title h3{font-size:clamp(26px,2.5vw,32px)}
.project-summary{font-size:18px;line-height:1.55;max-width:56ch}
.project-meta{font-size:14px;margin-top:10px}
.project-featured .project-image{aspect-ratio:2;max-height:520px;padding:clamp(18px,2.4vw,34px)}
.project-pair{margin-top:72px;gap:clamp(32px,5vw,64px)}
.project-mittee{margin-top:90px}
.project-ubi,.project-velogra{margin-top:72px}
.writing-list .essay-item{grid-template-columns:190px 1fr;gap:12px 42px;padding-block:28px}
.writing-list .essay-item h3,.home-writing .essay-item.compact h3{font-size:clamp(24px,2.2vw,30px);line-height:1.22}
.essay-meta{font-size:14px;line-height:1.5}
.essay-item>p{max-width:60ch}
.home-writing .essay-item.compact{grid-template-columns:.65fr 1.35fr;gap:12px 42px;padding-block:28px}
.about-intro{padding-top:44px;gap:64px}
.about-title>p{margin-top:30px;max-width:40ch}
.about-portrait{max-width:280px;justify-self:end}
.interest-layout h3,.practice-list h3{font-size:26px;line-height:1.2}
.labs-statement p{font-size:clamp(30px,3.5vw,48px);line-height:1.25;max-width:30ch}
.labs-projects{gap:0 64px}
.labs-projects h2{font-size:32px}
.contact-intro{padding-top:48px}
.contact-intro>.statement{max-width:42ch;margin-top:30px}
.contact-options{margin-top:44px;max-width:740px}
.contact-options>a{font-size:24px;padding:22px}
.site-footer{padding-top:48px}
.footer-top>p{font-size:16px;margin-bottom:18px}
.footer-invite{font-size:clamp(36px,4.3vw,58px);line-height:1.12}
.footer-bottom{padding-top:42px;font-size:14px;gap:22px}
.footer-name{font-size:19px}
.footer-bottom>p{font-size:14px}
.visual-intro{grid-template-columns:.85fr 1.35fr;gap:28px 6%;padding-top:24px;padding-bottom:64px}
.visual-intro h1{font-size:clamp(29px,2.8vw,36px);line-height:1.12}
.visual-intro-role{font-size:15px;margin-top:15px}
.visual-intro-description{font-size:18px;line-height:1.6;max-width:32ch;margin-top:22px}
.visual-intro-actions{margin-top:24px;gap:8px}
.visual-intro-actions .button{min-height:46px;padding:12px 16px;font-size:15px;gap:24px}
.visual-intro-actions .text-link{font-size:15px}
.worktable{max-width:620px;justify-self:end}
.visual-intro-footer{font-size:13px;margin-top:16px}
.visual-intro-footer .thread-invitation{font-size:14px}
.connections{padding-bottom:var(--space)}
.connections-opening{column-gap:64px;margin-bottom:40px}
.connections-opening h2{font-size:var(--heading);line-height:1.12}
.connections-opening>p{font-size:18px;line-height:1.6;max-width:45ch}
.thread-pinned{grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,72px)}
.thread-pinned .thread-stage{top:calc(var(--header-height) + 20px)}
.thread-pinned .thread-preview{height:min(34vw,420px,calc(100svh - var(--header-height) - 140px));min-height:280px}
.thread-copy h3{font-size:clamp(28px,2.8vw,38px);line-height:1.14}
.thread-body{font-size:18px;line-height:1.6;margin-top:20px;max-width:48ch}
.thread-evidence{margin-top:22px;max-width:48ch}
.thread-evidence>p{font-size:15px}
.thread-project-link{font-size:16px;gap:24px;min-height:44px;margin-top:8px;padding-block:10px}
.thread-evidence>.text-link{font-size:15px;margin-left:14px}
.thread-essay{font-size:17px;line-height:1.4;margin-top:14px}
.thread-essay>span:first-child{font-size:13px;margin-bottom:5px}
.thread-next{font-size:14px;margin-top:20px}
.thread-pinned .thread-caption{font-size:13px;line-height:1.5;margin-top:12px}
.thread-pinned .thread-navigation{font-size:14px;margin-top:8px}
.thread-pinned .thread-step{min-height:64svh;padding-block:40px}
.thread-pinned .thread-step:first-child{padding-top:12px}
.thread-scene .thread-art-making{padding:26px;gap:24px}
.thread-art-making .pb-spectrum{width:88px;height:88px}
.thread-art-making .pb-wordmark{width:180px}
.thread-art-making .pb-signature{gap:22px}
.thread-scene .thread-art-making>.thread-pb-app{max-width:340px;max-height:195px}
.connections-bridge{padding-block:64px}
.connections-bridge h2{font-size:clamp(44px,5.8vw,76px);line-height:1.06}
.bridge-bottom{margin-top:34px;gap:40px}
.bridge-bottom>p{font-size:20px;line-height:1.5;max-width:48ch}
.bridge-bottom>.text-link{font-size:15px}
.focus-layout{grid-template-columns:1fr 1.1fr;gap:56px}
.focus-copy h2{font-size:var(--heading);line-height:1.12}
.focus-copy .statement{font-size:23px;margin-top:22px}
.focus-copy>p:not(.focus-kicker){margin-top:20px}
.focus-copy .text-link{font-size:15px;margin-right:16px}
.pb-brand-field{padding:30px}
.pb-brand-field .pb-signature .pb-spectrum{width:112px;height:112px}
.pb-brand-field .pb-signature .pb-wordmark{width:195px}
.pb-brand-line{font-size:18px;margin-top:24px}
.pb-app-inset{max-width:360px;margin-top:26px}
.pb-case-showcase .pb-brand-field{padding:32px;gap:20px 48px}
.pb-case-showcase .pb-app-inset{max-width:580px}
.practice-section{gap:64px}
.practice-intro>p{font-size:18px;line-height:1.6;margin-top:24px;max-width:38ch}
.practice-list p{margin-top:14px;max-width:54ch}
.prototype-study{margin-top:44px}
.prototype-gallery{gap:30px 26px}
@media(max-width:980px){
 :root{--gutter:32px;--heading:34px;--space:64px;--display:52px}
 .visual-intro{grid-template-columns:.85fr 1.3fr;gap:26px 5%}
 .visual-intro h1{font-size:30px}
 .visual-intro-description{font-size:17px}
 .thread-step{gap:32px;padding-block:44px}
 .thread-art-making{min-height:300px;padding:22px}
 .thread-copy h3{font-size:30px}
 .thread-body{font-size:17px}
 .thread-art-making .pb-signature{gap:18px}
 .thread-art-making>.thread-pb-app{max-height:200px}
 .focus-layout{grid-template-columns:1fr;gap:32px}
 .focus-copy{max-width:56ch}
 .focus-figure{max-width:460px}
 .practice-section{gap:32px}
 .editorial-intro{gap:26px;padding-block:32px 40px}
 .editorial-lead>p:first-child{font-size:20px;max-width:54ch}
 .writing-list .essay-item{grid-template-columns:155px 1fr;gap:12px 28px}
 .about-intro{gap:36px}
 .about-title h1{font-size:46px}
 .about-title>p{font-size:23px}
 .chapter,.assembly-intro{gap:24px}
 .case-description{font-size:18px}
 .bridge-bottom{gap:24px}
 .connections-bridge h2{font-size:clamp(44px,7vw,64px)}
}
@media(max-width:700px){
 .visual-intro{display:flex;padding-bottom:48px}
 .worktable{max-width:480px;align-self:center;aspect-ratio:1.12;margin-bottom:30px}
 .visual-intro-description{max-width:46ch}
 .visual-intro-footer{margin-top:26px}
 .pb-case-showcase .pb-brand-field{padding:26px}
 .connections-opening{gap:28px}
 .prototype-gallery{column-gap:22px}
 .connections-opening>p{font-size:17px}
 .connections-bridge{padding-block:48px}
 .bridge-bottom>p{font-size:18px}
 .home-writing .essay-item.compact{gap:12px 28px}
}
@media(max-width:580px){
 :root{--gutter:24px;--heading:29px;--display:44px;--space:56px;--header-height:72px}
 .site-header{gap:18px}
 .site-header nav{gap:4px}
 .site-header nav a{font-size:21px}
 .site-header .wordmark{font-size:17px}
 .header-actions{gap:14px}
 .menu-toggle{font-size:15px;gap:12px}
 .statement{font-size:22px}
 .case-intro{padding-top:22px}
 .case-tagline{font-size:23px;margin-top:18px}
 .case-description{font-size:17px;margin-top:20px}
 .case-meta{margin-top:30px;gap:20px}
 .case-hero{margin-top:30px}
 .case-toc{font-size:14px;gap:6px 20px;margin-top:24px}
 .chapter h2,.assembly-intro h2,.product-study-copy h2{font-size:29px}
 .wide-artifact,.prototype-study,.artifact-pair{margin-top:34px}
 .project-title h3{font-size:27px}
 .project-summary{font-size:17px;line-height:1.55}
 .project-featured .project-image{aspect-ratio:1.5;padding:14px}
 .project-pair,.project-mittee,.project-ubi,.project-velogra{margin-top:44px}
 .writing-list .essay-item,.home-writing .essay-item.compact{display:block;padding-block:24px}
 .writing-list .essay-item h3,.home-writing .essay-item.compact h3{font-size:25px}
 .home-writing .essay-item.compact>a{margin-top:14px}
 .home-writing .essay-item.compact>p{margin-top:14px}
 .about-intro{padding-top:30px;gap:28px}
 .about-title h1{font-size:40px}
 .about-title>p{font-size:22px;margin-top:24px}
 .about-portrait{width:65%;max-width:240px}
 .interest-layout h3,.practice-list h3{font-size:24px}
 .labs-statement p{font-size:30px}
 .labs-projects h2{font-size:28px}
 .contact-intro{padding-top:32px}
 .contact-options>a{font-size:21px;padding:20px 16px}
 .footer-invite{font-size:36px}
 .footer-bottom{padding-top:30px}
 .footer-links{gap:20px;font-size:14px}
 .visual-intro{padding-top:18px}
 .visual-intro h1{font-size:29px}
 .visual-intro-description{font-size:17px}
 .visual-intro-actions{gap:12px 20px}
 .visual-intro-actions .button{min-height:46px;padding:12px 15px;font-size:14px}
 .visual-intro-actions .text-link{font-size:14px}
 .connections-opening h2{font-size:31px}
 .connections-opening>p{margin-top:20px}
 .thread-navigation{font-size:15px;gap:6px 20px;padding-bottom:24px}
 .thread-step{gap:24px;padding-block:36px}
 .thread-copy h3{font-size:29px}
 .thread-body{font-size:17px;margin-top:18px}
 .thread-evidence{margin-top:20px}
 .thread-art-making{min-height:0;padding:24px;gap:22px}
 .thread-art-making .pb-signature{flex-direction:row;gap:18px}
 .thread-art-making .pb-spectrum{width:clamp(64px,20vw,72px);height:auto;aspect-ratio:1}
 .thread-art-making .pb-wordmark{width:138px}
 .thread-art-making>.thread-pb-app{max-height:190px}
 .connections-bridge h2{font-size:clamp(37px,8.7vw,50px)}
 .connections-bridge h2>span+span{margin-left:2%}
 .focus-copy h2{font-size:32px}
 .focus-copy .statement{font-size:22px}
 .practice-intro>p{font-size:17px;margin-top:20px}
 .pb-brand-field{padding:26px 22px}
 .pb-brand-line{font-size:17px}
 .next-project>a{font-size:42px}
 .prototype-gallery{gap:28px 22px}
}

/* Current product evidence stays compact in the overview and expands on request. */
.pb-feature-overview{margin-top:52px}
.pb-feature-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:26px}
.pb-feature-heading h3{font-size:24px;line-height:1.2}
.pb-feature-heading .text-link{margin-top:0;font-size:15px}
.pb-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.pb-feature-card{min-width:0}
.pb-feature-card h4{margin:0 0 14px;font-size:16px;font-weight:500;line-height:1.4}
.pb-feature-card h4 a{display:inline-flex;align-items:center;gap:12px;min-height:44px}
.pb-feature-card h4 a:hover{color:var(--blue)}
.pb-feature-card .image-open{background:#121316}
.pb-feature-card img{aspect-ratio:1.45;object-fit:contain;height:auto;background:#121316}
.pb-feature-card figcaption{font-size:13px;line-height:1.5;margin-top:12px}
.pcb-study{margin-top:56px}
.pcb-study-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,5vw,70px);align-items:start;margin-bottom:30px}
.pcb-study-intro h3{font-size:29px;line-height:1.18}
.pcb-study-intro p{max-width:62ch}
.pcb-study-images{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:32px;align-items:start}
.pcb-study-images .image-open{background:#121316}
.pcb-study-images img{height:auto;object-fit:contain}
.agent-capture{max-width:1040px}
.robot-capture{max-width:940px}
.focus-figure .pb-brand-field{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:18px 22px;padding:26px}
.focus-figure .pb-signature{grid-column:1;grid-row:1;gap:20px}
.focus-figure .pb-signature .pb-spectrum{width:80px;height:80px}
.focus-figure .pb-signature .pb-wordmark{width:160px;max-width:100%}
.focus-figure .pb-brand-line{grid-column:1;grid-row:2;margin:0;font-size:17px;max-width:180px}
.focus-figure .pb-app-inset{grid-column:2;grid-row:1/3;width:100%;max-width:none;margin:0}
.focus-figure .pb-app-inset img{max-height:310px;object-fit:contain}
.focus-figure .pb-field-footer{grid-column:1/-1;margin-top:4px;font-size:12px;gap:12px}
.worktable-tools{display:grid;grid-template-columns:.9fr 1.1fr;gap:10px;padding:18px 14px 38px}
.worktable-tools .worktable-pb-identity{width:100%;margin:0}
.worktable-tools .pb-signature{flex-direction:column;gap:14px}
.worktable-tools .pb-spectrum{width:40px;height:40px}
.worktable-tools .pb-wordmark{width:116px;max-width:100%}
.worktable-tools>img.worktable-app{width:100%;height:auto;max-height:100%;object-fit:contain}
.thread-art-making,.thread-scene .thread-art-making{display:grid;grid-template-columns:.95fr 1.05fr;gap:20px}
.thread-art-making .pb-signature{width:100%;flex-direction:column;gap:24px}
.thread-art-making .pb-wordmark{width:180px;max-width:100%}
.thread-art-making>.thread-pb-app,.thread-scene .thread-art-making>.thread-pb-app{width:100%;height:auto;max-height:340px}
@media(max-width:980px){
 .worktable-tools{padding:14px 12px 34px}
 .worktable-tools .pb-spectrum{width:32px;height:32px}
 .pb-feature-grid{gap:20px}
 .pb-feature-heading{margin-bottom:18px}
 .pcb-study-intro{grid-template-columns:1fr;gap:20px}
}
@media(max-width:700px){
 .thread-art-making{min-height:0}
 .thread-art-making .pb-signature{gap:18px}
 .thread-art-making>.thread-pb-app{max-height:240px}
 .pb-feature-overview{margin-top:36px}
 .pb-feature-heading{align-items:start;gap:18px}
 .pb-feature-heading h3{font-size:22px}
 .pb-feature-heading .text-link{font-size:14px;max-width:135px}
 .pb-feature-grid{display:flex;overflow-x:auto;gap:20px;scroll-snap-type:x proximity;padding-bottom:14px}
 .pb-feature-card{flex:0 0 86%;max-width:340px;scroll-snap-align:start}
 .pcb-study-images{grid-template-columns:1fr;gap:28px}
 .pcb-study-images>figure:last-child{max-width:320px;width:100%;justify-self:center}
 .pcb-study{margin-top:38px}
 .pcb-study-intro h3{font-size:26px}
}
@media(max-width:580px){
 .focus-figure .pb-brand-field{padding:22px;gap:16px 18px}
 .pb-feature-heading{display:block}
 .pb-feature-heading .text-link{max-width:none;margin-top:8px}
 .focus-figure .pb-app-inset img{max-height:230px}
 .focus-figure .pb-brand-line{font-size:15px}
 .focus-figure .pb-field-footer{justify-content:center;gap:6px}
 .worktable-tools{padding:12px 10px 32px;gap:8px}
 .worktable-tools .pb-wordmark{display:none}
 .worktable-tools .pb-spectrum{width:30px;height:30px}
 .thread-art-making .pb-signature{flex-direction:column}
 .thread-art-making>.thread-pb-app{max-height:220px}
}
/* Additional case studies use the existing reading canvas and image dialog. */
.project-pair-added .project{width:100%;margin-top:0}
.project-pair-added .project-image{aspect-ratio:3/2;max-height:none;padding:0;background:var(--surface)}
.project-pair-added .project-image img{height:100%;object-fit:contain}
.project-pair-added .project-title h3{font-size:clamp(27px,2.5vw,34px)}
.kasa-page .case-hero img,.digital-vocabularies-page .case-hero img,.localmacllm-page .case-hero img{aspect-ratio:3/2;max-height:none;object-fit:contain}
.localmacllm-page .case-hero img{aspect-ratio:8/5}
.localmacllm-page .case-intro h1{font-size:clamp(39px,4.6vw,68px)}
.digital-vocabularies-page .case-intro h1{max-width:15ch;margin-inline:auto;font-size:var(--display)}
.kasa-page .original-process img,.digital-vocabularies-page .original-process img{aspect-ratio:auto;object-fit:contain}
.kasa-page .artifact-pair:not(.original-process) img{aspect-ratio:16/9;object-fit:contain}
.project-resources{display:flex;align-items:flex-start;flex-direction:column;gap:4px}
.project-resources .text-link{margin-top:12px}
.source-deck{margin-top:64px}
.source-deck details{border-top:1px solid var(--muted);border-bottom:1px solid var(--muted)}
.source-deck summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding-block:20px;cursor:pointer;color:var(--blue);font-size:18px;list-style:revert}
.source-deck summary::before{content:'+';font-size:25px}
.source-deck details[open]>summary::before{content:'−'}
.source-deck summary>span{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:14px}
.source-deck summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}
.source-deck .presentation-disclosure>summary{justify-content:flex-start;flex-wrap:nowrap;gap:18px}
.presentation-disclosure>summary::before{flex-shrink:0}
.source-deck-pages{display:grid;grid-template-columns:1fr 1fr;gap:40px 28px;padding:18px 0 36px}
.source-deck-pages img{aspect-ratio:auto;object-fit:contain;background:#fff}
.source-deck-pages figcaption{font-size:14px}
.presentation-deck{padding:18px 0 24px}
.presentation-slide+.presentation-slide{margin-top:28px}
.presentation-slide img{aspect-ratio:16/9;object-fit:contain;background:#fff}
.presentation-slide[hidden]{display:none}
.presentation-deck.is-ready .presentation-slides{aspect-ratio:16/9;max-height:max(160px,calc(100svh - 260px));background:#fff}
.presentation-deck.is-ready .presentation-slide,.presentation-deck.is-ready .presentation-slide figure,.presentation-deck.is-ready .presentation-slide .image-open{height:100%}
.presentation-deck.is-ready .presentation-slide{margin-top:0}
.presentation-deck.is-ready .presentation-slide img{height:100%;aspect-ratio:auto}
.presentation-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;padding-top:18px}
.presentation-controls[hidden],.presentation-help[hidden]{display:none}
.presentation-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:11px 17px;background:var(--surface);color:var(--blue);font-size:16px;line-height:1.3}
.presentation-button:hover{background:var(--blue);color:var(--ground)}
.presentation-button:first-child{justify-self:start}
.presentation-button:last-child{justify-self:end}
.presentation-count{font-size:15px;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.presentation-help{font-size:14px;color:var(--muted);margin-top:14px}
@media(max-width:480px){.presentation-controls{gap:12px}.presentation-button{width:46px;padding:12px}.presentation-button-text{display:none}.presentation-count{font-size:14px}}
.pipeline-study{margin-top:48px}
.pipeline-study ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 36px;list-style:none;margin:0;padding:0}
.pipeline-study li{border-top:1px solid var(--muted);padding:24px 0 34px}
.pipeline-number{display:block;color:var(--blue);font-size:15px;margin-bottom:20px}
.pipeline-study h3{font-size:30px}
.pipeline-study .pipeline-tool{color:var(--blue);font-size:15px;margin-top:10px;margin-bottom:15px}
.pipeline-study li>p:last-child{font-size:17px;line-height:1.55;color:var(--muted)}
.source-study{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center;margin-top:var(--space)}
.source-study h2{margin-top:14px}
.source-study>div>p:not(.eyebrow){margin-top:24px;max-width:40ch}
.source-code{min-width:0;padding:30px;background:#101c31;color:#e4ebf8}
.source-code>p{margin:0!important;color:#a8b8d1;font-family:monospace;font-size:13px;overflow-wrap:anywhere}
.source-code pre{font-size:clamp(12px,1.25vw,16px);line-height:1.8;overflow-x:auto;margin:28px 0 0;tab-size:4}
.source-code code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.further-work{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;margin-top:var(--space);margin-bottom:var(--space)}
.further-work h2{font-size:clamp(31px,3.4vw,44px);margin-top:18px}
.further-work-links>a{display:flex;flex-direction:column;gap:7px;padding:22px 0;border-top:1px solid var(--muted)}
.further-work-links>a>span:first-child{font-size:25px;letter-spacing:-.035em}
.further-work-links>a>span:last-child{font-size:15px;color:var(--muted)}
.further-work-links>a:hover>span:first-child{color:var(--blue)}
@media(max-width:760px){
 .source-study,.further-work{grid-template-columns:1fr;gap:32px}
 .pipeline-study ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
 .source-deck-pages{grid-template-columns:1fr}
}
@media(max-width:580px){
 .project-pair-added .project+.project{margin-top:44px}
 .source-deck summary{flex-wrap:wrap;gap:8px 14px;font-size:17px}
 .source-deck summary>span{width:100%;margin-left:28px}
 .source-code{padding:20px 15px}
 .source-code pre{font-size:12px}
 .pipeline-study ol{grid-template-columns:1fr}
 .pipeline-study h3{font-size:27px}
 .pipeline-study li{padding-bottom:25px}
}
