:root{--gallery-putty:#c4c3b6;--gallery-ink:#050505;--gallery-bone:#e7e5e4;--gallery-chalk:#ebebeb;--gallery-vellum:#a9a79d;--gallery-graphite:#595855;--gallery-paper:#fff;--gallery-serif:var(--font-playfair),Georgia,serif;--gallery-sans:var(--font-inter),"Helvetica Neue",sans-serif}body:has(.gallery-page){background:var(--gallery-putty);color:var(--gallery-ink)}:is(body:has(.gallery-page) .prototype-header,body:has(.gallery-page) .prototype-footer,body:has(.gallery-detail-page) .prototype-header,body:has(.gallery-detail-page) .prototype-footer,body:has(.gallery-archive-page) .prototype-header,body:has(.gallery-archive-page) .prototype-footer,body:has(.gallery-role-page) .prototype-header,body:has(.gallery-role-page) .prototype-footer,body:has(.gallery-certificate-page) .prototype-header,body:has(.gallery-certificate-page) .prototype-footer,body:has(.gallery-hobby-page) .prototype-header,body:has(.gallery-hobby-page) .prototype-footer,body:has(.gallery-sidequest-page) .prototype-header,body:has(.gallery-sidequest-page) .prototype-footer),:is(body:has(.gallery-blog-post) .prototype-header,body:has(.gallery-blog-post) .prototype-footer){display:none}.gallery-page{background:var(--gallery-putty);color:var(--gallery-ink);font-family:var(--gallery-sans);overflow:clip}.gallery-page a{color:inherit;text-decoration:none}.gallery-hero{background:var(--gallery-putty);isolation:isolate;min-height:max(760px,100svh);position:relative;overflow:hidden}.gallery-nav,.gallery-section-meta,.gallery-footer{justify-content:space-between;align-items:center;gap:24px;font-size:12px;line-height:1.25;display:flex}.gallery-nav{z-index:3;padding:22px 28px;position:relative}.gallery-monogram{width:38px;height:38px;font-family:var(--gallery-serif);letter-spacing:-.04em;border:1px solid;border-radius:50%;place-items:center;font-size:13px;display:grid}.gallery-nav-links{gap:24px;display:flex}.gallery-nav-links a,.gallery-contact-links>a:not(.gallery-pill){position:relative}.gallery-nav-links a:after,.gallery-contact-links>a:not(.gallery-pill):after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .24s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.gallery-nav-links a:hover:after,.gallery-contact-links>a:not(.gallery-pill):hover:after{transform-origin:0;transform:scaleX(1)}.gallery-contact-trigger{font:inherit;cursor:pointer;border:0}.gallery-contact-trigger.gallery-pill{justify-content:center}.gallery-contact-trigger-nav{color:inherit;background:0 0;padding:0;position:relative}.gallery-contact-trigger-nav:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .24s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.gallery-contact-trigger-nav:hover:after,.gallery-contact-trigger-nav:focus-visible:after{transform-origin:0;transform:scaleX(1)}.gallery-hero-cluster{z-index:2;text-align:center;flex-direction:column;align-items:center;max-width:780px;margin:clamp(80px,12vh,140px) auto 0;padding:0 24px;animation:.9s cubic-bezier(.2,.7,.2,1) both gallery-rise;display:flex;position:relative}.gallery-kicker,.gallery-card-label,.gallery-project-skill,.gallery-scroll-label{letter-spacing:.13em;text-transform:uppercase;font-size:11px;font-weight:500}.gallery-hero-title{font-family:var(--gallery-serif);letter-spacing:-.055em;margin:0 0 17px;font-size:clamp(58px,6vw,86px);font-weight:400;line-height:.88}.gallery-hero-statement{color:#4f4f49;font-family:var(--gallery-serif);letter-spacing:-.035em;margin:0 0 17px;font-size:clamp(28px,2.8vw,40px);font-weight:400;line-height:.96}.gallery-hero-statement em,.gallery-contact h2 em{font-weight:400}.gallery-intro{color:#262622;max-width:530px;font-size:15px;line-height:1.55}.gallery-pill{border:1px solid var(--gallery-ink);background:var(--gallery-ink);border-radius:28.8px;align-items:center;gap:8px;min-height:34px;margin-top:24px;padding:9px 17px;font-size:12px;transition:background .22s,color .22s;display:inline-flex;color:var(--gallery-paper)!important}.gallery-pill:hover,.gallery-pill-outline{background:0 0;color:var(--gallery-ink)!important}.gallery-pill-outline:hover{background:var(--gallery-ink);color:var(--gallery-paper)!important}.gallery-hero-actions{justify-content:center;align-items:center;gap:22px;margin-top:24px;display:flex}.gallery-hero-actions .gallery-pill{margin-top:0}.gallery-hero-link{border-bottom:1px solid #77776f;align-items:center;gap:7px;padding:8px 1px 5px;font-size:12px;display:inline-flex}.gallery-hero-link svg{transition:transform .22s}.gallery-hero-link:hover svg{transform:translateY(3px)}.gallery-wordmark{z-index:1;font-family:var(--gallery-serif);letter-spacing:-.07em;white-space:nowrap;font-size:clamp(112px,16vw,285px);font-weight:700;line-height:.84;animation:1.1s cubic-bezier(.2,.7,.2,1) .18s both gallery-wordmark;position:absolute;bottom:-.11em;left:50%;translate:-50%}.gallery-hero-meta{z-index:2;color:var(--gallery-graphite);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;font-size:10px;display:flex;position:absolute;bottom:20px;left:28px;right:28px}.gallery-portrait-panel{background:var(--gallery-graphite);place-items:center;min-height:920px;display:grid;position:relative;overflow:hidden}.gallery-panel-art{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:contrast(.92)brightness(.88);transform:scale(1.01)}.gallery-portrait-panel:after{content:"";pointer-events:none;background:#0000001f;position:absolute;inset:0}.gallery-panel-index{z-index:2;color:var(--gallery-paper);letter-spacing:.1em;font-size:11px;position:absolute;top:24px;right:28px}.gallery-notched-card{z-index:3;background:var(--gallery-ink);width:min(440px,100vw - 40px);min-height:480px;color:var(--gallery-paper);text-align:center;clip-path:polygon(22px 0,calc(100% - 22px) 0,100% 22px,100% calc(100% - 22px),calc(100% - 22px) 100%,22px 100%,0 calc(100% - 22px),0 22px);flex-direction:column;align-items:center;padding:54px 48px 42px;display:flex;position:relative}.gallery-portrait{filter:grayscale()contrast(.95);border-radius:50%;width:156px;height:156px;margin-bottom:24px;position:relative;overflow:hidden}.gallery-portrait img{-o-object-fit:cover;object-fit:cover}.gallery-card-label{color:#aaa}.gallery-notched-card h2{max-width:330px;font-family:var(--gallery-serif);letter-spacing:-.035em;margin:12px 0 16px;font-size:clamp(36px,4vw,52px);font-weight:400;line-height:.98}.gallery-notched-card>p:not(.gallery-card-label){color:#c8c8c8;max-width:335px;font-size:13px;line-height:1.55}.gallery-notched-card>a{border-bottom:1px solid #777;align-items:center;gap:7px;margin-top:22px;padding-bottom:3px;font-size:12px;display:flex}.gallery-scroll-label{color:#777;font-size:8px;position:absolute;bottom:22px;left:24px}.gallery-work{background:var(--gallery-ink);min-height:100vh;color:var(--gallery-paper);padding:28px}.gallery-section-meta{color:inherit;letter-spacing:.08em;text-transform:uppercase}.gallery-work-heading{text-align:center;margin:96px auto 80px}.gallery-work-heading>p{color:#898989;font-family:var(--gallery-serif);margin-bottom:22px;font-size:18px;font-style:italic}.gallery-work-heading h2,.gallery-experience-heading h2,.gallery-contact h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(68px,8vw,116px);font-weight:400;line-height:.79}.gallery-project-grid{grid-template-columns:repeat(3,1fr);gap:clamp(30px,5vw,80px);max-width:1240px;margin:0 auto;display:grid}.gallery-project{text-align:center;flex-direction:column;align-items:center;display:flex}.gallery-project-link{color:#bbb;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #555;align-items:center;gap:6px;margin-top:4px;padding-bottom:3px;font-size:10px;display:inline-flex}.gallery-project-skill{color:#999;min-height:32px}.gallery-project-image{aspect-ratio:1;background:#444;border-radius:50%;width:min(100%,320px);margin:4px 0 18px;position:relative;overflow:hidden}.gallery-project-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale()sepia(.16)contrast(.9);transition:filter .45s,transform .7s cubic-bezier(.2,.7,.2,1)}.gallery-project:hover .gallery-project-image img{filter:grayscale(.25)sepia(.05)contrast(.95);transform:scale(1.045)}.gallery-project-number{color:#6f6f6f;margin-bottom:12px;font-size:10px}.gallery-project h3{max-width:320px;font-family:var(--gallery-serif);letter-spacing:-.03em;font-size:clamp(27px,2.5vw,38px);font-weight:400;line-height:.98}.gallery-project-summary{color:#aaa;max-width:310px;min-height:82px;margin-top:15px;font-size:12px;line-height:1.5}.gallery-outcome{flex-direction:column;justify-content:flex-start;align-items:center;min-height:82px;margin-top:12px;display:flex}.gallery-outcome strong{font-family:var(--gallery-serif);font-size:26px;font-weight:400}.gallery-outcome span{color:#8b8b8b;letter-spacing:.08em;text-transform:uppercase;max-width:210px;margin-top:5px;font-size:9px;line-height:1.35}.gallery-indicators{gap:8px;margin:18px 0 70px;display:flex}.gallery-project-archive{border-top:1px solid #303030;grid-template-columns:.8fr 1.2fr;gap:8vw;max-width:1240px;margin:70px auto 110px;padding-top:80px;display:grid}.gallery-project-archive-section{background:var(--gallery-ink);color:var(--gallery-paper);padding:28px}.gallery-archive-heading h3{max-width:440px;font-family:var(--gallery-serif);letter-spacing:-.045em;margin-top:20px;font-size:clamp(40px,4.5vw,64px);font-weight:400;line-height:.93}.gallery-archive-heading h3 em{color:#8b8b8b;font-weight:400}.gallery-archive-list{border-top:1px solid #414141}.gallery-archive-row{border-bottom:1px solid #414141;grid-template-columns:38px 1fr auto 20px;align-items:center;gap:18px;min-height:118px;padding:20px 0;transition:padding .24s,color .24s;display:grid}.gallery-archive-row:hover{color:var(--gallery-putty);padding-left:10px;padding-right:10px}.gallery-archive-row>span,.gallery-archive-row p{color:#777;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.gallery-archive-row h4{max-width:540px;font-family:var(--gallery-serif);letter-spacing:-.025em;margin-top:6px;font-size:clamp(20px,2vw,28px);font-weight:400;line-height:1}.gallery-archive-row strong{font-family:var(--gallery-serif);white-space:nowrap;font-size:22px;font-weight:400}.gallery-hex{clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);border:1px solid;width:11px;height:11px;display:block}.gallery-hex.is-active{background:currentColor}.gallery-results{background:var(--gallery-putty);padding:28px}.gallery-results-copy{grid-template-columns:.7fr 1.3fr;align-items:start;min-height:490px;padding:100px 5vw 80px;display:grid}.gallery-results-copy h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(55px,7vw,100px);font-weight:400;line-height:.88}.gallery-stat-row{border-top:1px solid #89887f;border-bottom:1px solid #89887f;grid-template-columns:repeat(3,1fr);display:grid}.gallery-stat{border-right:1px solid #89887f;min-height:275px;padding:22px 24px 28px}.gallery-stat:last-child{border-right:0}.gallery-stat>span{margin-bottom:58px;font-size:10px;display:block}.gallery-stat strong{font-family:var(--gallery-serif);letter-spacing:-.065em;font-size:clamp(62px,8vw,120px);font-weight:400;line-height:.85;display:block}.gallery-stat p{color:#32322e;max-width:210px;margin-top:14px;font-size:12px;line-height:1.4}.gallery-experience{background:var(--gallery-bone);padding:28px 28px 80px}.gallery-experience-heading{grid-template-columns:1.1fr .9fr;align-items:end;gap:10vw;padding:130px 5vw 110px;display:grid}.gallery-experience-heading p{max-width:480px;color:var(--gallery-graphite);padding-bottom:4px;font-size:15px;line-height:1.55}.gallery-ledger{border-top:1px solid #aaa8a1}.gallery-ledger-row{border-bottom:1px solid #aaa8a1;grid-template-columns:.25fr 1fr 1.5fr .4fr 20px;align-items:start;gap:24px;min-height:155px;padding:24px 0;display:grid}.gallery-ledger-row:hover h3{font-style:italic}.gallery-ledger-arrow{transition:transform .22s}.gallery-ledger-row:hover .gallery-ledger-arrow{transform:translate(3px,-3px)}.gallery-ledger-index,.gallery-ledger-date,.gallery-ledger-row>div>p{letter-spacing:.06em;text-transform:uppercase;font-size:10px}.gallery-ledger-row h3{max-width:320px;font-family:var(--gallery-serif);letter-spacing:-.03em;margin-top:8px;font-size:clamp(25px,2.5vw,38px);font-weight:400;line-height:.98}.gallery-ledger-copy{max-width:560px;color:var(--gallery-graphite);font-size:12px;line-height:1.5}.gallery-ledger-date{text-align:right}.gallery-contact{background:var(--gallery-ink);min-height:100svh;color:var(--gallery-paper);padding:28px}.gallery-writing{background:var(--gallery-putty);padding:28px}.gallery-recommendations{background:var(--gallery-ink);min-height:100svh;color:var(--gallery-paper);padding:28px 28px 48px}.gallery-recommendations-heading{grid-template-columns:.5fr 1.5fr;align-items:end;gap:4vw;max-width:1320px;margin:0 auto;padding:clamp(44px,6vh,76px) 0 clamp(32px,4vh,52px);display:grid}.gallery-recommendations-heading h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(48px,5.8vw,86px);font-weight:400;line-height:.82}.gallery-recommendations-heading h2 em{color:#858585;font-weight:400}.gallery-quote-grid{border-top:1px solid #3b3b3b;border-left:1px solid #3b3b3b;grid-template-columns:repeat(5,minmax(0,1fr));max-width:1320px;margin:0 auto;display:grid}.gallery-quote-card{border-bottom:1px solid #3b3b3b;border-right:1px solid #3b3b3b;flex-direction:column;min-width:0;height:clamp(390px,52vh,500px);padding:18px;display:flex;overflow:hidden}.gallery-quote-card>span{color:#777;font-size:9px}.gallery-quote-excerpt{font-family:var(--gallery-serif);letter-spacing:-.02em;-webkit-line-clamp:10;-webkit-box-orient:vertical;margin:clamp(24px,4vh,42px) 0 18px;font-size:clamp(16px,1.25vw,20px);line-height:1.16;display:-webkit-box;overflow:hidden}.gallery-quote-details{letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;font-size:9px}.gallery-quote-details summary{color:#aaa;cursor:pointer;border-bottom:1px solid #686868;width:fit-content;padding-bottom:3px;list-style:none}.gallery-quote-details summary::-webkit-details-marker{display:none}.gallery-quote-details summary:after{content:" +"}.gallery-quote-details[open] summary:after{content:" −"}.gallery-quote-details blockquote{font-family:var(--gallery-serif);letter-spacing:normal;text-transform:none;margin:18px 0 0;font-size:16px;line-height:1.3}.gallery-quote-card:has(.gallery-quote-details[open]){grid-column:span 2;height:auto;min-height:500px;overflow:visible}.gallery-quote-card:has(.gallery-quote-details[open]) .gallery-quote-excerpt{display:none}.gallery-quote-card footer{border-top:1px solid #3b3b3b;margin-top:auto;padding-top:20px}.gallery-quote-card footer strong{font-family:var(--gallery-serif);font-size:clamp(17px,1.45vw,22px);font-weight:400}.gallery-quote-card footer p,.gallery-quote-card footer small{color:#888;letter-spacing:.06em;text-transform:uppercase;margin-top:6px;font-size:9px;line-height:1.4;display:block}.gallery-toolkit{background:var(--gallery-bone);padding:28px 28px 20px}.gallery-toolkit-heading{grid-template-columns:1.25fr .75fr;align-items:end;gap:5vw;max-width:1320px;margin:0 auto;padding:clamp(22px,3vh,34px) 0 clamp(16px,2vh,22px);display:grid}.gallery-toolkit-heading h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(38px,4.3vw,64px);font-weight:400;line-height:.86}.gallery-toolkit-heading h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-toolkit-heading p{max-width:440px;color:var(--gallery-graphite);padding-bottom:3px;font-size:12px;line-height:1.45}.gallery-toolkit-label{letter-spacing:.1em;text-transform:uppercase;max-width:1320px;margin:0 auto 10px;font-size:9px}.gallery-skill-grid{border-top:1px solid var(--gallery-vellum);border-left:1px solid var(--gallery-vellum);overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;max-width:1320px;margin:0 auto;display:flex;overflow-x:auto}.gallery-skill-card{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);scroll-snap-align:start;width:min(22vw,250px);min-width:min(22vw,250px);height:210px;padding:15px;position:relative;overflow-y:auto}.gallery-skill-card>span{color:var(--gallery-graphite);font-size:9px}.gallery-skill-card>svg{position:absolute;top:15px;right:15px}.gallery-skill-card h3{font-family:var(--gallery-serif);letter-spacing:-.035em;margin-top:56px;font-size:clamp(21px,2vw,29px);font-weight:400;line-height:.96}.gallery-skill-card p{color:var(--gallery-graphite);margin-top:10px;font-size:9px;line-height:1.4}.gallery-software{max-width:1320px;margin:0 auto;padding-top:clamp(18px,2.2vh,26px)}.gallery-software-grid{border-top:1px solid var(--gallery-vellum);border-left:1px solid var(--gallery-vellum);overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;margin-top:10px;display:flex;overflow-x:auto}.gallery-software-card{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);scroll-snap-align:start;width:min(21vw,240px);min-width:min(21vw,240px);height:225px;padding:14px;position:relative;overflow-y:auto}.gallery-software-card>span{color:var(--gallery-graphite);font-size:8px}.gallery-software-icon{width:36px;height:36px;margin:18px 0 12px;position:relative}.gallery-software-icon img{-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;filter:grayscale()}.gallery-software-card h3{font-family:var(--gallery-serif);font-size:22px;font-weight:400}.gallery-software-card>p{max-width:300px;color:var(--gallery-graphite);margin-top:6px;font-size:9px;line-height:1.35}.gallery-software-card ul{flex-wrap:wrap;gap:6px;margin-top:12px;list-style:none;display:flex}.gallery-software-card li{border:1px solid var(--gallery-vellum);color:var(--gallery-graphite);border-radius:20px;padding:4px 7px;font-size:8px}.gallery-credentials{background:var(--gallery-putty);padding:28px 28px 20px}.gallery-credentials-heading{grid-template-columns:.45fr 1.55fr;align-items:end;gap:4vw;max-width:1320px;margin:0 auto;padding:clamp(18px,2.5vh,28px) 0 clamp(14px,1.5vh,18px);display:grid}.gallery-credentials-heading h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(38px,4.1vw,60px);font-weight:400;line-height:.82}.gallery-credentials-heading h2 em,.gallery-certificate-heading h3 em{color:var(--gallery-graphite);font-weight:400}.gallery-education-grid{border-top:1px solid #89887f;border-left:1px solid #89887f;grid-template-columns:repeat(2,1fr);max-width:1320px;margin:0 auto;display:grid}.gallery-education-card{border-bottom:1px solid #89887f;border-right:1px solid #89887f;min-height:190px;padding:15px 18px}.gallery-education-card>span,.gallery-education-card>p,.gallery-education-card>strong{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:400}.gallery-education-card>p{color:var(--gallery-graphite);margin-top:18px}.gallery-education-card h3{max-width:540px;font-family:var(--gallery-serif);letter-spacing:-.045em;margin:7px 0 9px;font-size:clamp(25px,2.6vw,38px);font-weight:400;line-height:.92}.gallery-education-card ul{border-top:1px solid #a6a59c;gap:14px;margin-top:15px;list-style:none;display:flex}.gallery-education-card li{color:var(--gallery-graphite);flex:1;padding:10px 0 0;font-size:9px;line-height:1.35}.gallery-certificate-heading{grid-template-columns:.7fr 1.3fr;align-items:end;max-width:1320px;margin:0 auto;padding:clamp(13px,1.6vh,18px) 0 11px;display:grid}.gallery-certificate-heading h3{font-family:var(--gallery-serif);letter-spacing:-.045em;font-size:clamp(26px,2.7vw,40px);font-weight:400;line-height:.9}.gallery-certificate-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;border-top:1px solid #89887f;border-left:1px solid #89887f;max-width:1320px;margin:0 auto;display:flex;overflow-x:auto}.gallery-certificate-card{scroll-snap-align:start;border-bottom:1px solid #89887f;border-right:1px solid #89887f;width:min(24vw,260px);min-width:min(24vw,260px);min-height:215px;padding:16px;transition:background .24s;position:relative}a.gallery-certificate-card:hover{background:var(--gallery-bone)}.gallery-certificate-card>span,.gallery-certificate-card>p,.gallery-certificate-card>small{color:var(--gallery-graphite);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.gallery-certificate-logo{width:86px;height:56px;margin:16px 0 10px;position:relative}.gallery-certificate-logo img{-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;filter:grayscale()}.gallery-certificate-card h4{max-width:360px;font-family:var(--gallery-serif);letter-spacing:-.035em;margin:6px 0 18px;font-size:clamp(19px,1.8vw,26px);font-weight:400;line-height:.96}.gallery-certificate-card>svg{position:absolute;bottom:22px;right:22px}.gallery-outside-heading{padding:130px 5vw 100px}.gallery-writing-heading{grid-template-columns:.45fr 1.55fr;align-items:end;gap:4vw;max-width:1320px;margin:0 auto;padding:clamp(30px,4vh,44px) 0 clamp(22px,3vh,30px);display:grid}.gallery-writing-heading h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(46px,5.2vw,76px);font-weight:400;line-height:.82}.gallery-outside-heading h2{font-family:var(--gallery-serif);letter-spacing:-.06em;margin-top:28px;font-size:clamp(68px,9vw,132px);font-weight:400;line-height:.79}.gallery-writing-heading h2 em,.gallery-outside-heading h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-article-grid{background:#89887f;border:1px solid #89887f;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:1320px;margin:0 auto;display:grid}.gallery-article{background:var(--gallery-putty);grid-template-rows:1fr auto;min-height:390px;padding:16px;display:grid}.gallery-article-lead{grid-row:auto}.gallery-article-image{background:var(--gallery-graphite);min-height:230px;position:relative;overflow:hidden}.gallery-article-lead .gallery-article-image{min-height:230px}.gallery-article-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale()sepia(.14)contrast(.87);transition:filter .4s,transform .65s cubic-bezier(.2,.7,.2,1)}.gallery-article:hover .gallery-article-image img{filter:grayscale(.1)sepia(.03)contrast(.95);transform:scale(1.025)}.gallery-article-image>span{z-index:2;background:var(--gallery-putty);border-radius:50%;place-items:center;width:30px;height:30px;font-size:9px;display:grid;position:absolute;top:14px;left:14px}.gallery-article-copy{padding:14px 2px 0}.gallery-article-copy>p,.gallery-article-copy>span{color:var(--gallery-graphite);letter-spacing:.09em;text-transform:uppercase;font-size:9px}.gallery-article-copy h3{max-width:640px;font-family:var(--gallery-serif);letter-spacing:-.035em;margin:8px 0 12px;font-size:clamp(22px,2.15vw,32px);font-weight:400;line-height:.98}.gallery-feed-empty{border-top:1px solid var(--gallery-vellum);text-align:center;padding:80px 0}.gallery-view-all{background:var(--gallery-ink);grid-template-columns:.7fr 1fr 30px;align-items:center;gap:30px;max-width:1320px;min-height:105px;margin:1px auto 0;padding:20px 28px;display:grid;color:var(--gallery-paper)!important}.gallery-view-all>span{color:#898989;letter-spacing:.09em;text-transform:uppercase;font-size:9px}.gallery-view-all>strong{font-family:var(--gallery-serif);letter-spacing:-.045em;font-size:clamp(30px,3.4vw,48px);font-weight:400}.gallery-view-all>svg{transition:transform .22s}.gallery-view-all:hover>svg{transform:translate(4px,-4px)}.gallery-lab{background:var(--gallery-ink);color:var(--gallery-paper);padding:28px 28px 20px}.gallery-lab-heading{grid-template-columns:1fr .8fr;align-items:end;gap:5vw;max-width:1320px;margin:0 auto;padding:clamp(28px,4vh,42px) 0 clamp(22px,3vh,30px);display:grid}.gallery-lab-heading h2{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(42px,5vw,72px);font-weight:400;line-height:.86}.gallery-lab-heading p{color:#aaa;max-width:440px;padding-bottom:4px;font-size:12px;line-height:1.45}.gallery-lab-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;border-top:1px solid #3a3a3a;border-left:1px solid #3a3a3a;max-width:1320px;margin:0 auto;display:flex;overflow-x:auto}.gallery-lab-card{scroll-snap-align:start;border-bottom:1px solid #3a3a3a;border-right:1px solid #3a3a3a;width:min(28vw,330px);min-width:min(28vw,330px);height:500px;padding:16px;position:relative;overflow-y:auto}.gallery-lab-card>span{color:#777;font-size:9px}.gallery-lab-image{background:#151515;height:260px;margin:30px 0 22px;position:relative}.gallery-lab-image img{-o-object-fit:contain;object-fit:contain;filter:grayscale();padding:25px;transition:filter .3s,transform .5s}.gallery-lab-image.is-animated-pip{background:radial-gradient(circle at 50% 48%,#fff6dc2e,#0000 34%),#2e5b37;overflow:hidden}.gallery-lab-motion{display:block;position:absolute;inset:0}.gallery-lab-image.is-animated-pip:before{aspect-ratio:1;content:"";border:1px solid #fff6dc33;border-radius:50%;width:58%;animation:3.2s ease-in-out infinite gallery-pip-pulse;position:absolute;top:21%;left:21%}.gallery-lab-card:hover .gallery-lab-image img{filter:grayscale(0);transform:scale(1.04)}.gallery-lab-card>p{color:#777;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.gallery-lab-card h3{font-family:var(--gallery-serif);margin-top:10px;font-size:28px;font-weight:400}.gallery-lab-card>svg{position:absolute;bottom:22px;right:20px}.gallery-outside{background:var(--gallery-chalk);padding:28px 28px 20px}.gallery-outside-heading{grid-template-columns:.45fr 1.55fr;align-items:end;gap:4vw;max-width:1320px;margin:0 auto;padding:clamp(28px,4vh,42px) 0 clamp(22px,3vh,30px);display:grid}.gallery-outside-heading h2{margin-top:0;font-size:clamp(42px,5vw,72px);line-height:.86}.gallery-hobby-list{border-top:1px solid #a9a9a4;border-left:1px solid #a9a9a4;grid-template-columns:repeat(7,minmax(0,1fr));max-width:1320px;margin:0 auto;display:grid}.gallery-hobby-row{border-bottom:1px solid #a9a9a4;border-right:1px solid #a9a9a4;flex-direction:column;align-items:flex-start;min-width:0;min-height:500px;padding:18px;transition:background .24s;display:flex;position:relative;overflow:hidden}.gallery-hobby-row:hover,.gallery-hobby-row:focus-visible{background:var(--gallery-bone)}.gallery-hobby-row>span{z-index:3;font-size:9px;position:relative}.gallery-hobby-preview{z-index:1;background:var(--gallery-putty);clip-path:inset(100% 0 0);opacity:0;transition:clip-path .42s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute;inset:0;overflow:hidden}.gallery-hobby-preview:after{border:1px solid color-mix(in srgb,var(--gallery-ink)16%,transparent);content:"";pointer-events:none;position:absolute;inset:0}.gallery-hobby-preview img{-o-object-fit:cover;object-fit:cover;filter:contrast(.94)saturate(.72);transition:transform .65s cubic-bezier(.2,.8,.2,1);transform:scale(1.08)}.gallery-hobby-row:hover .gallery-hobby-preview,.gallery-hobby-row:focus-visible .gallery-hobby-preview{clip-path:inset(0);opacity:1}.gallery-hobby-row:hover .gallery-hobby-preview img,.gallery-hobby-row:focus-visible .gallery-hobby-preview img{transform:scale(1)}.gallery-hobby-row:hover h3,.gallery-hobby-row:focus-visible h3{background:var(--gallery-ink);color:var(--gallery-paper);margin-left:-18px;margin-right:-18px;padding:15px 18px 5px}.gallery-hobby-row:hover>p,.gallery-hobby-row:focus-visible>p{background:var(--gallery-ink);color:color-mix(in srgb,var(--gallery-paper)78%,transparent);margin:0 -18px -18px;padding:8px 18px 17px}.gallery-hobby-row:hover>span,.gallery-hobby-row:focus-visible>span,.gallery-hobby-row:hover>svg,.gallery-hobby-row:focus-visible>svg{background:var(--gallery-bone)}.gallery-hobby-row:hover>span,.gallery-hobby-row:focus-visible>span{padding:4px 5px}.gallery-hobby-row:hover>svg,.gallery-hobby-row:focus-visible>svg{box-sizing:content-box;padding:5px}@media (hover:none){.gallery-hobby-preview{clip-path:inset(0);opacity:1}.gallery-hobby-preview img{transform:scale(1)}.gallery-hobby-row h3{background:var(--gallery-ink);color:var(--gallery-paper);margin-left:-18px;margin-right:-18px;padding:15px 18px 5px}.gallery-hobby-row>p{background:var(--gallery-ink);color:color-mix(in srgb,var(--gallery-paper)78%,transparent);margin:0 -18px -18px;padding:8px 18px 17px}.gallery-hobby-row>span,.gallery-hobby-row>svg{background:var(--gallery-bone)}.gallery-hobby-row>span{padding:4px 5px}.gallery-hobby-row>svg{box-sizing:content-box;padding:5px}}.gallery-hobby-icon{z-index:2;border:1px solid #a9a9a4;border-radius:50%;place-items:center;width:74px;height:74px;margin:58px 0 auto;transition:background .24s,color .24s,transform .24s;display:grid;position:relative}.gallery-hobby-row:hover .gallery-hobby-icon{background:var(--gallery-ink);color:var(--gallery-paper);transform:rotate(-7deg)}.gallery-hobby-row h3{z-index:2;font-family:var(--gallery-serif);letter-spacing:-.035em;margin-top:36px;font-size:clamp(22px,2vw,30px);font-weight:400;line-height:.95;position:relative}.gallery-hobby-row p{z-index:2;color:var(--gallery-graphite);margin-top:14px;font-size:10px;line-height:1.45;position:relative}.gallery-hobby-row>svg{z-index:3;position:absolute;top:18px;right:18px}.gallery-hobby-page{background:var(--gallery-bone);min-height:100vh;color:var(--gallery-ink);font-family:var(--gallery-sans);overflow:clip}.gallery-hobby-page a{color:inherit;text-decoration:none}.gallery-hobby-hero{background:var(--gallery-bone);text-align:left;grid-template-columns:minmax(390px,.82fr) minmax(0,1.18fr);min-height:max(720px,92svh);padding:0;display:grid;position:relative;overflow:hidden}.gallery-hobby-hero-image{background:var(--gallery-putty);grid-area:1/2;min-width:0;height:100%;position:relative;overflow:hidden}.gallery-hobby-hero-image:after{border-left:1px solid color-mix(in srgb,var(--gallery-ink)24%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gallery-paper)12%,transparent);content:"";pointer-events:none;position:absolute;inset:0}.gallery-hobby-hero-image img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:contrast(.94)saturate(.72);animation:.9s cubic-bezier(.2,.8,.2,1) both gallery-hobby-image-arrive}.gallery-hobby-hero-image>span{z-index:2;background:var(--gallery-ink);color:var(--gallery-paper);letter-spacing:.13em;text-transform:uppercase;padding:7px 11px;font-size:8px;position:absolute;bottom:20px;right:22px}.gallery-hobby-hero-copy{z-index:2;flex-direction:column;grid-area:1/1;justify-content:center;align-items:flex-start;min-width:0;padding:116px clamp(28px,5vw,76px) 70px;display:flex;position:relative}.gallery-hobby-hero-copy:after{background:var(--gallery-ink);content:"";height:8px;position:absolute;bottom:0;left:0;right:0}.gallery-hobby-hero-icon{border:1px solid var(--gallery-ink);background:var(--gallery-ink);width:68px;height:68px;color:var(--gallery-paper);border-radius:50%;place-items:center;margin-bottom:40px;display:grid}.gallery-hobby-hero-copy h1{max-width:640px;font-family:var(--gallery-serif);letter-spacing:-.075em;margin:20px 0 26px;font-size:clamp(58px,6.4vw,102px);font-weight:400;line-height:.82}.gallery-hobby-hero-copy>p:not(.gallery-kicker){max-width:480px;color:var(--gallery-graphite);font-size:14px;line-height:1.65}.gallery-hobby-hero-link{border-bottom:1px solid var(--gallery-ink);align-items:center;gap:28px;margin-top:34px;padding-bottom:8px;font-size:11px;display:inline-flex}.gallery-hobby-hero>span{z-index:4;color:color-mix(in srgb,var(--gallery-paper)92%,transparent);font-family:var(--gallery-serif);letter-spacing:-.06em;font-size:42px;position:absolute;top:92px;bottom:auto;right:28px}@keyframes gallery-hobby-image-arrive{0%{opacity:0;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}.gallery-hobby-why{border-top:1px solid var(--gallery-vellum);background:var(--gallery-putty);grid-template-columns:.85fr 1.15fr;align-items:center;gap:10vw;min-height:650px;padding:72px max(28px,7vw);display:grid}.gallery-hobby-why h2,.gallery-hobby-notes-heading h2{font-family:var(--gallery-serif);letter-spacing:-.06em;margin-top:24px;font-size:clamp(46px,5vw,72px);font-weight:400;line-height:.88}.gallery-hobby-why>p{max-width:720px;color:var(--gallery-graphite);font-family:var(--gallery-serif);letter-spacing:-.025em;font-size:clamp(21px,2.1vw,31px);line-height:1.12}.gallery-hobby-module:empty{display:none}.gallery-hobby-module{background:var(--gallery-chalk)}.gallery-genai{background:var(--gallery-chalk);min-height:100%;color:var(--gallery-ink);font-family:var(--gallery-sans);padding:26px max(28px,5vw) 34px}.gallery-genai a{color:inherit;text-decoration:none}.gallery-genai-heading{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:end;gap:clamp(32px,7vw,110px);max-width:1180px;margin:clamp(34px,6vh,62px) auto clamp(28px,4vh,44px);display:grid}.gallery-genai-heading h2{font-family:var(--gallery-serif);letter-spacing:-.065em;margin:13px 0 0;font-size:clamp(49px,5.1vw,76px);font-weight:400;line-height:.78}.gallery-genai-heading h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-genai-heading>p{max-width:480px;color:var(--gallery-graphite);padding-bottom:4px;font-size:13px;line-height:1.6}.gallery-genai-layout{border-top:1px solid var(--gallery-vellum);border-left:1px solid var(--gallery-vellum);grid-template-columns:minmax(0,1.22fr) minmax(310px,.78fr);max-width:1180px;margin:0 auto;display:grid}.gallery-genai-builds,.gallery-genai-systems,.gallery-genai-workflow,.gallery-genai-assistants{min-width:0}.gallery-genai-lane-title{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);grid-template-columns:32px auto 1fr;align-items:center;gap:12px;min-height:58px;padding:13px 15px;display:grid}.gallery-genai-lane-title span,.gallery-genai-lane-title p{color:var(--gallery-graphite);letter-spacing:.11em;text-transform:uppercase;font-size:8px}.gallery-genai-lane-title h3{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:600}.gallery-genai-lane-title p{text-align:right;justify-self:end}.gallery-genai-build-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery-genai-build-row{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);grid-template-columns:22px 30px minmax(0,1fr) 16px;align-items:start;gap:10px;min-height:116px;padding:15px;transition:background-color .22s,color .22s;display:grid;position:relative}.gallery-genai-build-row:hover,.gallery-genai-build-row:focus-visible{background:var(--gallery-ink);color:var(--gallery-paper);outline:none}.gallery-genai-build-row>span{color:var(--gallery-graphite);letter-spacing:.08em;font-size:8px}.gallery-genai-build-row>svg:last-child{justify-self:end;transition:transform .22s}.gallery-genai-build-row:hover>svg:last-child,.gallery-genai-build-row:focus-visible>svg:last-child{transform:translate(2px,-2px)}.gallery-genai-build-row p{color:var(--gallery-graphite);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin:0 0 5px;font-size:7px;overflow:hidden}.gallery-genai-build-row:hover p,.gallery-genai-build-row:focus-visible p,.gallery-genai-build-row:hover>span,.gallery-genai-build-row:focus-visible>span{color:#9c9c9c}.gallery-genai-build-row h4{font-family:var(--gallery-serif);letter-spacing:-.04em;margin:0 0 6px;font-size:22px;font-weight:400;line-height:.95}.gallery-genai-build-row small{max-width:33ch;color:var(--gallery-graphite);font-size:9px;line-height:1.35;display:block}.gallery-genai-build-row:hover small,.gallery-genai-build-row:focus-visible small{color:#b9b9b9}.gallery-genai-logo{background:var(--gallery-paper);width:25px;height:25px;position:relative;overflow:hidden}.gallery-genai-logo img{-o-object-fit:contain;object-fit:contain}.gallery-genai-logo picture{background:#2e5b37;display:block;position:absolute;inset:0}.gallery-genai-systems{grid-template-rows:1fr auto;display:grid}.gallery-genai-workflow{border-right:1px solid var(--gallery-ink);border-bottom:1px solid var(--gallery-ink);background:var(--gallery-ink);color:var(--gallery-paper);padding:0 22px 21px;position:relative}.gallery-genai-workflow .gallery-genai-lane-title{border-color:#333;margin:0 -22px 22px}.gallery-genai-lane-title.is-dark span,.gallery-genai-lane-title.is-dark p{color:#898989}.gallery-genai-workflow>svg{color:#777;position:absolute;top:82px;right:22px}.gallery-genai-workflow>h4{max-width:270px;font-family:var(--gallery-serif);letter-spacing:-.055em;margin:0 0 13px;font-size:clamp(28px,2.5vw,39px);font-weight:400;line-height:.9}.gallery-genai-workflow>p{color:#a8a8a8;max-width:43ch;font-size:10px;line-height:1.45}.gallery-genai-workflow ul{flex-wrap:wrap;gap:6px;margin:22px 0 0;padding:0;list-style:none;display:flex}.gallery-genai-workflow li{color:#aaa;letter-spacing:.09em;text-transform:uppercase;border:1px solid #3c3c3c;padding:5px 7px;font-size:7px}.gallery-genai-assistant-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery-genai-assistant-grid article{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);min-height:147px;padding:14px}.gallery-genai-assistant-grid article>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.gallery-genai-assistant-grid h4{font-family:var(--gallery-serif);letter-spacing:-.04em;margin:18px 0 6px;font-size:24px;font-weight:400;line-height:1}.gallery-genai-assistant-grid p{color:var(--gallery-graphite);font-size:9px;line-height:1.35}.gallery-genai-status{color:var(--gallery-graphite);letter-spacing:.09em;text-transform:uppercase;font-size:7px}.gallery-genai-status.is-active{color:var(--gallery-ink);align-items:center;gap:6px;display:inline-flex}.gallery-genai-status.is-active:before{content:"";background:#507249;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #50724929}.gallery-hobby-module>.prototype-section{background:var(--gallery-chalk);width:100%;max-width:none;box-shadow:none;border:0;border-radius:0;margin:0;padding:72px max(28px,7vw)}.gallery-hobby-module .prototype-eyebrow,.gallery-hobby-module .genai-group-label{color:var(--gallery-graphite);font-family:var(--gallery-sans);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.gallery-hobby-module>.prototype-section>h2{max-width:980px;font-family:var(--gallery-serif);letter-spacing:-.055em;margin:18px 0 14px;font-size:clamp(42px,4.8vw,70px);font-weight:400;line-height:.86}.gallery-hobby-module .prototype-lead{max-width:680px;color:var(--gallery-graphite)}.gallery-hobby-module .prototype-card,.gallery-hobby-module button,.gallery-hobby-module [class*=-card]{border-color:var(--gallery-vellum);box-shadow:none;border-radius:0}.gallery-hobby-coming-soon{text-align:center;min-height:560px}.gallery-hobby-coming-soon>h2,.gallery-hobby-coming-soon>p{margin-left:auto!important;margin-right:auto!important}.gallery-hobby-notes{background:var(--gallery-ink);color:var(--gallery-paper);grid-template-columns:.7fr 1.3fr;gap:8vw;padding:72px max(28px,7vw);display:grid}.gallery-hobby-notes-heading h2 em{color:#777;font-weight:400}.gallery-hobby-note-grid{border-top:1px solid #3c3c3c;border-left:1px solid #3c3c3c;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery-hobby-note-grid article{border-bottom:1px solid #3c3c3c;border-right:1px solid #3c3c3c;min-height:360px;padding:22px}.gallery-hobby-note-grid article>span{color:#777;font-size:9px}.gallery-hobby-note-grid h3{font-family:var(--gallery-serif);letter-spacing:-.04em;margin-top:65px;font-size:clamp(27px,2.5vw,38px);font-weight:400;line-height:.95}.gallery-hobby-note-grid p{color:#aaa;margin-top:24px;font-size:12px;line-height:1.55}.gallery-hobby-note-grid ul{flex-wrap:wrap;gap:7px;margin-top:36px;list-style:none;display:flex}.gallery-hobby-note-grid li{color:#999;letter-spacing:.06em;text-transform:uppercase;border:1px solid #454545;border-radius:20px;padding:6px 9px;font-size:8px}.gallery-detail-page{height:calc(100svh - var(--gallery-subnav-height));background:var(--gallery-bone);color:var(--gallery-ink);font-family:var(--gallery-sans);scroll-behavior:smooth;scroll-snap-type:y mandatory;scrollbar-width:none;overflow:clip auto}.gallery-detail-page::-webkit-scrollbar{display:none}.gallery-detail-page a{color:inherit;text-decoration:none}.gallery-detail-nav{letter-spacing:.06em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 28px;font-size:10px;display:grid}.gallery-detail-nav>a:first-child{align-items:center;gap:7px;width:fit-content;display:inline-flex}.gallery-detail-nav>span{text-align:right}.gallery-case-hero{width:100%;height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));background:var(--gallery-putty);scroll-snap-align:start;scroll-snap-stop:always;grid-template-columns:minmax(0,1.12fr) minmax(410px,.88fr);display:grid;overflow:hidden}.gallery-case-hero-image{background:var(--gallery-graphite);min-width:0;height:100%;margin:0;position:relative;overflow:hidden}.gallery-case-hero-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 58%,#05050547);position:absolute;inset:0}.gallery-case-hero-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale()sepia(.16)contrast(.9);animation:.9s cubic-bezier(.2,.7,.2,1) both gallery-case-image-arrive;transform:scale(1.015)}.gallery-case-hero-image figcaption{z-index:2;color:var(--gallery-paper);letter-spacing:.12em;text-transform:uppercase;font-size:8px;position:absolute;bottom:18px;right:20px}.gallery-case-hero-copy{border-left:1px solid var(--gallery-vellum);flex-direction:column;min-width:0;height:100%;padding:24px clamp(28px,4vw,62px) 30px;display:flex}.gallery-case-hero-meta{color:var(--gallery-graphite);letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;align-items:flex-start;gap:20px;font-size:8px;line-height:1.4;display:flex}.gallery-case-hero-meta span:last-child{text-align:right;max-width:55%}.gallery-case-hero-title{margin:auto 0;padding:clamp(24px,4vh,48px) 0}.gallery-case-hero-title h1{max-width:680px;font-family:var(--gallery-serif);letter-spacing:-.06em;text-wrap:balance;margin:15px 0 24px;font-size:clamp(48px,5vw,78px);font-weight:400;line-height:.87}.gallery-case-hero-title h1.is-long{font-size:clamp(42px,4.25vw,67px);line-height:.89}.gallery-case-hero-title>p:last-child{max-width:540px;color:var(--gallery-graphite);font-size:13px;line-height:1.6}.gallery-detail-page a.gallery-case-source{width:fit-content;min-height:44px;color:var(--gallery-ink);text-underline-offset:4px;align-items:center;gap:8px;margin-top:12px;font-weight:600;text-decoration:underline;display:flex}.gallery-case-source svg{flex-shrink:0}.gallery-case-source:hover{text-decoration-thickness:2px}.gallery-case-source:focus-visible{outline-offset:4px;outline:2px solid}.gallery-case-outcome{border-top:1px solid color-mix(in srgb,var(--gallery-ink)28%,transparent);grid-template-columns:minmax(90px,.5fr) auto minmax(110px,.8fr);align-items:end;gap:16px;width:100%;padding-top:17px;display:grid}.gallery-case-outcome strong{font-family:var(--gallery-serif);letter-spacing:-.055em;font-size:clamp(32px,3.5vw,52px);font-weight:400;line-height:.8}.gallery-case-outcome span,.gallery-case-outcome p{letter-spacing:.08em;text-transform:uppercase;font-size:8px;line-height:1.4}.gallery-case-outcome span{color:var(--gallery-graphite)}.gallery-case-outcome p{max-width:150px;color:var(--gallery-graphite)}@keyframes gallery-case-image-arrive{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1.015)}}.gallery-case-body{width:100%;max-width:none;margin:0;padding:0}.gallery-case-intro{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));scroll-snap-align:start;scroll-snap-stop:always;grid-template-columns:.5fr 1fr 1fr;align-items:center;gap:5vw;padding:clamp(64px,9vh,110px) max(28px,7vw);display:grid;overflow-y:auto}.gallery-case-intro h2,.gallery-case-results h2{font-family:var(--gallery-serif);letter-spacing:-.05em;font-size:clamp(48px,5vw,74px);font-weight:400;line-height:.9}.gallery-case-intro h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-case-intro>p:last-child{color:var(--gallery-graphite);font-size:15px;line-height:1.65}.gallery-case-hypothesis{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));border-top:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);scroll-snap-align:start;scroll-snap-stop:always;text-align:center;align-content:center;padding:clamp(64px,9vh,110px) 10vw;display:grid;overflow-y:auto}.gallery-case-hypothesis blockquote{max-width:950px;font-family:var(--gallery-serif);letter-spacing:-.035em;margin:35px auto 0;font-size:clamp(34px,4vw,58px);line-height:1.02}.gallery-case-columns{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));scroll-snap-align:start;scroll-snap-stop:always;grid-template-columns:1fr 1fr;align-content:center;gap:10vw;padding:clamp(54px,7vh,88px) max(28px,7vw);display:grid;overflow-y:auto}.gallery-case-columns ol,.gallery-case-columns ul{margin-top:45px;list-style:none}.gallery-case-columns li{border-top:1px solid var(--gallery-vellum);color:var(--gallery-graphite);padding:18px 0;font-size:13px;line-height:1.55}.gallery-case-results{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));background:var(--gallery-ink);color:var(--gallery-paper);scroll-snap-align:start;scroll-snap-stop:always;text-align:center;padding:clamp(54px,7vh,86px) 28px;overflow-y:auto}.gallery-case-results>strong{font-family:var(--gallery-serif);letter-spacing:-.075em;margin:clamp(32px,4.5vh,48px) 0 12px;font-size:clamp(96px,14vw,200px);font-weight:400;line-height:1;display:block}.gallery-case-results>strong.is-long{letter-spacing:-.065em;font-size:clamp(64px,9vw,140px)}.gallery-case-results h2{overflow-wrap:anywhere;text-wrap:balance;max-width:1180px;margin-left:auto;margin-right:auto;font-size:clamp(40px,4.3vw,64px)}.gallery-case-results>p:not(.gallery-kicker){color:#aaa;max-width:700px;margin:25px auto 38px;font-size:14px;line-height:1.6}.gallery-case-results ul{border-top:1px solid #3d3d3d;grid-template-columns:1fr 1fr;max-width:900px;margin:0 auto;list-style:none;display:grid}.gallery-case-results li{color:#aaa;border-bottom:1px solid #3d3d3d;border-right:1px solid #3d3d3d;padding:16px 22px;font-size:11px;line-height:1.5}.gallery-next-project{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));border-top:1px solid var(--gallery-vellum);scroll-snap-align:start;scroll-snap-stop:always;grid-template-columns:.35fr 1fr 40px;align-content:center;align-items:center;gap:30px;padding:45px 6vw;display:grid}.gallery-next-project>span{letter-spacing:.08em;text-transform:uppercase;font-size:10px}.gallery-next-project>strong{font-family:var(--gallery-serif);letter-spacing:-.04em;font-size:clamp(32px,4vw,60px);font-weight:400;line-height:.95}.gallery-archive-page{--blog-surface-primary:var(--gallery-putty);--blog-surface-feature:#0d0d0c;--blog-surface-hover:#d3d1c4;--blog-surface-image:#262624;--blog-text-primary:var(--gallery-ink);--blog-text-secondary:#4e4d48;--blog-text-on-feature:#f1efe8;--blog-text-on-feature-muted:#aaa99f;--blog-border-default:#89887f;--blog-border-on-feature:#393936;--blog-focus:#214f3e;--blog-focus-on-feature:#b8d7c9;--blog-ease-out:cubic-bezier(.25,.46,.45,.94);background:var(--blog-surface-primary);min-height:100vh;color:var(--blog-text-primary);font-family:var(--gallery-sans)}.gallery-archive-page a,.gallery-role-page a{color:inherit;text-decoration:none}.gallery-blog-index{border-top:1px solid var(--blog-border-default)}.gallery-blog-index-head{border-bottom:1px solid var(--blog-border-default)}.gallery-blog-feature{min-height:clamp(590px,calc(100svh - var(--gallery-subnav-height)),840px);background:var(--blog-surface-feature);color:var(--blog-text-on-feature);grid-template-rows:auto minmax(0,1fr);padding:24px 28px 28px;display:grid}.gallery-blog-feature-topline{border-bottom:1px solid var(--blog-border-on-feature);justify-content:space-between;align-items:center;gap:24px;padding-bottom:22px;display:flex}.gallery-blog-feature-topline>span,.gallery-blog-feature-meta,.gallery-blog-feature-action{letter-spacing:.1em;text-transform:uppercase;font-size:9px}.gallery-blog-feature-topline>span{color:var(--blog-text-on-feature-muted)}.gallery-blog-feature-link{min-height:0;transition:transform .15s var(--blog-ease-out);grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:clamp(42px,6vw,100px);padding-top:28px;display:grid}.gallery-blog-feature-link:focus-visible{outline:2px solid var(--blog-focus-on-feature);outline-offset:5px}.gallery-blog-feature-link:active{transform:scale(.995)}.gallery-blog-feature-copy{flex-direction:column;justify-content:flex-end;min-width:0;max-width:940px;padding:clamp(30px,7vh,72px) 0 8px;display:flex}.gallery-blog-feature-meta{color:var(--blog-text-on-feature-muted);gap:18px;margin-bottom:clamp(28px,5vh,48px);display:flex}.gallery-blog-feature-meta span+span,.gallery-blog-feature-meta time{padding-left:19px;position:relative}.gallery-blog-feature-meta span+span:before,.gallery-blog-feature-meta time:before{content:"";background:currentColor;border-radius:50%;width:2px;height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.gallery-blog-index-head h1{max-width:14ch;font-family:var(--gallery-serif);letter-spacing:-.06em;text-wrap:balance;margin:0;font-size:clamp(54px,6.6vw,100px);font-weight:400;line-height:.88}.gallery-blog-index-head h1 em{color:var(--blog-text-secondary);font-weight:400}.gallery-blog-index-intro{max-width:none}.gallery-blog-feature-deck{max-width:64ch;color:var(--blog-text-on-feature-muted);margin-top:26px;font-size:clamp(14px,1.2vw,17px);line-height:1.55}.gallery-blog-feature-action{border-bottom:1px solid var(--blog-text-on-feature-muted);align-items:center;gap:10px;width:fit-content;margin-top:32px;padding-bottom:6px;display:inline-flex}.gallery-blog-feature-action svg,.gallery-blog-archive-row>svg{transition:transform .25s var(--blog-ease-out)}.gallery-blog-feature-link:hover .gallery-blog-feature-action svg,.gallery-blog-feature-link:focus-visible .gallery-blog-feature-action svg,.gallery-blog-archive-row:hover>svg,.gallery-blog-archive-row:focus-visible>svg{transform:translate(3px,-3px)}.gallery-blog-thumb.gallery-blog-feature-image{background:var(--blog-surface-image);width:100%;height:100%;min-height:420px;position:relative;overflow:hidden}.gallery-blog-feature-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 62%,#0000003d);position:absolute;inset:0}.gallery-blog-feature-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale(.78)sepia(.12)contrast(.92);transition:filter .35s var(--blog-ease-out),transform .7s var(--blog-ease-out);transform:scale(1.01)}.gallery-blog-feature-link:hover .gallery-blog-feature-image img,.gallery-blog-feature-link:focus-visible .gallery-blog-feature-image img{filter:grayscale(.18)sepia(.04)contrast(.96);transform:scale(1.045)}.gallery-blog-feature-image>span{color:var(--blog-text-on-feature-muted);font-family:var(--gallery-serif);font-size:18px;position:absolute;bottom:18px;right:20px}.gallery-blog-archive{padding:clamp(72px,9vw,132px) 28px 120px}.gallery-blog-archive-head{grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);align-items:end;gap:48px;max-width:1380px;margin:0 auto clamp(50px,6vw,82px);display:grid}.gallery-blog-archive-head h2{max-width:12ch;font-family:var(--gallery-serif);letter-spacing:-.055em;margin-top:16px;font-size:clamp(48px,5.8vw,84px);font-weight:400;line-height:.88}.gallery-blog-archive-head>p{max-width:440px;color:var(--blog-text-secondary);font-size:13px;line-height:1.55}.gallery-blog-filter-bar{z-index:20;top:var(--gallery-subnav-height);border-top:1px solid var(--blog-border-default);border-bottom:1px solid var(--blog-border-default);background:color-mix(in srgb,var(--blog-surface-primary)94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:auto minmax(180px,250px) minmax(120px,170px) minmax(130px,1fr);align-items:end;gap:clamp(18px,2.4vw,36px);max-width:1380px;margin:0 auto;padding:14px 0;display:grid;position:sticky}.gallery-blog-filters-label,.gallery-blog-filter-field>span:first-child,.gallery-blog-filter-status{color:var(--blog-text-secondary);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.gallery-blog-filters-label{white-space:nowrap;padding-bottom:13px}.gallery-blog-filter-field{gap:5px;display:grid}.gallery-blog-select-shell{display:block;position:relative}.gallery-blog-select-shell select{border:0;border-bottom:1px solid var(--blog-border-default);appearance:none;width:100%;min-height:36px;color:var(--blog-text-primary);font-family:var(--gallery-serif);letter-spacing:-.02em;cursor:pointer;transition:border-color .18s var(--blog-ease-out),padding .18s var(--blog-ease-out);background:0 0;border-radius:0;outline:0;padding:0 26px 0 0;font-size:17px}.gallery-blog-select-shell svg{pointer-events:none;transition:transform .18s var(--blog-ease-out);position:absolute;top:50%;right:2px;transform:translateY(-50%)}.gallery-blog-filter-field:hover select{border-color:var(--blog-text-primary);padding-left:6px}.gallery-blog-filter-field:hover svg{transform:translateY(-35%)}.gallery-blog-select-shell select:focus-visible{border-color:var(--blog-focus);outline:2px solid var(--blog-focus);outline-offset:3px}.gallery-blog-filter-status{justify-content:flex-end;align-items:center;gap:18px;min-height:36px;display:flex}.gallery-blog-filter-status>span{white-space:nowrap}.gallery-blog-filter-status button,.gallery-blog-filter-empty button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;border-radius:0}.gallery-blog-filter-status button{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;padding:7px 0 5px;display:inline-flex}.gallery-blog-filter-status button:hover,.gallery-blog-filter-status button:focus-visible,.gallery-blog-filter-empty button:hover,.gallery-blog-filter-empty button:focus-visible{color:var(--blog-focus)}.gallery-blog-filter-status button:focus-visible,.gallery-blog-filter-empty button:focus-visible{outline:2px solid var(--blog-focus);outline-offset:4px}.gallery-blog-archive-list{max-width:1380px;margin:0 auto;padding:0;list-style:none}.gallery-blog-archive-list>li{display:block}.gallery-blog-archive-row{border-bottom:1px solid var(--blog-border-default);min-height:126px;transition:background-color .25s var(--blog-ease-out),padding .25s var(--blog-ease-out),transform .15s var(--blog-ease-out);grid-template-columns:44px minmax(0,1fr) 112px 20px;align-items:center;gap:clamp(18px,2.5vw,38px);padding:24px 0;display:grid}.gallery-blog-archive-row:hover,.gallery-blog-archive-row:focus-visible{background:var(--blog-surface-hover);padding-left:14px;padding-right:14px}.gallery-blog-archive-row:focus-visible{outline:2px solid var(--blog-focus);outline-offset:-2px}.gallery-blog-archive-row:active{transform:scale(.997)}.gallery-blog-archive-index,.gallery-blog-archive-row time,.gallery-blog-archive-row p{color:var(--blog-text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.gallery-blog-archive-copy>p{gap:18px;display:flex}.gallery-blog-archive-copy>p span+span{padding-left:19px;position:relative}.gallery-blog-archive-copy>p span+span:before{content:"";background:currentColor;border-radius:50%;width:2px;height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.gallery-blog-archive-row h3{max-width:880px;font-family:var(--gallery-serif);letter-spacing:-.035em;transition:transform .25s var(--blog-ease-out);margin-top:9px;font-size:clamp(25px,2.3vw,36px);font-weight:400;line-height:1}.gallery-blog-archive-row:hover h3,.gallery-blog-archive-row:focus-visible h3{transform:translate(5px)}.gallery-blog-filter-empty{border-bottom:1px solid var(--blog-border-default);align-content:center;justify-items:start;max-width:1380px;min-height:330px;margin:0 auto;padding:72px 0;display:grid}.gallery-blog-filter-empty>p{max-width:16ch;font-family:var(--gallery-serif);letter-spacing:-.045em;font-size:clamp(34px,4vw,56px);line-height:.94}.gallery-blog-filter-empty>span{max-width:48ch;color:var(--blog-text-secondary);margin-top:18px;font-size:12px;line-height:1.5}.gallery-blog-filter-empty button{letter-spacing:.1em;text-transform:uppercase;margin-top:26px;padding-bottom:5px;font-size:9px}.gallery-blog-empty{min-height:calc(100svh - var(--gallery-subnav-height));background:var(--blog-surface-feature);color:var(--blog-text-on-feature);flex-direction:column;justify-content:center;align-items:flex-start;padding:80px 28px;display:flex}.gallery-blog-empty>p:not(.gallery-kicker){max-width:46ch;color:var(--blog-text-on-feature-muted);margin-top:24px;line-height:1.55}.gallery-blog-empty>a{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;margin-top:32px;padding-bottom:5px;font-size:11px}.gallery-blog-post{background:var(--gallery-bone);min-height:100vh;color:var(--gallery-ink);font-family:var(--gallery-sans)}.gallery-blog-post a{color:inherit}.gallery-post-head{border-bottom:1px solid var(--gallery-vellum);background:var(--gallery-putty);padding:28px max(28px,6vw) clamp(42px,5vw,68px)}.gallery-post-head-meta{letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:24px;font-size:9px;display:flex}.gallery-post-head-meta a{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.gallery-post-head h1{max-width:1140px;font-family:var(--gallery-serif);letter-spacing:-.065em;text-align:center;text-wrap:balance;margin:clamp(44px,5vw,72px) auto clamp(36px,4vw,56px);font-size:clamp(56px,6.4vw,94px);font-weight:400;line-height:.84}.gallery-post-intro{border-top:1px solid color-mix(in srgb,var(--gallery-ink)24%,transparent);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px;max-width:1160px;margin:0 auto;padding-top:22px;display:grid}.gallery-post-intro>p{max-width:760px;color:var(--gallery-graphite);font-family:var(--gallery-serif);letter-spacing:-.025em;font-size:clamp(20px,2vw,29px);line-height:1.12}.gallery-post-byline{align-items:center;gap:12px;min-width:240px;display:flex}.gallery-post-avatar{border:1px solid var(--gallery-vellum);border-radius:50%;width:44px;height:44px;position:relative;overflow:hidden}.gallery-post-avatar img{-o-object-fit:cover;object-fit:cover}.gallery-post-byline strong,.gallery-post-byline span{display:block}.gallery-post-byline strong{font-family:var(--gallery-serif);margin-bottom:5px;font-size:15px;font-weight:400}.gallery-post-byline span{color:var(--gallery-graphite);letter-spacing:.07em;text-transform:uppercase;font-size:8px}.gallery-post-image{background:var(--gallery-graphite);width:calc(100% - 56px);max-width:1240px;height:min(64vw,680px);margin:28px auto 0;position:relative;overflow:hidden}.gallery-post-image img{-o-object-fit:cover;object-fit:cover;filter:saturate(.72)contrast(.95)}.gallery-post-image figcaption{background:var(--gallery-ink);color:var(--gallery-paper);letter-spacing:.1em;text-transform:uppercase;padding:7px 9px;font-size:7px;position:absolute;bottom:14px;right:14px}.gallery-post-reading{grid-template-columns:210px minmax(0,720px);justify-content:space-between;align-items:start;gap:clamp(60px,10vw,150px);max-width:1180px;margin:0 auto;padding:clamp(80px,10vw,150px) 28px;display:grid}.gallery-post-aside{border-top:1px solid var(--gallery-vellum);padding-top:12px;position:sticky;top:96px}.gallery-post-aside dl{margin-top:36px}.gallery-post-aside dl>div{border-bottom:1px solid color-mix(in srgb,var(--gallery-vellum)65%,transparent);padding:12px 0}.gallery-post-aside dt{color:var(--gallery-graphite);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:7px}.gallery-post-aside dd{font-family:var(--gallery-serif);font-size:14px}.gallery-post-prose{color:#292927;font-family:var(--gallery-serif);font-size:clamp(18px,1.55vw,22px);line-height:1.7}.gallery-post-prose>:first-child{margin-top:0}.gallery-post-prose>p:first-child:first-letter{float:left;margin:.08em .12em 0 0;font-size:4.2em;line-height:.72}.gallery-post-prose p,.gallery-post-prose ul,.gallery-post-prose ol{margin:0 0 1.45em}.gallery-post-prose h2{color:var(--gallery-ink);letter-spacing:-.045em;margin:2.1em 0 .65em;font-size:clamp(34px,4vw,56px);font-weight:400;line-height:.98}.gallery-post-prose h3{border-top:1px solid var(--gallery-vellum);color:var(--gallery-ink);font-family:var(--gallery-sans);letter-spacing:.1em;text-transform:uppercase;margin:2em 0 .65em;padding-top:14px;font-size:11px;font-weight:600}.gallery-post-prose ul,.gallery-post-prose ol{padding-left:1.2em}.gallery-post-prose li{margin-bottom:.5em;padding-left:.25em}.gallery-post-prose a{text-underline-offset:4px;text-decoration-thickness:1px}.gallery-post-prose blockquote{border-left:2px solid var(--gallery-ink);color:var(--gallery-graphite);margin:2em 0;padding:24px 0 24px 30px;font-size:1.3em;font-style:italic;line-height:1.35}.gallery-post-prose pre{background:var(--gallery-ink);max-width:100%;color:var(--gallery-paper);margin:2em 0;padding:24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.6;overflow-x:auto}.gallery-post-prose :not(pre)>code{background:color-mix(in srgb,var(--gallery-putty)70%,transparent);padding:.12em .3em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em}.gallery-post-prose img{filter:saturate(.8);width:100%;height:auto;margin:2em 0}.gallery-post-prose hr{border:0;border-top:1px solid var(--gallery-vellum);margin:3em 0}.gallery-post-prose table{border-collapse:collapse;max-width:100%;font-family:var(--gallery-sans);margin:2em 0;font-size:12px;display:block;overflow-x:auto}.gallery-post-prose th,.gallery-post-prose td{border:1px solid var(--gallery-vellum);text-align:left;padding:10px 14px}.gallery-post-footer{border-top:1px solid var(--gallery-vellum);background:var(--gallery-ink);min-height:210px;color:var(--gallery-paper);justify-content:space-between;align-items:center;gap:42px;padding:45px max(28px,6vw);display:flex}.gallery-post-footer p{max-width:620px;font-family:var(--gallery-serif);letter-spacing:-.04em;font-size:clamp(28px,3.4vw,50px);line-height:1}.gallery-post-footer a{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:28px;padding-bottom:8px;font-size:10px;text-decoration:none;display:inline-flex}.gallery-role-page{background:var(--gallery-bone);min-height:100vh;color:var(--gallery-ink);font-family:var(--gallery-sans)}.gallery-role-hero{min-height:calc(100svh - var(--gallery-subnav-height));background:var(--gallery-putty);text-align:left;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);padding:0;display:grid;overflow:hidden}.gallery-role-hero-image{background:var(--gallery-putty);min-width:0;height:100%;position:relative;overflow:hidden}.gallery-role-hero-image:after{border-right:1px solid color-mix(in srgb,var(--gallery-paper)18%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gallery-ink)10%,transparent);content:"";pointer-events:none;position:absolute;inset:0}.gallery-role-hero-image img{-o-object-fit:cover;object-fit:cover;filter:contrast(.94)saturate(.72);animation:.9s cubic-bezier(.2,.8,.2,1) both gallery-hobby-image-arrive}.gallery-role-hero-image-exp-2 img{-o-object-position:28% center;object-position:28% center}.gallery-role-hero-image>span{z-index:2;background:var(--gallery-ink);color:var(--gallery-paper);letter-spacing:.13em;text-transform:uppercase;padding:7px 11px;font-size:8px;position:absolute;bottom:20px;left:22px}.gallery-role-hero-copy{background:var(--gallery-ink);min-width:0;color:var(--gallery-paper);flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(44px,6vh,72px) clamp(28px,4.5vw,68px);display:flex}.gallery-role-company{flex-direction:column;align-items:flex-start;display:flex}.gallery-role-logo{background:var(--gallery-bone);width:120px;height:72px;margin-bottom:12px;position:relative}.gallery-role-logo img{-o-object-fit:contain;object-fit:contain;filter:grayscale();padding:12px}.gallery-role-logo-mark{border:1px solid color-mix(in srgb,var(--gallery-ink)24%,transparent);height:100%;color:var(--gallery-ink);font-family:var(--gallery-serif);letter-spacing:-.06em;border-radius:50%;place-items:center;font-size:22px;display:grid}.gallery-role-company p{letter-spacing:.1em;text-transform:uppercase;font-size:10px}.gallery-role-hero-copy h1{max-width:620px;font-family:var(--gallery-serif);letter-spacing:-.065em;text-wrap:balance;margin:clamp(24px,3.5vh,34px) 0 clamp(18px,2.5vh,26px);font-size:clamp(58px,5.6vw,88px);font-weight:400;line-height:.82}.gallery-role-hero-copy h1.gallery-role-title-long{max-width:620px;font-size:clamp(52px,4.9vw,76px)}.gallery-role-dates{letter-spacing:.08em;text-transform:uppercase;gap:22px;margin-bottom:clamp(20px,3vh,28px);font-size:10px;display:flex}.gallery-role-hero-copy>p{max-width:720px;color:color-mix(in srgb,var(--gallery-paper)70%,transparent);font-size:14px;line-height:1.55}.gallery-role-hero-copy>a{border-bottom:1px solid;align-items:center;gap:7px;margin-top:clamp(16px,2.5vh,24px);padding-bottom:3px;font-size:11px;display:inline-flex}.gallery-role-body{border-top:1px solid var(--gallery-vellum)}.gallery-role-section{grid-template-columns:1fr 1fr;gap:10vw;min-height:650px;padding:120px max(28px,7vw);display:grid}.gallery-role-section h2{font-family:var(--gallery-serif);letter-spacing:-.06em;margin-top:34px;font-size:clamp(62px,8vw,114px);font-weight:400;line-height:.8}.gallery-role-section h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-role-section ol{border-top:1px solid var(--gallery-vellum);counter-reset:role-items;list-style:none}.gallery-role-section li{border-bottom:1px solid var(--gallery-vellum);color:var(--gallery-graphite);counter-increment:role-items;padding:28px 10px 28px 55px;font-size:14px;line-height:1.55;position:relative}.gallery-role-section li:before{content:"0" counter(role-items);font-size:9px;position:absolute;top:30px;left:0}.gallery-role-section-dark{background:var(--gallery-ink);color:var(--gallery-paper)}.gallery-role-section-dark h2 em,.gallery-role-section-dark li{color:#aaa}.gallery-role-section-dark ol,.gallery-role-section-dark li{border-color:#3a3a3a}.gallery-hotel-timeline{background:var(--gallery-bone);padding:clamp(90px,10vw,145px) max(28px,7vw)}.gallery-hotel-timeline-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:8vw;padding-bottom:clamp(70px,8vw,110px);display:grid}.gallery-hotel-timeline-heading h2{font-family:var(--gallery-serif);letter-spacing:-.06em;margin-top:34px;font-size:clamp(62px,7.5vw,108px);font-weight:400;line-height:.82}.gallery-hotel-timeline-heading h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-hotel-timeline-heading>p{max-width:460px;color:var(--gallery-graphite);font-size:15px;line-height:1.55}.gallery-hotel-timeline-list{border-top:1px solid var(--gallery-vellum)}.gallery-hotel-timeline-list article{border-bottom:1px solid var(--gallery-vellum);grid-template-columns:.18fr .92fr 1.15fr;align-items:start;gap:34px;min-height:190px;padding:30px 0 34px;display:grid}.gallery-hotel-timeline-index,.gallery-hotel-timeline-meta,.gallery-hotel-timeline-role>span,.gallery-hotel-timeline-copy>p{letter-spacing:.08em;text-transform:uppercase;font-size:9px}.gallery-hotel-timeline-meta,.gallery-hotel-timeline-copy>p{color:var(--gallery-graphite)}.gallery-hotel-timeline-meta{justify-content:space-between;align-items:center;gap:18px;display:flex}.gallery-hotel-timeline-meta time{color:var(--gallery-ink);white-space:nowrap}.gallery-hotel-timeline-role h3{max-width:460px;font-family:var(--gallery-serif);letter-spacing:-.045em;margin:26px 0 12px;font-size:clamp(30px,3.3vw,48px);font-weight:400;line-height:.92}.gallery-hotel-timeline-copy>span{max-width:560px;color:var(--gallery-graphite);margin-top:28px;font-size:14px;line-height:1.55;display:block}.gallery-role-skills{padding:120px max(28px,7vw)}.gallery-role-skills>div{border-top:1px solid var(--gallery-vellum);border-left:1px solid var(--gallery-vellum);grid-template-columns:repeat(3,1fr);margin-top:60px;display:grid}.gallery-role-skills span{border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);min-height:150px;font-family:var(--gallery-serif);justify-content:space-between;align-items:flex-end;padding:20px;font-size:28px;display:flex}.gallery-role-skills small{font-family:var(--gallery-sans);align-self:flex-start;font-size:8px}.gallery-certificate-page{background:var(--gallery-bone);min-height:100vh;color:var(--gallery-ink);font-family:var(--gallery-sans)}.gallery-certificate-page a{color:inherit;text-decoration:none}.gallery-cert-detail-hero{min-height:calc(100svh - var(--gallery-subnav-height));text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:clamp(38px,5vh,58px) 28px clamp(34px,4.5vh,52px);display:flex}.gallery-cert-detail-issuer{flex-direction:column;align-items:center;display:flex}.gallery-cert-detail-logo{width:126px;height:72px;margin-bottom:12px;position:relative}.gallery-cert-detail-logo img{-o-object-fit:contain;object-fit:contain;filter:grayscale()}.gallery-cert-detail-issuer>p,.gallery-cert-detail-meta{letter-spacing:.1em;text-transform:uppercase;font-size:9px}.gallery-cert-detail-hero>.gallery-kicker{color:var(--gallery-graphite);margin-top:clamp(18px,2.5vh,26px)}.gallery-cert-detail-hero h1{max-width:1120px;font-family:var(--gallery-serif);letter-spacing:-.065em;text-wrap:balance;margin:clamp(22px,3vh,30px) 0 clamp(18px,2.5vh,24px);font-size:clamp(62px,8vw,116px);font-weight:400;line-height:.82}.gallery-cert-detail-hero h1.is-long{max-width:1040px;font-size:clamp(54px,6.8vw,98px)}.gallery-cert-detail-meta{align-items:center;gap:20px;margin-bottom:clamp(20px,2.5vh,26px);display:flex}.gallery-cert-detail-meta time{color:var(--gallery-graphite)}.gallery-cert-detail-summary{max-width:720px;color:var(--gallery-graphite);font-size:14px;line-height:1.55}.gallery-cert-detail-jump,.gallery-cert-proof-link{letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:8px;width:fit-content;margin-top:clamp(16px,2.5vh,24px);padding-bottom:4px;font-size:10px;display:inline-flex}.gallery-cert-learning{grid-template-columns:.82fr 1.18fr;gap:8vw;padding:clamp(100px,10vw,150px) max(28px,7vw);display:grid}.gallery-cert-learning-heading h2,.gallery-cert-skills-heading h2,.gallery-cert-proof-heading h2{font-family:var(--gallery-serif);letter-spacing:-.06em;margin-top:34px;font-size:clamp(62px,7.7vw,110px);font-weight:400;line-height:.81}.gallery-cert-learning-heading h2 em,.gallery-cert-skills-heading h2 em,.gallery-cert-proof-heading h2 em,.gallery-cert-learning aside h3 em{color:var(--gallery-graphite);font-weight:400}.gallery-cert-learning>ol{border-top:1px solid var(--gallery-vellum);counter-reset:cert-study;list-style:none}.gallery-cert-learning>ol li{border-bottom:1px solid var(--gallery-vellum);color:var(--gallery-graphite);counter-increment:cert-study;padding:26px 10px 26px 54px;font-size:14px;line-height:1.55;position:relative}.gallery-cert-learning>ol li:before{content:"0" counter(cert-study);color:var(--gallery-ink);font-size:9px;position:absolute;top:28px;left:0}.gallery-cert-learning aside{border:1px solid var(--gallery-vellum);grid-column:2;grid-template-columns:.9fr 1.1fr;align-items:start;gap:40px;min-height:320px;padding:38px;display:grid}.gallery-cert-learning aside>.gallery-kicker{grid-column:1/3}.gallery-cert-learning aside h3{font-family:var(--gallery-serif);letter-spacing:-.045em;font-size:clamp(34px,4vw,58px);font-weight:400;line-height:.88}.gallery-cert-learning aside>p:last-child{color:var(--gallery-graphite);font-size:14px;line-height:1.6}.gallery-cert-skills{background:var(--gallery-ink);color:var(--gallery-paper);padding:clamp(100px,10vw,145px) max(28px,7vw)}.gallery-cert-skills-heading{grid-template-columns:.45fr 1.55fr;align-items:start;gap:5vw;padding-bottom:clamp(70px,8vw,110px);display:grid}.gallery-cert-skills-heading h2{margin-top:0}.gallery-cert-skills-heading h2 em{color:#858585}.gallery-cert-skills-grid{border-top:1px solid #3a3a3a;border-left:1px solid #3a3a3a;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.gallery-cert-skills-grid article{border-bottom:1px solid #3a3a3a;border-right:1px solid #3a3a3a;flex-direction:column;justify-content:space-between;min-height:220px;padding:18px;display:flex}.gallery-cert-skills-grid span{color:#777;font-size:9px}.gallery-cert-skills-grid h3{font-family:var(--gallery-serif);letter-spacing:-.035em;font-size:clamp(22px,2.2vw,32px);font-weight:400;line-height:.95}.gallery-cert-proof{background:var(--gallery-putty);padding:clamp(100px,10vw,150px) max(28px,7vw)}.gallery-cert-proof-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:8vw;padding-bottom:clamp(70px,8vw,110px);display:grid}.gallery-cert-proof-heading>p{max-width:440px;color:var(--gallery-graphite);font-size:14px;line-height:1.55}.gallery-cert-proof-frame{aspect-ratio:1.42;background:var(--gallery-bone);border:1px solid #97958d;width:min(100%,1180px);margin:0 auto;position:relative}.gallery-cert-proof-frame img{-o-object-fit:contain;object-fit:contain;padding:clamp(18px,3vw,46px)}.gallery-cert-proof-frame.is-badge{aspect-ratio:1;max-width:620px}.gallery-cert-proof-frame.is-badge img{padding:12%}.gallery-cert-proof-frame.is-portrait{aspect-ratio:1275/1650;max-width:760px}.gallery-cert-proof-link{margin:32px auto 0}.gallery-contact-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100svh - 130px);padding:100px 0 60px;display:flex}.gallery-contact-body>.gallery-kicker{color:#8b8b8b;margin-bottom:40px}.gallery-contact h2{font-size:clamp(76px,13vw,190px)}.gallery-contact-links{align-items:center;gap:28px;margin-top:58px;font-size:12px;display:flex}.gallery-pill-light{border-color:var(--gallery-paper);background:var(--gallery-paper);margin:0;color:var(--gallery-ink)!important}.gallery-pill-light:hover{background:0 0;color:var(--gallery-paper)!important}.gallery-pill-pending{cursor:default;opacity:.62}.gallery-pill-pending:hover{background:var(--gallery-paper);color:var(--gallery-ink)!important}.gallery-choice-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050505b8}.gallery-choice-modal{border:1px solid var(--gallery-ink);background:var(--gallery-putty);width:min(760px,100%);max-height:calc(100svh - 36px);color:var(--gallery-ink);font-family:var(--gallery-sans);overflow:auto;box-shadow:12px 12px #05050547}.gallery-choice-header{border-bottom:1px solid var(--gallery-ink);justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 28px;display:flex}.gallery-choice-header>div>p{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:10px}.gallery-choice-header h2{max-width:600px;font-family:var(--gallery-serif);letter-spacing:-.045em;margin:8px 0 0;font-size:clamp(38px,6vw,64px);font-weight:400;line-height:.92}.gallery-choice-header button{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:50%;flex:none;place-items:center;padding:0;transition:background .18s,color .18s;display:grid}.gallery-choice-header button:hover,.gallery-choice-header button:focus-visible{background:var(--gallery-ink);color:var(--gallery-putty)}.gallery-choice-body{padding:26px 28px 30px}.gallery-choice-body>p{color:#3f3f3a;max-width:580px;margin:0 0 24px;font-size:14px;line-height:1.55}.gallery-choice-grid{border-top:1px solid var(--gallery-ink);border-left:1px solid var(--gallery-ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery-choice-grid>a{border-right:1px solid var(--gallery-ink);border-bottom:1px solid var(--gallery-ink);min-height:220px;color:inherit;flex-direction:column;padding:24px;text-decoration:none;transition:background .18s,color .18s;display:flex}.gallery-choice-grid>a:hover,.gallery-choice-grid>a:focus-visible{background:var(--gallery-ink);color:var(--gallery-putty)}.gallery-choice-icon{border:1px solid;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:34px;display:grid}.gallery-choice-grid small{letter-spacing:.14em;text-transform:uppercase;font-size:10px}.gallery-choice-grid strong{font-family:var(--gallery-serif);margin-top:8px;font-size:32px;font-weight:400;line-height:1}.gallery-choice-grid p{color:inherit;margin:12px 0 24px;font-size:13px;line-height:1.45}.gallery-choice-action{overflow-wrap:anywhere;border-bottom:1px solid;align-self:flex-start;align-items:center;gap:7px;margin-top:auto;padding-bottom:5px;font-size:11px;display:inline-flex}@media (max-width:640px){.gallery-choice-backdrop{padding:12px}.gallery-choice-modal{max-height:calc(100svh - 24px);box-shadow:6px 6px #05050547}.gallery-choice-header,.gallery-choice-body{padding:20px}.gallery-choice-header h2{font-size:38px}.gallery-choice-grid{grid-template-columns:1fr}.gallery-choice-grid>a{min-height:180px}.gallery-choice-icon{margin-bottom:22px}}.prototype-fab.gallery-echo-dock{z-index:120;background:var(--gallery-ink);width:62px;height:62px;box-shadow:none;color:var(--gallery-paper);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);border:1px solid #363636;border-radius:0;justify-content:flex-end;align-items:center;gap:0;padding:7px;transition:width .36s cubic-bezier(.22,1,.36,1),background .18s;display:flex;position:fixed;bottom:18px;right:18px;overflow:hidden}.prototype-fab.gallery-echo-dock.is-expanded,.prototype-fab.gallery-echo-dock:focus-within{width:min(326px,100vw - 36px)}.gallery-echo-reveal{opacity:0;pointer-events:none;visibility:hidden;order:1;justify-content:space-between;align-items:center;gap:8px;width:0;min-width:0;transition:width .36s cubic-bezier(.22,1,.36,1),opacity .16s,transform .26s,visibility 0s linear .26s;display:flex;overflow:hidden;transform:translate(10px)}.gallery-echo-dock.is-expanded .gallery-echo-reveal,.gallery-echo-dock:focus-within .gallery-echo-reveal{opacity:1;pointer-events:auto;visibility:visible;width:250px;transition-delay:0s,.1s,80ms,0s;transform:translate(0)}.gallery-echo-avatar{background:var(--gallery-bone);width:46px;height:46px;color:var(--gallery-ink);cursor:pointer;border:1px solid #5b5b56;border-radius:50%;flex:none;order:2;padding:0;display:block}.gallery-echo-avatar:focus-visible{outline:2px solid var(--gallery-paper);outline-offset:2px}.gallery-echo-copy{min-width:74px;padding-left:3px}.gallery-echo-copy strong,.gallery-echo-copy span{display:block}.gallery-echo-copy strong{font-family:var(--gallery-serif);font-size:20px;font-weight:400;line-height:1}.gallery-echo-copy span{color:#aaa;letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:8px}.gallery-echo-actions{gap:5px;display:flex}.gallery-echo-actions button{min-height:38px;color:var(--gallery-paper);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #505050;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:9px;transition:background .18s,color .18s;display:inline-flex}.gallery-echo-actions button:hover,.gallery-echo-actions button:focus-visible{background:var(--gallery-paper);color:var(--gallery-ink)}.gallery-echo-panel-shell{z-index:130;width:min(424px,100vw - 36px);max-width:none;font-family:var(--gallery-sans);bottom:18px;right:18px}.gallery-echo-panel-shell .prototype-chat-panel{background:var(--gallery-bone);max-height:calc(100svh - 36px);box-shadow:none;color:var(--gallery-ink);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background-image:none;border:1px solid #393939;border-radius:0;overflow:hidden}.gallery-echo-panel-shell .prototype-chat-header{background:var(--gallery-ink);color:var(--gallery-paper);border-bottom:1px solid #333;padding:13px 14px}.gallery-echo-panel-shell .prototype-chat-header h3{font-family:var(--gallery-serif);letter-spacing:-.02em;font-size:22px;font-weight:400}.gallery-echo-panel-shell .prototype-chat-header p{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:500;color:#aaa!important}.gallery-echo-panel-shell .prototype-chat-avatar{width:50px;height:50px}.gallery-echo-panel-shell .prototype-chat-icon-button{width:36px;height:36px;box-shadow:none;color:var(--gallery-paper);background:0 0;border:1px solid #555;border-radius:50%}.gallery-echo-panel-shell .prototype-chat-tabs{background:var(--gallery-putty);border-bottom:1px solid #8e8c84;gap:0;padding:0}.gallery-echo-panel-shell .prototype-chat-tabs button{min-height:43px;color:var(--gallery-ink);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-right:1px solid #8e8c84;border-radius:0;font-size:10px;font-weight:600}.gallery-echo-panel-shell .prototype-chat-tabs button:last-child{border-right:0}.gallery-echo-panel-shell .prototype-chat-tabs button.is-active{background:var(--gallery-ink);box-shadow:none;color:var(--gallery-paper)}.gallery-echo-panel-shell .prototype-chat-privacy-note{background:var(--gallery-bone);color:var(--gallery-graphite);border-bottom:1px solid #aaa89f;padding:8px 13px;font-size:9px;font-weight:500}.gallery-echo-panel-shell .prototype-chat-privacy-note a{color:var(--gallery-ink)}.gallery-echo-panel-shell .echo-consent-action{border:1px solid var(--gallery-ink);color:var(--gallery-ink);letter-spacing:.06em;text-transform:uppercase;box-shadow:none;background:0 0;border-radius:0;font-size:10px;font-weight:600}.gallery-echo-panel-shell .echo-consent-action.is-primary{background:var(--gallery-ink);color:var(--gallery-paper)}.gallery-echo-panel-shell .prototype-chat-messages{background:var(--gallery-bone);height:min(42vh,320px);padding:14px}.gallery-echo-panel-shell .prototype-chat-bubble{max-width:86%;box-shadow:none;border:1px solid #8d8b83;border-radius:0;font-size:13px}.gallery-echo-panel-shell .prototype-chat-bubble-user{border-color:var(--gallery-ink);background:var(--gallery-ink);color:var(--gallery-paper)}.gallery-echo-panel-shell .prototype-chat-bubble-echo{color:var(--gallery-ink);background:#f5f3ec}.gallery-echo-panel-shell .prototype-chat-input-shell{background:var(--gallery-putty);border-top:1px solid #8d8b83;padding:10px}.gallery-echo-panel-shell .prototype-chat-input{background:var(--gallery-bone);color:var(--gallery-ink);border:1px solid #85837b;border-radius:0;font-size:13px;font-weight:400}.gallery-echo-panel-shell .prototype-chat-send{border:1px solid var(--gallery-ink);background:var(--gallery-ink);min-width:46px;box-shadow:none;color:var(--gallery-paper);border-radius:0}.gallery-echo-panel-shell .prototype-chat-send:disabled{background:#aaa89f;border-color:#8d8b83}.gallery-echo-panel-shell .prototype-chat-voice{background:var(--gallery-ink);height:min(56vh,430px)}.gallery-echo-panel-shell .echo-face-shell{background:var(--gallery-bone);border:1px solid #74726b;border-radius:50%;box-shadow:inset 0 -5px #00000014}.gallery-echo-panel-shell .echo-face-highlight{background:#ffffff73}.gallery-echo-panel-shell .echo-eye{border:1px solid var(--gallery-ink);background:var(--gallery-ink)}.gallery-echo-panel-shell .echo-eye span{background:var(--gallery-paper);box-shadow:none}.gallery-echo-panel-shell .echo-face-cheek{background:0 0;border:1px solid #8a8881}.gallery-echo-panel-shell .echo-mouth-smile,.gallery-echo-panel-shell .echo-thinking-mouth{color:var(--gallery-ink)}.gallery-echo-panel-shell .echo-mouth-flat{background:var(--gallery-ink)}.gallery-echo-panel-shell .echo-mouth-sleep{border-color:var(--gallery-ink)}.gallery-echo-panel-shell .echo-idea-dot span{background:var(--gallery-paper);border-width:1px}.echo-voice{background:var(--gallery-ink);height:100%;min-height:350px;color:var(--gallery-paper);flex-direction:column;justify-content:center;align-items:center;padding:32px 26px;display:flex;position:relative;overflow:hidden}.echo-voice-visual{position:relative}.echo-voice-pulse{border:1px solid var(--gallery-paper);border-radius:50%;position:absolute;inset:0}.echo-voice-pulse-speaking{border-style:dashed}.echo-voice-avatar{z-index:1;border:1px solid #5e5e5e;border-radius:50%;width:142px;height:142px;padding:7px;position:relative}.echo-voice-avatar>div{width:100%;height:100%}.echo-voice-copy{text-align:center;margin-top:24px}.echo-voice-copy>p{color:#929292;letter-spacing:.14em;text-transform:uppercase;font-size:9px}.echo-voice-copy h3{font-family:var(--gallery-serif);letter-spacing:-.04em;margin:6px 0 8px;font-size:38px;font-weight:400;line-height:1}.echo-voice-copy span{color:#aaa;font-size:12px}.echo-voice-actions{justify-content:center;margin-top:24px;display:flex}.echo-voice-action{border:1px solid var(--gallery-paper);background:var(--gallery-paper);min-height:42px;color:var(--gallery-ink);letter-spacing:.08em;text-transform:uppercase;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 17px;font-size:10px;font-weight:600;display:inline-flex}.echo-voice-action:hover{color:var(--gallery-paper);background:0 0}.echo-voice-action.is-stop{color:#fff;background:#b9756e;border-color:#b9756e;width:46px;padding:0}.echo-voice-meter{justify-content:center;align-items:center;gap:4px;height:28px;margin-top:20px;display:flex}.echo-voice-meter-bar{background:var(--gallery-paper);border-radius:2px;width:3px}.gallery-footer{color:#8a8a8a;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #333;padding-top:18px;font-size:9px}@keyframes gallery-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes gallery-wordmark{0%{opacity:0;transform:translateY(12%)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.gallery-case-results{padding:86px 28px 72px;overflow-y:auto}.gallery-case-results>strong{margin-top:44px;font-size:clamp(78px,16vw,130px)}.gallery-case-results>strong.is-long{font-size:clamp(52px,10vw,82px)}.gallery-case-results h2{max-width:15ch;font-size:clamp(36px,6.5vw,52px)}.gallery-case-results ul{grid-template-columns:1fr}.gallery-case-results li{border-right:0}.gallery-quote-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.gallery-quote-card{scroll-snap-align:start;width:min(40vw,310px);min-width:min(40vw,310px)}.gallery-project-grid{gap:28px}.gallery-ledger-row{grid-template-columns:.2fr 1fr 1fr 20px}.gallery-ledger-date{display:none}.gallery-lab-grid,.gallery-skill-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.gallery-nav,.gallery-work,.gallery-results,.gallery-experience,.gallery-contact{padding-left:18px;padding-right:18px}.gallery-nav-links a:not(:last-child){display:none}.gallery-hero{min-height:720px}.gallery-hero-cluster{margin-top:95px}.gallery-hero-title{font-size:clamp(38px,12vw,58px)}.gallery-hero-statement{font-size:clamp(25px,8vw,34px)}.gallery-wordmark{font-size:40vw;bottom:34px}.gallery-hero-meta{display:none}.gallery-portrait-panel{min-height:760px}.gallery-panel-art{-o-object-position:24% center;object-position:24% center}.gallery-notched-card{min-height:500px;padding:48px 30px 40px}.gallery-work-heading{margin:88px auto 66px}.gallery-work-heading h2,.gallery-experience-heading h2{font-size:17.5vw}.gallery-project-grid{grid-template-columns:1fr}.gallery-project-archive{margin-top:20px;display:block}.gallery-archive-list{margin-top:60px}.gallery-archive-row{grid-template-columns:30px 1fr 20px}.gallery-archive-row>strong{display:none}.gallery-project-image{width:min(78vw,340px)}.gallery-project-summary{min-height:auto}.gallery-indicators{margin-bottom:85px}.gallery-results-copy,.gallery-experience-heading{min-height:0;padding:90px 0 80px;display:block}.gallery-results-copy h2{margin-top:38px}.gallery-stat-row{grid-template-columns:1fr}.gallery-stat{border-bottom:1px solid #89887f;border-right:0;min-height:220px}.gallery-stat:last-child{border-bottom:0}.gallery-stat>span{margin-bottom:34px}.gallery-experience-heading p{margin-top:38px}.gallery-writing,.gallery-credentials,.gallery-recommendations,.gallery-toolkit,.gallery-lab,.gallery-outside{padding-left:18px;padding-right:18px}.gallery-outside-heading{padding:90px 0 75px}.gallery-writing-heading{padding:34px 0 22px;display:block}.gallery-writing-heading .gallery-kicker{margin-bottom:18px}.gallery-credentials-heading{grid-template-columns:.7fr 1.3fr;padding:22px 0 16px;display:grid}.gallery-credentials-heading .gallery-kicker{margin-bottom:0}.gallery-recommendations-heading{padding:42px 0 26px;display:block}.gallery-recommendations-heading .gallery-kicker{margin-bottom:24px}.gallery-writing-heading h2{font-size:12vw}.gallery-credentials-heading h2{font-size:10vw}.gallery-recommendations-heading h2{font-size:12.5vw}.gallery-article-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;width:calc(100% + 18px);padding-right:18px;display:flex;overflow-x:auto}.gallery-article{scroll-snap-align:start;width:min(76vw,290px);min-width:min(76vw,290px);min-height:390px}.gallery-quote-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:#555 transparent;scrollbar-width:thin;border-left:0;width:calc(100% + 18px);padding-right:18px;scroll-padding-left:0;display:flex;overflow-x:auto}.gallery-quote-card{scroll-snap-align:start;border-left:1px solid #3b3b3b;width:min(82vw,330px);min-width:min(82vw,330px);height:455px;padding:20px}.gallery-quote-excerpt{-webkit-line-clamp:7;margin:24px 0 16px;font-size:18px}.gallery-quote-card:has(.gallery-quote-details[open]){grid-column:auto;height:auto;min-height:0}.gallery-quote-card footer{margin-top:22px}.gallery-toolkit-heading{grid-template-columns:1fr;gap:10px;padding:20px 0 15px;display:grid}.gallery-toolkit-heading h2{font-size:10vw}.gallery-toolkit-heading p{margin-top:0;font-size:10px}.gallery-skill-grid,.gallery-software-grid{width:calc(100% + 18px);padding-right:18px;display:flex}.gallery-skill-card{width:min(64vw,245px);min-width:min(64vw,245px);height:215px;min-height:0;padding:14px}.gallery-skill-card>svg{top:14px;right:14px}.gallery-skill-card h3{margin-top:58px;font-size:24px}.gallery-software-card{width:min(58vw,225px);min-width:min(58vw,225px);height:220px;min-height:0;padding:14px}.gallery-software-icon{width:34px;height:34px;margin:17px 0 11px}.gallery-software-card h3{font-size:23px}.gallery-software{padding-top:18px}.gallery-education-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-certificate-grid{width:calc(100% + 18px);padding-right:18px}.gallery-certificate-card{width:min(68vw,255px);min-width:min(68vw,255px);min-height:235px;padding:16px}.gallery-certificate-heading{justify-content:space-between;align-items:end;gap:24px;padding:18px 0 12px;display:flex}.gallery-certificate-heading h3{text-align:right;max-width:210px;font-size:24px}.gallery-education-card{min-height:250px;padding:14px}.gallery-education-card>p{margin-top:20px}.gallery-education-card h3{font-size:23px}.gallery-education-card ul{margin-top:18px;display:block}.gallery-education-card li{padding-top:8px}.gallery-view-all{grid-template-columns:1fr 24px;min-height:100px;padding:17px 20px}.gallery-view-all>span{grid-column:1/3}.gallery-article-lead{grid-row:auto}.gallery-article,.gallery-article-lead .gallery-article-image{min-height:0}.gallery-article-image{min-height:220px}.gallery-lab-heading{grid-template-columns:1fr;gap:10px;padding:28px 0 20px;display:grid}.gallery-lab-heading h2{font-size:11vw}.gallery-lab-heading p{margin-top:0;font-size:10px}.gallery-lab-grid{width:calc(100% + 18px);padding-right:18px}.gallery-lab-card{width:min(78vw,300px);min-width:min(78vw,300px);height:500px;min-height:0}.gallery-lab-image{height:280px}.gallery-outside-heading{grid-template-columns:1fr;gap:10px;padding:28px 0 20px;display:grid}.gallery-outside-heading h2{font-size:11vw}.gallery-hobby-list{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;width:calc(100% + 18px);padding-right:18px;display:flex;overflow-x:auto}.gallery-hobby-row{scroll-snap-align:start;width:min(72vw,285px);min-width:min(72vw,285px);height:500px;min-height:0;padding:18px}.gallery-hobby-preview{clip-path:inset(0);opacity:1;height:auto;inset:0}.gallery-hobby-icon{margin-top:58px}.gallery-hobby-hero{grid-template-rows:42% 58%;grid-template-columns:1fr;min-height:0;padding:0;display:grid}.gallery-hobby-hero-image{grid-area:1/1;width:100%;height:100%}.gallery-hobby-hero-image:after{border-top:1px solid color-mix(in srgb,var(--gallery-ink)24%,transparent);border-left:0}.gallery-hobby-hero-image>span{font-size:7px;bottom:12px;right:12px}.gallery-hobby-hero-copy{grid-area:2/1;justify-content:flex-start;padding:20px 18px 30px}.gallery-hobby-hero-icon{width:48px;height:48px;margin-bottom:16px}.gallery-hobby-hero-icon svg{width:25px;height:25px}.gallery-hobby-hero-copy h1{margin:10px 0 12px;font-size:clamp(42px,13.5vw,62px);line-height:.82}.gallery-hobby-hero-copy>p:not(.gallery-kicker){max-width:38rem;font-size:12px;line-height:1.48}.gallery-hobby-hero-link{margin-top:17px}.gallery-hobby-hero>span{font-size:40px;top:82px;bottom:auto;right:18px}.gallery-hobby-why{min-height:0;padding:62px 18px;display:block}.gallery-hobby-why h2,.gallery-hobby-notes-heading h2{font-size:13vw}.gallery-hobby-why>p{margin-top:40px;font-size:23px}.gallery-hobby-module>.prototype-section{padding:54px 18px}.gallery-hobby-module>.prototype-section>h2{font-size:12vw}.gallery-hobby-notes{padding:54px 18px;display:block}.gallery-hobby-note-grid{grid-template-columns:1fr;margin-top:42px}.gallery-hobby-note-grid article{min-height:300px}.gallery-hobby-note-grid h3{margin-top:42px}.gallery-detail-nav{padding:18px}.gallery-detail-nav>span{display:none}.gallery-detail-nav{grid-template-columns:1fr auto}.gallery-case-hero{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height));grid-template-rows:minmax(190px,32%) minmax(0,68%);grid-template-columns:1fr}.gallery-case-hero-image{grid-row:1}.gallery-case-hero-image figcaption{font-size:7px;bottom:12px;right:14px}.gallery-case-hero-copy{border-top:1px solid var(--gallery-vellum);border-left:0;padding:15px 18px 24px}.gallery-case-hero-meta{font-size:7px}.gallery-case-hero-title{padding:12px 0}.gallery-case-hero-title .gallery-kicker{display:none}.gallery-case-hero-title h1,.gallery-case-hero-title h1.is-long{max-width:22ch;margin:0 0 10px;font-size:clamp(35px,9.7vw,45px);line-height:.87}.gallery-case-hero-title h1.is-long{font-size:clamp(32px,8.7vw,40px)}.gallery-case-hero-title>p:last-child{font-size:10px;line-height:1.45}.gallery-case-outcome{grid-template-columns:auto minmax(80px,1fr);gap:5px 14px;padding-top:10px}.gallery-case-outcome>span{grid-column:1/3}.gallery-case-outcome strong{font-size:32px}.gallery-case-outcome p{font-size:7px}.gallery-case-body{padding:0}.gallery-case-intro{grid-template-columns:1fr;align-content:center;padding:52px 18px;display:grid}.gallery-case-intro h2{margin:32px 0}.gallery-case-hypothesis{padding:54px 18px}.gallery-case-columns{grid-template-columns:1fr;align-content:start;gap:58px;padding:46px 18px}.gallery-case-results{text-align:left;padding:46px 18px 40px}.gallery-case-results>.gallery-kicker{text-align:left}.gallery-case-results>strong,.gallery-case-results>strong.is-long{letter-spacing:-.07em;white-space:normal;margin:30px 0 12px;font-size:clamp(64px,22vw,88px);line-height:1}.gallery-case-results>strong.is-long{max-width:100%;font-size:clamp(42px,12vw,54px);line-height:1}.gallery-case-results h2{text-align:left;max-width:12ch;margin:0;font-size:clamp(29px,8.5vw,37px);line-height:.92}.gallery-case-results>p:not(.gallery-kicker){max-width:42rem;margin:22px 0 32px;font-size:12px;line-height:1.55}.gallery-case-results ul{grid-template-columns:1fr;width:100%;max-width:none;margin:0}.gallery-case-results li{text-align:left;border-right:0;padding:14px 0;font-size:10px}.gallery-next-project{grid-template-columns:1fr 24px;padding:42px 18px}.gallery-next-project>strong{font-size:clamp(30px,10vw,42px)}.gallery-next-project>span{grid-column:1/3}.gallery-ledger-row{grid-template-columns:32px 1fr 20px;gap:14px;min-height:0;padding:28px 0 34px}.gallery-ledger-copy{grid-column:2/4}.gallery-blog-feature{min-height:0;padding:18px 18px 22px}.gallery-blog-feature-topline{padding-bottom:16px}.gallery-blog-feature-topline>span{display:none}.gallery-blog-feature-link{grid-template-columns:1fr;gap:26px;padding-top:0}.gallery-blog-feature-copy{padding:42px 0 4px}.gallery-blog-feature-meta{flex-wrap:wrap;gap:10px 14px;margin-bottom:24px}.gallery-blog-feature-meta span+span,.gallery-blog-feature-meta time{padding-left:15px}.gallery-blog-index-head h1{max-width:16ch;font-size:clamp(41px,11.5vw,61px);line-height:.9}.gallery-blog-feature-deck{margin-top:22px;font-size:14px}.gallery-blog-feature-action{margin-top:26px}.gallery-blog-thumb.gallery-blog-feature-image{aspect-ratio:4/3;height:auto;min-height:230px}.gallery-blog-archive{padding:72px 18px 90px}.gallery-blog-archive-head{margin-bottom:46px;display:block}.gallery-blog-archive-head h2{margin-top:14px;font-size:clamp(43px,12vw,58px)}.gallery-blog-archive-head>p{margin-top:24px;font-size:12px}.gallery-blog-filter-bar{grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:16px 14px;padding:17px 0 20px;position:relative;top:auto}.gallery-blog-filters-label,.gallery-blog-filter-status{grid-column:1/-1}.gallery-blog-filters-label{padding-bottom:0}.gallery-blog-select-shell select{min-height:39px;font-size:16px}.gallery-blog-filter-status{justify-content:space-between;min-height:22px}.gallery-blog-filter-empty{min-height:280px;padding:58px 0}.gallery-blog-filter-empty>p{font-size:clamp(34px,10vw,44px)}.gallery-blog-archive-row{grid-template-columns:28px minmax(0,1fr) 20px;align-items:start;gap:12px 14px;min-height:0;padding:22px 0 24px}.gallery-blog-archive-row:hover,.gallery-blog-archive-row:focus-visible{padding-left:8px;padding-right:8px}.gallery-blog-archive-copy>p{flex-wrap:wrap;gap:8px 12px}.gallery-blog-archive-copy>p span+span{padding-left:13px}.gallery-blog-archive-row h3{margin-top:8px;font-size:clamp(25px,7.5vw,34px);line-height:.98}.gallery-blog-archive-row time{grid-area:2/2}.gallery-blog-archive-row>svg{grid-area:1/3;margin-top:2px}.gallery-blog-empty{min-height:calc(100svh - var(--gallery-subnav-height));padding:64px 18px}.gallery-post-head{padding:22px 18px 46px}.gallery-post-head-meta{font-size:8px}.gallery-post-head-meta>span{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:46vw;overflow:hidden}.gallery-post-head h1{text-align:left;margin:60px 0 42px;font-size:clamp(47px,13.8vw,66px);line-height:.87}.gallery-post-intro{flex-direction:column;align-items:flex-start;gap:28px;padding-top:18px;display:flex}.gallery-post-intro>p{font-size:20px}.gallery-post-image{width:calc(100% - 36px);height:68vw;margin-top:18px}.gallery-post-image figcaption{display:none}.gallery-post-reading{padding:72px 18px 90px;display:block}.gallery-post-aside{margin-bottom:64px;position:static}.gallery-post-aside dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.gallery-post-aside dl>div{min-width:0}.gallery-post-aside dd{overflow-wrap:anywhere;font-size:12px}.gallery-post-prose{font-size:18px;line-height:1.65}.gallery-post-prose h2{font-size:36px}.gallery-post-footer{flex-direction:column;justify-content:center;align-items:flex-start;min-height:260px;padding:42px 18px}.gallery-role-hero{min-height:calc(100svh - var(--gallery-subnav-height));grid-template-rows:38% 62%;grid-template-columns:1fr;padding:0;display:grid}.gallery-role-hero-image{grid-area:1/1;width:100%;height:100%}.gallery-role-hero-image:after{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--gallery-paper)18%,transparent)}.gallery-role-hero-image>span{font-size:7px;bottom:12px;left:12px}.gallery-role-hero-copy{grid-area:2/1;justify-content:flex-start;padding:20px 18px 26px;overflow-y:auto}.gallery-role-hero-copy h1{margin:16px 0 14px;font-size:clamp(44px,13vw,58px);line-height:.84}.gallery-role-hero-copy h1.gallery-role-title-long{font-size:clamp(40px,11.5vw,52px)}.gallery-role-company{flex-direction:row;align-items:center;gap:12px}.gallery-role-logo{width:82px;height:44px;margin-bottom:0}.gallery-role-logo img{padding:8px}.gallery-role-dates{flex-flow:wrap;gap:6px 14px;margin-bottom:14px}.gallery-role-hero-copy>p{max-width:520px;font-size:11px;line-height:1.42}.gallery-role-hero-copy>a{margin-top:13px}.gallery-hotel-timeline{padding:90px 18px}.gallery-hotel-timeline-heading{padding-bottom:70px;display:block}.gallery-hotel-timeline-heading h2{font-size:15vw}.gallery-hotel-timeline-heading>p{margin-top:44px;font-size:14px}.gallery-hotel-timeline-list article{grid-template-columns:32px 1fr;gap:14px;min-height:0;padding:28px 0 34px}.gallery-hotel-timeline-copy{grid-column:2}.gallery-hotel-timeline-role h3{margin-top:20px;font-size:36px}.gallery-hotel-timeline-copy>span{margin-top:16px;font-size:13px}.gallery-cert-detail-hero{min-height:calc(100svh - var(--gallery-subnav-height));padding:34px 18px 38px}.gallery-cert-detail-logo{width:104px;height:58px;margin-bottom:9px}.gallery-cert-detail-hero>.gallery-kicker{margin-top:15px}.gallery-cert-detail-hero h1,.gallery-cert-detail-hero h1.is-long{margin:20px 0 17px;font-size:clamp(44px,13vw,60px);line-height:.84}.gallery-cert-detail-hero h1.is-long{font-size:clamp(40px,11.5vw,54px)}.gallery-cert-detail-meta{flex-direction:column;gap:6px;margin-bottom:17px}.gallery-cert-detail-summary{max-width:520px;font-size:13px;line-height:1.5}.gallery-cert-detail-jump{margin-top:15px}.gallery-cert-learning,.gallery-cert-skills,.gallery-cert-proof{padding:90px 18px}.gallery-cert-learning{display:block}.gallery-cert-learning-heading h2,.gallery-cert-skills-heading h2,.gallery-cert-proof-heading h2{font-size:15vw}.gallery-cert-learning>ol{margin-top:62px}.gallery-cert-learning aside{min-height:0;margin-top:70px;padding:28px;display:block}.gallery-cert-learning aside h3{margin-top:38px;font-size:42px}.gallery-cert-learning aside>p:last-child{margin-top:30px;font-size:13px}.gallery-cert-skills-heading,.gallery-cert-proof-heading{padding-bottom:64px;display:block}.gallery-cert-skills-heading h2{margin-top:34px}.gallery-cert-skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-cert-skills-grid article{min-height:170px;padding:15px}.gallery-cert-skills-grid h3{font-size:24px}.gallery-cert-proof-heading>p{margin-top:42px;font-size:13px}.gallery-cert-proof-frame img{padding:14px}.gallery-cert-proof-frame.is-badge img{padding:14%}.gallery-role-section{min-height:0;padding:90px 18px;display:block}.gallery-role-section ol{margin-top:60px}.gallery-role-skills{padding:90px 18px}.gallery-role-skills>div{grid-template-columns:1fr}.gallery-contact h2{font-size:19vw}.gallery-hero-actions{flex-direction:column;gap:10px}.prototype-fab.gallery-echo-dock{width:56px;height:56px;padding:7px;bottom:10px;right:10px}.prototype-fab.gallery-echo-dock.is-expanded,.prototype-fab.gallery-echo-dock:focus-within{width:calc(100vw - 20px)}.gallery-echo-dock.is-expanded .gallery-echo-reveal,.gallery-echo-dock:focus-within .gallery-echo-reveal{width:calc(100vw - 76px)}.gallery-echo-avatar{width:40px;height:40px}.gallery-echo-copy span{display:none}.gallery-echo-actions button{min-height:36px;padding:0 8px}.gallery-echo-panel-shell{width:calc(100vw - 16px);bottom:8px;right:8px}.gallery-echo-panel-shell .prototype-chat-panel{clip-path:none;max-height:calc(100svh - 16px)}.gallery-echo-panel-shell .prototype-chat-messages{height:min(39vh,300px)}.gallery-contact-links{flex-direction:column;gap:22px}.gallery-footer span:nth-child(2){display:none}}.gallery-page,.gallery-hobby-page{scroll-behavior:smooth;scroll-snap-type:y mandatory;scrollbar-width:none;height:100svh;overflow:clip auto}.gallery-page::-webkit-scrollbar{display:none}.gallery-hobby-page::-webkit-scrollbar{display:none}.gallery-page>section,.gallery-hobby-page>.gallery-hobby-hero,.gallery-hobby-page>.gallery-hobby-why,.gallery-hobby-page>.gallery-hobby-module,.gallery-hobby-page>.gallery-hobby-notes,.gallery-hobby-page>.gallery-next-project{scroll-snap-align:start;scroll-snap-stop:always;scrollbar-color:color-mix(in srgb,currentColor 22%,transparent)transparent;scrollbar-width:thin;height:100svh;min-height:100svh;overflow:clip auto}.gallery-hobby-page{position:relative}.gallery-hobby-page>.gallery-detail-nav{z-index:30;position:absolute;top:0;left:0;right:0}.gallery-hobby-page>.gallery-next-project{align-content:center}@supports (height:100dvh){.gallery-page,.gallery-hobby-page,.gallery-page>section,.gallery-hobby-page>.gallery-hobby-hero,.gallery-hobby-page>.gallery-hobby-why,.gallery-hobby-page>.gallery-hobby-module,.gallery-hobby-page>.gallery-hobby-notes,.gallery-hobby-page>.gallery-next-project{height:100dvh;min-height:100dvh}}.gallery-sidequest-page{--sidequest-line:color-mix(in srgb,var(--gallery-ink)25%,transparent);background:var(--gallery-bone);min-height:100vh;color:var(--gallery-ink);font-family:var(--gallery-sans);overflow:clip}.gallery-sidequest-page a{color:inherit;text-decoration:none}.gallery-sidequest-hero{height:calc(100svh - var(--gallery-subnav-height));scroll-snap-align:start;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);min-height:660px;display:grid;overflow:hidden}.gallery-sidequest-hero-copy{border-right:1px solid var(--sidequest-line);background:var(--gallery-putty);flex-direction:column;justify-content:space-between;align-items:flex-start;min-width:0;padding:clamp(34px,5vw,76px);display:flex}.gallery-sidequest-back,.gallery-sidequest-scroll{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:9px;padding-bottom:5px;font-size:9px;display:inline-flex}.gallery-sidequest-back svg,.gallery-sidequest-scroll svg{transition:transform .22s}.gallery-sidequest-back:hover svg{transform:translate(-4px)}.gallery-sidequest-scroll:hover svg{transform:translateY(4px)}.gallery-sidequest-title-block{max-width:650px;margin:auto 0;padding:clamp(26px,4vh,48px) 0;animation:.76s cubic-bezier(.2,.7,.2,1) both gallery-rise}.gallery-sidequest-title-block h1{max-width:12ch;font-family:var(--gallery-serif);letter-spacing:-.06em;text-wrap:balance;margin:18px 0 24px;font-size:clamp(50px,5.1vw,82px);font-weight:400;line-height:.86}.gallery-sidequest-title-block>h1+p{color:#3f3f3b;max-width:560px;font-size:clamp(12px,1vw,14px);line-height:1.6}.gallery-sidequest-page a.gallery-sidequest-primary-cta{border:1px solid var(--gallery-ink);background:var(--gallery-ink);width:fit-content;min-width:218px;color:var(--gallery-paper);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:28px;margin-top:26px;padding:14px 16px;font-size:11px;line-height:1.1;transition:background .18s,color .18s,transform .18s;display:inline-flex}.gallery-sidequest-primary-cta span{gap:6px;display:grid}.gallery-sidequest-primary-cta small{color:#aaa;letter-spacing:.14em;font-size:7px;line-height:1}.gallery-sidequest-page a.gallery-sidequest-primary-cta:hover,.gallery-sidequest-page a.gallery-sidequest-primary-cta:focus-visible{color:var(--gallery-ink);background:0 0;transform:translateY(-2px)}.gallery-sidequest-page a.gallery-sidequest-primary-cta:hover small,.gallery-sidequest-page a.gallery-sidequest-primary-cta:focus-visible small{color:var(--gallery-graphite)}.gallery-sidequest-primary-cta svg{flex:none;transition:transform .22s}.gallery-sidequest-primary-cta:hover svg,.gallery-sidequest-primary-cta:focus-visible svg{transform:translate(4px,-4px)}.gallery-sidequest-tags{flex-wrap:wrap;gap:6px;max-width:640px;display:flex}.gallery-sidequest-tags span{border:1px solid var(--sidequest-line);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;padding:6px 9px;font-size:8px}.gallery-sidequest-scroll{margin-top:22px}.gallery-sidequest-hero-image{background:#121212;min-width:0;height:100%;position:relative;overflow:hidden}.gallery-sidequest-hero-image:after{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gallery-paper)12%,transparent);content:"";pointer-events:none;position:absolute;inset:0}.gallery-sidequest-hero-image img{-o-object-fit:cover;object-fit:cover;filter:saturate(.72)contrast(.96);animation:.9s cubic-bezier(.2,.7,.2,1) both gallery-case-image-arrive}.gallery-sidequest-hero-image.is-contain{background:linear-gradient(135deg,#ffffff0a,#0000 45%),#070707}.gallery-sidequest-hero-image.is-contain img{-o-object-fit:contain;object-fit:contain;filter:none;padding:clamp(68px,9vw,150px)}.gallery-sidequest-outquest .gallery-sidequest-hero-image.is-contain{background:radial-gradient(circle at 72% 22%,#d9913252,#0000 30%),linear-gradient(145deg,#fff6dc 0 52%,#2e5b37 52% 100%)}.gallery-sidequest-outquest .gallery-sidequest-hero-image.is-contain img{filter:drop-shadow(0 34px 44px #2b1d1547);padding:clamp(62px,8vw,132px)}.gallery-sidequest-motion{display:block;position:absolute;inset:0}.gallery-sidequest-outquest .gallery-sidequest-motion:before{aspect-ratio:1;content:"";border:1px solid #fff6dc45;border-radius:50%;width:min(48vw,560px);animation:3.2s ease-in-out infinite gallery-pip-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes gallery-pip-pulse{0%,to{opacity:.38;box-shadow:0 0 #fff6dc14}50%{opacity:.92;box-shadow:0 0 0 22px #fff6dc00}}.gallery-sidequest-hero-image figcaption{z-index:2;color:var(--gallery-paper);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;font-size:8px;font-weight:400;display:flex;position:absolute;bottom:20px;left:22px;right:22px}.gallery-sidequest-hero-image figcaption strong{font-weight:400}.gallery-sidequest-metrics{border-top:1px solid var(--sidequest-line);border-bottom:1px solid var(--sidequest-line);background:var(--gallery-bone);min-height:150px;scroll-margin-top:var(--gallery-subnav-height);grid-template-columns:repeat(3,1fr);display:grid}.gallery-sidequest-metrics>div{border-right:1px solid var(--sidequest-line);flex-direction:column;justify-content:space-between;align-items:flex-start;min-width:0;padding:24px clamp(20px,3vw,46px);display:flex}.gallery-sidequest-metrics>div:last-child{border-right:0}.gallery-sidequest-metrics span{color:var(--gallery-graphite);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.gallery-sidequest-metrics strong{max-width:16ch;font-family:var(--gallery-serif);letter-spacing:-.045em;font-size:clamp(24px,2.7vw,40px);font-weight:400;line-height:.95}.gallery-sidequest-chapter{min-height:calc(100svh - var(--gallery-subnav-height));border-bottom:1px solid var(--sidequest-line);scroll-snap-align:start;grid-template-columns:minmax(0,1.02fr) minmax(340px,.78fr);align-items:center;gap:clamp(56px,9vw,150px);padding:clamp(68px,9vh,112px) max(28px,7vw);display:grid}.gallery-sidequest-chapter.is-dark{--sidequest-line:#3c3c3c;background:var(--gallery-ink);color:var(--gallery-paper)}.gallery-sidequest-chapter-heading>span{width:44px;height:44px;font-family:var(--gallery-serif);border:1px solid;border-radius:50%;place-items:center;margin-bottom:clamp(36px,6vh,70px);font-size:12px;display:grid}.gallery-sidequest-chapter h2{max-width:850px;font-family:var(--gallery-serif);letter-spacing:-.06em;text-wrap:balance;margin-top:22px;font-size:clamp(48px,6.2vw,94px);font-weight:400;line-height:.86}.gallery-sidequest-chapter-copy{align-self:center}.gallery-sidequest-chapter-copy>p{color:var(--gallery-graphite);font-size:clamp(13px,1.05vw,16px);line-height:1.68}.gallery-sidequest-chapter-copy>p+p{margin-top:1.25em}.gallery-sidequest-chapter.is-dark .gallery-sidequest-chapter-copy>p{color:#aaa}.gallery-sidequest-chapter-copy ul{border-top:1px solid var(--sidequest-line);margin-top:34px;list-style:none}.gallery-sidequest-chapter-copy li{border-bottom:1px solid var(--sidequest-line);color:var(--gallery-graphite);grid-template-columns:34px 1fr;gap:10px;padding:17px 0;font-size:12px;line-height:1.5;display:grid}.gallery-sidequest-chapter.is-dark .gallery-sidequest-chapter-copy li{color:#aaa}.gallery-sidequest-chapter-copy li>span{letter-spacing:.08em;padding-top:2px;font-size:8px}.gallery-sidequest-lesson{min-height:calc(100svh - var(--gallery-subnav-height));background:var(--gallery-ink);color:var(--gallery-paper);text-align:center;border-bottom:1px solid #333;place-content:center;padding:clamp(70px,10vh,125px) max(28px,10vw);display:grid}.gallery-sidequest-lesson h2{max-width:980px;font-family:var(--gallery-serif);letter-spacing:-.065em;text-wrap:balance;margin:26px auto 34px;font-size:clamp(52px,7vw,106px);font-weight:400;line-height:.85}.gallery-sidequest-lesson blockquote{color:#aaa;max-width:680px;font-family:var(--gallery-serif);margin:0 auto;font-size:clamp(17px,1.7vw,24px);font-style:italic;line-height:1.45}.gallery-sidequest-actions{justify-content:center;align-items:center;gap:28px;margin-top:44px;display:flex}.gallery-sidequest-actions a{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:16px;padding-bottom:7px;font-size:9px;display:inline-flex}.gallery-sidequest-actions a.gallery-sidequest-primary-cta{border:1px solid var(--gallery-paper);background:var(--gallery-paper);min-width:240px;color:var(--gallery-ink);margin-top:0;padding:15px 18px}.gallery-sidequest-actions a.gallery-sidequest-primary-cta small{color:var(--gallery-graphite)}.gallery-sidequest-actions a.gallery-sidequest-primary-cta:hover,.gallery-sidequest-actions a.gallery-sidequest-primary-cta:focus-visible{color:var(--gallery-paper);background:0 0}.gallery-sidequest-actions a.gallery-sidequest-primary-cta:hover small,.gallery-sidequest-actions a.gallery-sidequest-primary-cta:focus-visible small{color:#aaa}.gallery-sidequest-actions a svg{transition:transform .22s}.gallery-sidequest-actions a:hover svg{transform:translate(4px,-4px)}.gallery-lab-card:hover .gallery-lab-image,.gallery-lab-card:focus-visible .gallery-lab-image{height:auto;margin:0;position:absolute;inset:0}.gallery-lab-card:hover .gallery-lab-image:after,.gallery-lab-card:focus-visible .gallery-lab-image:after{content:"";background:linear-gradient(#00000014 32%,#000000e0);position:absolute;inset:0}.gallery-lab-card:hover .gallery-lab-image img,.gallery-lab-card:focus-visible .gallery-lab-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale(.15);padding:0;transform:scale(1.035)}.gallery-lab-card:hover .gallery-lab-image.is-transparent-mark img,.gallery-lab-card:focus-visible .gallery-lab-image.is-transparent-mark img{-o-object-fit:contain;object-fit:contain;padding:clamp(32px,4vw,54px)}.gallery-lab-card>span,.gallery-lab-card>p,.gallery-lab-card>h3,.gallery-lab-card>svg{z-index:2}.gallery-lab-card:hover>p,.gallery-lab-card:focus-visible>p{color:#d6d6d6;position:absolute;bottom:67px;left:16px}.gallery-lab-card:hover>h3,.gallery-lab-card:focus-visible>h3{color:var(--gallery-paper);position:absolute;bottom:26px;left:16px}@supports (height:100dvh){.gallery-sidequest-hero,.gallery-sidequest-chapter,.gallery-sidequest-lesson{min-height:calc(100dvh - var(--gallery-subnav-height))}}@media (max-width:900px){.gallery-sidequest-hero{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);min-height:720px}.gallery-sidequest-hero-copy{padding:34px 28px}.gallery-sidequest-title-block h1{font-size:clamp(46px,7vw,66px)}.gallery-sidequest-hero-image.is-contain img{padding:54px}.gallery-sidequest-chapter{grid-template-columns:minmax(0,1fr) minmax(300px,.88fr);gap:50px}.gallery-sidequest-chapter h2{font-size:clamp(44px,7vw,70px)}}@media (max-width:760px){.gallery-sidequest-hero{height:calc(100svh - var(--gallery-subnav-height));grid-template-rows:minmax(230px,40%) minmax(0,60%);grid-template-columns:1fr;min-height:680px;display:grid}.gallery-sidequest-hero-copy{border-top:1px solid var(--sidequest-line);border-right:0;grid-row:2;padding:22px 18px 18px}.gallery-sidequest-back{order:-2}.gallery-sidequest-title-block{margin:auto 0;padding:14px 0 10px}.gallery-sidequest-title-block h1{max-width:14ch;margin:9px 0 12px;font-size:clamp(36px,10.8vw,52px);line-height:.88}.gallery-sidequest-title-block>h1+p{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.gallery-sidequest-page a.gallery-sidequest-primary-cta{width:100%;min-width:0;margin-top:14px;padding:11px 13px}.gallery-sidequest-primary-cta span{gap:4px}.gallery-sidequest-tags{display:none}.gallery-sidequest-tags span{padding:4px 7px;font-size:7px}.gallery-sidequest-scroll{margin-top:10px}.gallery-sidequest-hero-image{grid-row:1}.gallery-sidequest-hero-image.is-contain img{padding:44px 72px}.gallery-sidequest-hero-image figcaption{bottom:12px;left:14px;right:14px}.gallery-sidequest-metrics{scroll-snap-type:x mandatory;scrollbar-width:none;min-height:122px;display:flex;overflow-x:auto}.gallery-sidequest-metrics::-webkit-scrollbar{display:none}.gallery-sidequest-metrics>div{scroll-snap-align:start;width:74vw;min-width:74vw;padding:18px}.gallery-sidequest-metrics strong{font-size:25px}.gallery-sidequest-chapter{min-height:calc(100svh - var(--gallery-subnav-height));flex-direction:column;justify-content:center;align-items:stretch;gap:34px;padding:44px 18px;display:flex}.gallery-sidequest-chapter-heading>span{width:34px;height:34px;margin-bottom:24px;font-size:10px}.gallery-sidequest-chapter h2{max-width:15ch;margin-top:12px;font-size:clamp(37px,11vw,50px);line-height:.88}.gallery-sidequest-chapter-copy>p{font-size:12px;line-height:1.55}.gallery-sidequest-chapter-copy ul{margin-top:22px}.gallery-sidequest-chapter-copy li{padding:11px 0;font-size:10px;line-height:1.4}.gallery-sidequest-lesson{padding:64px 18px}.gallery-sidequest-lesson h2{margin:20px auto 26px;font-size:clamp(43px,13vw,58px)}.gallery-sidequest-lesson blockquote{font-size:16px}.gallery-sidequest-actions{flex-direction:column;align-items:stretch;gap:18px;margin-top:34px}.gallery-sidequest-actions a{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.gallery-sidequest-page *,.gallery-sidequest-page :before,.gallery-sidequest-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.gallery-lab-image.is-animated-pip:before,.gallery-sidequest-outquest .gallery-sidequest-motion:before{animation:none!important}}:is(.gallery-hobby-module:has(.gallery-cooking),.gallery-hobby-module:has(.gallery-gym),.gallery-hobby-module:has(.gallery-travel),.gallery-hobby-module:has(.gallery-family),.gallery-hobby-module:has(.gallery-golf)){overflow:hidden}.gallery-cooking,.gallery-gym,.gallery-travel,.gallery-family,.gallery-golf{background:var(--gallery-chalk);width:100%;height:100%;min-height:100%;color:var(--gallery-ink);font-family:var(--gallery-sans)}.gallery-family{flex-direction:column;display:flex}.gallery-family-heading{border-bottom:1px solid var(--gallery-vellum);flex:none;grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr);align-items:end;gap:8vw;padding:clamp(24px,3.6vh,42px) max(28px,4vw) clamp(20px,2.8vh,32px);display:grid}.gallery-family-heading h2,.gallery-golf h2{font-family:var(--gallery-serif);letter-spacing:-.065em;margin-top:13px;font-size:clamp(43px,4.7vw,70px);font-weight:400;line-height:.78}.gallery-family-heading h2 em,.gallery-golf h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-family-heading>p{max-width:460px;color:var(--gallery-graphite);padding-bottom:4px;font-size:12px;line-height:1.55}.gallery-family-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));min-height:0;display:grid}.gallery-family-card{border-right:1px solid var(--gallery-vellum);grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.gallery-family-card-image{min-height:0;position:relative;overflow:hidden}.gallery-family-card-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale()sepia(.12)contrast(.9);width:100%;height:100%;transition:filter .28s,transform .5s cubic-bezier(.2,.7,.2,1)}.gallery-family-card:hover img{filter:grayscale(.25)sepia(.08)contrast(.94);transform:scale(1.025)}.gallery-family-card-body{border-top:1px solid var(--gallery-vellum);min-height:145px;padding:18px 20px 20px}.gallery-family-card-body h3{font-family:var(--gallery-serif);letter-spacing:-.04em;font-size:clamp(23px,2vw,32px);font-weight:400;line-height:.95}.gallery-family-card-body p{max-width:48ch;color:var(--gallery-graphite);margin-top:11px;font-size:10px;line-height:1.45}.gallery-golf{background:var(--gallery-putty);grid-template-columns:minmax(300px,.85fr) minmax(280px,.8fr) minmax(260px,.65fr);align-items:center;gap:clamp(28px,6vw,100px);padding:clamp(30px,5vw,72px);display:grid}.gallery-golf header>p:last-child{max-width:46ch;color:var(--gallery-graphite);margin-top:28px;font-size:11px;line-height:1.55}.gallery-golf-target{aspect-ratio:1;border:1px solid var(--gallery-vellum);border-radius:50%;place-items:center;width:min(30vw,390px);display:grid;position:relative}.gallery-golf-target:before,.gallery-golf-target:after{border:1px solid var(--gallery-vellum);content:"";border-radius:50%;position:absolute;inset:18%}.gallery-golf-target:after{inset:36%}.gallery-golf-target span{letter-spacing:.12em;text-transform:uppercase;font-size:8px}.gallery-golf-target i{z-index:2;background:var(--gallery-ink);width:9px;height:9px;box-shadow:0 0 0 7px color-mix(in srgb,var(--gallery-ink)10%,transparent);border-radius:50%;margin:-23% 0 0 31%;position:absolute}.gallery-golf dl{border-top:1px solid var(--gallery-vellum)}.gallery-golf dl>div{border-bottom:1px solid var(--gallery-vellum);padding:15px 0}.gallery-golf dt{color:var(--gallery-graphite);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.gallery-golf dd{font-family:var(--gallery-serif);margin-top:7px;font-size:22px}.gallery-cooking-heading,.gallery-gym-heading{border-bottom:1px solid var(--gallery-vellum);grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr);align-items:end;gap:8vw;padding:clamp(24px,3.6vh,42px) max(28px,4vw) clamp(20px,2.8vh,32px);display:grid}.gallery-cooking-heading h2,.gallery-gym-heading h2,.gallery-travel-copy h2{font-family:var(--gallery-serif);letter-spacing:-.065em;margin-top:13px;font-size:clamp(43px,4.7vw,70px);font-weight:400;line-height:.78}.gallery-cooking-heading h2 em,.gallery-gym-heading h2 em,.gallery-travel-copy h2 em{color:var(--gallery-graphite);font-weight:400}.gallery-cooking-heading>p,.gallery-gym-heading>p{max-width:460px;color:var(--gallery-graphite);padding-bottom:4px;font-size:12px;line-height:1.55}.gallery-cooking{flex-direction:column;display:flex}.gallery-cooking-workspace{border-left:1px solid var(--gallery-vellum);flex:1;grid-template-columns:minmax(190px,.42fr) minmax(0,2.58fr);min-height:0;display:grid}.gallery-cooking-menu{grid-template-rows:repeat(3,1fr);min-width:0;display:grid}.gallery-cooking-menu button{border:0;border-right:1px solid var(--gallery-vellum);border-bottom:1px solid var(--gallery-vellum);min-height:0;color:inherit;cursor:pointer;text-align:left;background:0 0;grid-template-columns:28px 1fr;align-items:start;gap:10px;padding:17px 18px;transition:background-color .22s,color .22s;display:grid}.gallery-cooking-menu button:hover,.gallery-cooking-menu button:focus-visible,.gallery-cooking-menu button.is-active{background:var(--gallery-ink);color:var(--gallery-paper);outline:none}.gallery-cooking-menu button>span,.gallery-cooking-menu button small{color:var(--gallery-graphite);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.gallery-cooking-menu button.is-active>span,.gallery-cooking-menu button.is-active small,.gallery-cooking-menu button:hover>span,.gallery-cooking-menu button:hover small{color:#8e8e8e}.gallery-cooking-menu button small{margin-bottom:12px;display:block}.gallery-cooking-menu button strong{max-width:15ch;font-family:var(--gallery-serif);letter-spacing:-.04em;font-size:clamp(18px,1.65vw,26px);font-weight:400;line-height:.95;display:block}.gallery-cooking-recipe{grid-template-columns:minmax(260px,.92fr) minmax(250px,.72fr) minmax(320px,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.gallery-cooking-image{border-right:1px solid var(--gallery-vellum);background:#d2d0c7;min-width:0;min-height:0;position:relative;overflow:hidden}.gallery-cooking-image img{-o-object-fit:cover;object-fit:cover;filter:saturate(.72)contrast(.94);transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .3s}.gallery-cooking-image:hover img{filter:saturate(.92)contrast(.96);transform:scale(1.025)}.gallery-cooking-image figcaption{background:color-mix(in srgb,var(--gallery-ink)86%,transparent);color:var(--gallery-paper);letter-spacing:.08em;text-transform:uppercase;padding:7px 9px;font-size:7px;position:absolute;bottom:12px;left:14px;right:14px}.gallery-cooking-summary{border-right:1px solid var(--gallery-vellum);background:var(--gallery-putty);flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:clamp(24px,3vw,44px);display:flex}.gallery-cooking-summary h3{font-family:var(--gallery-serif);letter-spacing:-.055em;margin:18px 0 14px;font-size:clamp(34px,3.5vw,54px);font-weight:400;line-height:.88}.gallery-cooking-summary>p:not(.gallery-kicker){color:var(--gallery-graphite);font-size:11px;line-height:1.55}.gallery-cooking-stats{border-top:1px solid var(--gallery-vellum);width:100%;margin:24px 0 20px}.gallery-cooking-stats>div{border-bottom:1px solid var(--gallery-vellum);grid-template-columns:22px 48px 1fr;align-items:center;padding:9px 0;font-size:9px;display:grid}.gallery-cooking-stats dt{color:var(--gallery-graphite);letter-spacing:.07em;text-transform:uppercase}.gallery-cooking-stats dd{text-align:right;justify-self:end}.gallery-cooking-download{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:18px;padding-bottom:6px;font-size:8px;display:inline-flex}.gallery-cooking-method{scrollbar-width:thin;min-width:0;min-height:0;padding:22px 24px;overflow-y:auto}.gallery-cooking-method>section+section{margin-top:28px}.gallery-cooking-column-heading{border-bottom:1px solid var(--gallery-vellum);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.gallery-cooking-column-heading span{color:var(--gallery-graphite);font-size:8px}.gallery-cooking-column-heading h4{font-family:var(--gallery-serif);font-size:24px;font-weight:400}.gallery-cooking-method ul,.gallery-cooking-method ol{counter-reset:cooking-step;margin:0;padding:0;list-style:none}.gallery-cooking-method li{border-bottom:1px solid color-mix(in srgb,var(--gallery-vellum)65%,transparent);color:var(--gallery-graphite);padding:9px 0;font-size:10px;line-height:1.42}.gallery-cooking-method ol li{counter-increment:cooking-step;grid-template-columns:24px 1fr;gap:8px;display:grid}.gallery-cooking-method ol li:before{color:var(--gallery-ink);content:"0" counter(cooking-step);padding-top:1px;font-size:7px}.gallery-cooking-sources{flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px;display:flex}.gallery-cooking-sources a{letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:8px;padding-bottom:3px;font-size:7px;text-decoration:none;display:inline-flex}.gallery-gym{background:var(--gallery-ink);color:var(--gallery-paper);flex-direction:column;display:flex}.gallery-gym-heading{border-color:#353535}.gallery-gym-heading h2 em,.gallery-gym-heading>p{color:#8c8c8c}.gallery-gym-layout{flex-direction:column;flex:1;min-height:0;display:flex}.gallery-gym-days{border-left:1px solid #353535;flex:0 0 72px;grid-template-columns:repeat(7,1fr);display:grid}.gallery-gym-days button{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #353535;border-top:0;border-left:0;grid-template-columns:1fr auto;align-content:space-between;padding:12px 14px;transition:background-color .18s,color .18s;display:grid}.gallery-gym-days button:hover,.gallery-gym-days button:focus-visible,.gallery-gym-days button.is-active{background:var(--gallery-paper);color:var(--gallery-ink);outline:none}.gallery-gym-days button>span,.gallery-gym-days button small{color:#777;letter-spacing:.08em;text-transform:uppercase;font-size:7px}.gallery-gym-days button strong{font-family:var(--gallery-serif);letter-spacing:-.035em;align-self:end;font-size:18px;font-weight:400}.gallery-gym-days button small{place-self:end}.gallery-gym-stage,.gallery-gym-workout{flex:1;min-width:0;min-height:0}.gallery-gym-workout{flex-direction:column;display:flex}.gallery-gym-workout-heading{border-bottom:1px solid #353535;flex:none;justify-content:space-between;align-items:center;gap:24px;padding:20px max(22px,3vw);display:flex}.gallery-gym-workout-heading>div>span,.gallery-gym-count,.gallery-gym-workout-heading p,.gallery-gym-exercise-copy>p:first-child{color:#858585;letter-spacing:.09em;text-transform:uppercase;font-size:8px}.gallery-gym-workout-heading h3{font-family:var(--gallery-serif);letter-spacing:-.045em;margin:7px 13px 0 0;font-size:clamp(28px,2.8vw,42px);font-weight:400;line-height:.9;display:inline-block}.gallery-gym-workout-heading p{display:inline-block}.gallery-gym-count{align-items:center;gap:8px;display:inline-flex}.gallery-gym-exercises{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;border-left:1px solid #353535;flex:1;min-height:0;display:flex;overflow-x:auto}.gallery-gym-exercise{scroll-snap-align:start;border-right:1px solid #353535;flex-direction:column;width:min(24vw,340px);min-width:min(24vw,340px);min-height:0;display:flex}.gallery-gym-exercise-image{background:#151515;flex:58%;min-height:0;position:relative;overflow:hidden}.gallery-gym-exercise-image img{-o-object-fit:cover;object-fit:cover;filter:grayscale()contrast(.92)brightness(.82);width:100%;height:100%;transition:filter .26s,transform .5s}.gallery-gym-exercise:hover .gallery-gym-exercise-image img{filter:grayscale(.2)saturate(.65)contrast(.96);transform:scale(1.025)}.gallery-gym-exercise-image>span{background:var(--gallery-paper);width:30px;height:30px;color:var(--gallery-ink);font-family:var(--gallery-serif);place-items:center;font-size:9px;display:grid;position:absolute;top:12px;left:12px}.gallery-gym-exercise-copy{border-top:1px solid #353535;flex:42%;min-height:130px;padding:16px}.gallery-gym-exercise-copy h4{font-family:var(--gallery-serif);letter-spacing:-.04em;margin:12px 0 9px;font-size:clamp(21px,2vw,30px);font-weight:400;line-height:.92}.gallery-gym-exercise-copy>p:last-child{color:#919191;font-size:9px;line-height:1.45}.gallery-gym-rest{text-align:center;place-content:center;place-items:center;height:100%;padding:40px;display:grid}.gallery-gym-rest>span{color:#777;letter-spacing:.1em;text-transform:uppercase;margin-bottom:28px;font-size:8px}.gallery-gym-rest h3{font-family:var(--gallery-serif);letter-spacing:-.06em;margin:20px 0 12px;font-size:clamp(46px,6vw,84px);font-weight:400;line-height:.88}.gallery-gym-rest p{color:#929292;max-width:520px;font-size:11px;line-height:1.6}.gallery-travel{background:var(--gallery-ink);color:var(--gallery-paper);grid-template-columns:minmax(350px,.78fr) minmax(0,1.22fr);display:grid}.gallery-travel-copy{border-right:1px solid #353535;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(30px,4vw,58px);display:flex}.gallery-travel-copy header>p:last-child{color:#909090;max-width:500px;margin-top:24px;font-size:11px;line-height:1.55}.gallery-travel-ledger{border-top:1px solid #353535;margin:clamp(20px,3vh,34px) 0}.gallery-travel-ledger button{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #353535;grid-template-columns:32px 1fr;align-items:center;padding:10px 2px;transition:padding .2s,background-color .2s;display:grid}.gallery-travel-ledger button:hover,.gallery-travel-ledger button:focus-visible,.gallery-travel-ledger button.is-active{background:var(--gallery-paper);color:var(--gallery-ink);outline:none;padding-left:10px;padding-right:10px}.gallery-travel-ledger button>span{color:#767676;font-size:8px}.gallery-travel-ledger button>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.gallery-travel-ledger strong{font-family:var(--gallery-serif);letter-spacing:-.025em;font-size:18px;font-weight:400}.gallery-travel-ledger small{color:#777;letter-spacing:.08em;text-transform:uppercase;font-size:7px}.gallery-travel-legend{flex-wrap:wrap;gap:18px;display:flex}.gallery-travel-legend span,.gallery-travel-orbit-label{color:#777;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;font-size:7px;display:inline-flex}.gallery-travel-legend i{background:#6f6e68;border-radius:50%;width:7px;height:7px}.gallery-travel-legend i.is-significant{background:var(--gallery-paper);border:1px solid #777}.gallery-travel-stage{isolation:isolate;background:radial-gradient(circle,#292927 0,#111 46%,#050505 72%);place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.gallery-travel-stage:before,.gallery-travel-stage:after{z-index:-1;aspect-ratio:1;content:"";pointer-events:none;border:1px solid #323232;border-radius:50%;width:min(72%,620px);position:absolute}.gallery-travel-stage:after{border-color:#222;width:min(92%,790px)}.gallery-travel-stage canvas{filter:grayscale()sepia(.08)contrast(1.16)brightness(1.03)}.gallery-travel-orbit-label{z-index:3;position:absolute;top:18px;right:20px}.gallery-travel-popup{z-index:5;background:color-mix(in srgb,var(--gallery-ink)94%,transparent);width:min(360px,100% - 40px);color:var(--gallery-paper);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #555;grid-template-columns:112px 1fr;animation:.28s both gallery-rise;display:grid;position:absolute;top:48px;right:20px}.gallery-travel-popup>img{-o-object-fit:cover;object-fit:cover;filter:grayscale()contrast(.9);width:112px;height:100%;min-height:142px}.gallery-travel-popup-copy{padding:15px}.gallery-travel-popup-copy h3{font-family:var(--gallery-serif);letter-spacing:-.04em;margin:8px 0;font-size:25px;font-weight:400;line-height:.95}.gallery-travel-popup-copy>p:last-child{color:#aaa;font-size:9px;line-height:1.45}.gallery-travel-popup-close{z-index:2;background:var(--gallery-ink);width:26px;height:26px;color:var(--gallery-paper);cursor:pointer;border:1px solid #555;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.gallery-travel-loading{min-height:100%}.gallery-travel-skeleton{background:#090909;place-items:center;display:grid}.gallery-travel-skeleton>div{aspect-ratio:1;background:radial-gradient(circle at 38% 32%,#45443f,#161616 57%,#050505 74%);border:1px solid #333;border-radius:50%;width:min(60vw,500px);animation:2s ease-in-out infinite globe-pulse}.gallery-travel-skeleton p{color:#777;letter-spacing:.1em;text-transform:uppercase;font-size:8px}@media (max-width:1050px){.gallery-cooking-recipe{grid-template-columns:minmax(260px,.9fr) minmax(260px,.8fr) minmax(270px,.9fr)}.gallery-cooking-menu button{grid-template-columns:23px 1fr;padding:14px 12px}.gallery-cooking-menu button strong{font-size:19px}.gallery-travel{grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr)}.gallery-travel-copy{padding:30px}}@media (max-width:760px){.gallery-cooking-heading,.gallery-gym-heading,.gallery-family-heading{flex:none;padding:20px 18px 17px;display:block}.gallery-cooking-heading h2,.gallery-gym-heading h2,.gallery-travel-copy h2,.gallery-family-heading h2,.gallery-golf h2{font-size:clamp(34px,10.5vw,44px)}.gallery-cooking-heading>p,.gallery-gym-heading>p,.gallery-family-heading>p{display:none}.gallery-family-grid{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.gallery-family-grid::-webkit-scrollbar{display:none}.gallery-family-card{scroll-snap-align:start;width:84vw;min-width:84vw}.gallery-family-card-body{min-height:156px;padding:16px 18px}.gallery-family-card-body h3{font-size:27px}.gallery-golf{grid-template-rows:auto minmax(210px,1fr) auto;grid-template-columns:1fr;align-content:center;gap:22px;padding:26px 18px 38px;display:grid}.gallery-golf header>p:last-child{display:none}.gallery-golf-target{justify-self:center;width:min(62vw,275px)}.gallery-golf dl{grid-template-columns:repeat(3,minmax(0,1fr));width:calc(100% - 62px);display:grid}.gallery-golf dl>div{border-right:1px solid var(--gallery-vellum);padding:10px}.gallery-golf dd{font-size:15px}.gallery-cooking-workspace{flex-direction:column;min-height:0;display:flex}.gallery-cooking-menu{scroll-snap-type:x mandatory;scrollbar-width:none;flex:0 0 62px;display:flex;overflow-x:auto}.gallery-cooking-menu::-webkit-scrollbar{display:none}.gallery-gym-days::-webkit-scrollbar{display:none}.gallery-cooking-menu button{scroll-snap-align:start;grid-template-columns:20px 1fr;align-items:center;width:58vw;min-width:58vw;padding:9px 11px}.gallery-cooking-menu button small{margin-bottom:4px;font-size:6px}.gallery-cooking-menu button strong{text-overflow:ellipsis;white-space:nowrap;max-width:none;font-size:15px;overflow:hidden}.gallery-cooking-recipe{grid-template-columns:1fr;min-height:0;display:grid;overflow-y:auto}.gallery-cooking-image{border-right:0;border-bottom:1px solid var(--gallery-vellum);min-height:215px}.gallery-cooking-summary{border-right:0;border-bottom:1px solid var(--gallery-vellum);min-height:270px;padding:25px 18px}.gallery-cooking-summary h3{font-size:39px}.gallery-cooking-method{padding:24px 18px 60px;overflow:visible}.gallery-gym-days{scroll-snap-type:x mandatory;scrollbar-width:none;flex:0 0 62px;display:flex;overflow-x:auto}.gallery-gym-days button{scroll-snap-align:start;width:32vw;min-width:32vw;padding:9px 11px}.gallery-gym-days button strong{font-size:16px}.gallery-gym-workout-heading{padding:15px 18px}.gallery-gym-workout-heading h3{font-size:27px}.gallery-gym-workout-heading p,.gallery-gym-count{display:none}.gallery-gym-exercise{width:76vw;min-width:76vw}.gallery-gym-exercise-copy{min-height:145px}.gallery-gym-exercise-copy h4{font-size:26px}.gallery-travel{grid-template-rows:minmax(285px,43%) minmax(0,57%);grid-template-columns:1fr;display:grid}.gallery-travel-copy{border-bottom:1px solid #353535;border-right:0;min-height:0;padding:20px 18px 14px}.gallery-travel-copy header>p:last-child{display:none}.gallery-travel-ledger{scroll-snap-type:x mandatory;scrollbar-width:none;border-top:1px solid #353535;margin:15px -18px 12px 0;display:flex;overflow-x:auto}.gallery-travel-ledger::-webkit-scrollbar{display:none}.gallery-travel-ledger button{scroll-snap-align:start;border-right:1px solid #353535;width:58vw;min-width:58vw;padding:9px 10px}.gallery-travel-ledger strong{font-size:15px}.gallery-travel-ledger small{display:none}.gallery-travel-legend{gap:12px}.gallery-travel-stage{grid-row:2}.gallery-travel-orbit-label{top:10px;right:12px}.gallery-travel-popup{grid-template-columns:82px 1fr;width:calc(100% - 24px);top:38px;right:12px}.gallery-travel-popup>img{width:82px;min-height:112px}.gallery-travel-popup-copy{padding:12px}.gallery-travel-popup-copy h3{font-size:20px}.gallery-travel-popup-copy>p:last-child{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (prefers-reduced-motion:reduce){.gallery-travel-stage canvas,.gallery-cooking-image img,.gallery-gym-exercise-image img{transition:none!important}}.gallery-work-featured{grid-template-rows:auto auto minmax(0,1fr);padding-top:22px;padding-bottom:20px;display:grid;overflow-y:hidden!important}.gallery-work-featured .gallery-work-heading{margin:clamp(20px,3.5svh,34px) auto clamp(18px,3svh,28px)}.gallery-work-featured .gallery-work-heading>p{margin-bottom:8px;font-size:clamp(13px,1.8svh,17px)}.gallery-work-featured .gallery-work-heading h2{font-size:clamp(48px,7svh,82px);line-height:.82}.gallery-work-featured .gallery-project-grid{align-items:stretch;gap:clamp(24px,4vw,64px);width:100%;min-height:0}.gallery-work-featured .gallery-project{height:100%;min-height:0}.gallery-work-featured .gallery-project-skill{letter-spacing:.1em;text-transform:uppercase;min-height:18px;font-size:9px}.gallery-work-featured .gallery-project-image{width:min(100%,clamp(166px,25svh,242px));margin:3px 0 clamp(8px,1.5svh,14px)}.gallery-work-featured .gallery-project-number{margin-bottom:5px;font-size:8px}.gallery-work-featured .gallery-project h3{font-size:clamp(23px,2.3vw,34px);line-height:.95}.gallery-work-featured .gallery-project-summary{min-height:0;margin-top:clamp(6px,1.1svh,10px);font-size:clamp(10px,1.25svh,12px);line-height:1.38}.gallery-work-featured .gallery-outcome{min-height:0;margin-top:clamp(5px,1svh,9px)}.gallery-work-featured .gallery-outcome strong{font-size:clamp(20px,2.6svh,25px)}.gallery-work-featured .gallery-outcome span{margin-top:2px;font-size:8px}.gallery-work-featured .gallery-indicators{margin:clamp(6px,1svh,10px) 0}.gallery-work-featured .gallery-project-link{margin-top:auto;font-size:9px}.gallery-project-archive-section .gallery-project-archive{border-top:0;align-items:start;min-height:0;margin:clamp(24px,5svh,46px) auto 0;padding-top:0}.gallery-project-archive-section .gallery-archive-heading h3{margin-top:14px;font-size:clamp(38px,4vw,58px)}.gallery-project-archive-section .gallery-archive-row{min-height:clamp(76px,9.5svh,94px);padding-top:12px;padding-bottom:12px}@media (max-width:760px){.gallery-project-archive-section{padding-left:18px;padding-right:18px}.gallery-work-featured .gallery-section-meta span:last-child,.gallery-project-archive-section .gallery-section-meta span:last-child{display:none}.gallery-work-featured .gallery-work-heading{margin:18px auto 16px}.gallery-work-featured .gallery-work-heading h2{font-size:clamp(42px,12vw,54px)}.gallery-work-featured .gallery-project-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;gap:18px;padding-bottom:3px;display:flex;overflow:auto hidden}.gallery-work-featured .gallery-project-grid::-webkit-scrollbar{display:none}.gallery-work-featured .gallery-project{scroll-snap-align:center;scroll-snap-stop:always;width:100%;min-width:100%}.gallery-work-featured .gallery-project-image{width:min(44vw,20svh,176px)}.gallery-work-featured .gallery-project h3{font-size:clamp(25px,8vw,32px)}.gallery-work-featured .gallery-project-summary{max-width:340px;font-size:10px}.gallery-work-featured .gallery-indicators{margin-bottom:7px}.gallery-project-archive-section .gallery-project-archive{margin-top:28px;display:block}.gallery-project-archive-section .gallery-archive-list{margin-top:30px}.gallery-project-archive-section .gallery-archive-row{min-height:76px}}.gallery-post-head{min-height:calc(100svh - var(--gallery-subnav-height));grid-template-rows:auto minmax(0,1fr);padding:20px 28px 28px;display:grid}.gallery-post-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(28px,4vw,68px);width:100%;max-width:1540px;min-height:0;margin:18px auto 0;display:grid}.gallery-post-hero-grid.is-image-less{grid-template-columns:1fr;max-width:1100px}.gallery-post-hero-copy{flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:clamp(24px,4svh,48px) 0;display:flex}.gallery-post-hero-copy>.gallery-kicker{color:var(--gallery-graphite);margin-bottom:clamp(22px,3svh,34px)}.gallery-post-head .gallery-post-hero-copy h1{text-align:left;text-wrap:balance;max-width:940px;margin:0;font-size:clamp(48px,5.4vw,84px);line-height:.87}.gallery-post-deck{border-top:1px solid color-mix(in srgb,var(--gallery-ink)24%,transparent);max-width:760px;color:var(--gallery-graphite);font-family:var(--gallery-serif);letter-spacing:-.02em;margin-top:clamp(26px,4svh,42px);padding-top:clamp(18px,2.5svh,26px);font-size:clamp(18px,1.6vw,25px);line-height:1.2}.gallery-post-hero-copy .gallery-post-byline{min-width:0;margin-top:clamp(24px,3.5svh,38px)}.gallery-post-hero-image{background:var(--gallery-graphite);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);min-width:0;min-height:420px;position:relative;overflow:hidden}.gallery-post-hero-image:after{content:"";border:1px solid color-mix(in srgb,var(--gallery-paper)28%,transparent);pointer-events:none;clip-path:inherit;position:absolute;inset:0}.gallery-post-hero-image img{-o-object-fit:cover;object-fit:cover;filter:saturate(.78)contrast(.94)}.gallery-post-hero-image figcaption{background:var(--gallery-ink);color:var(--gallery-paper);letter-spacing:.1em;text-transform:uppercase;padding:7px 9px;font-size:7px;position:absolute;bottom:12px;right:12px}.gallery-post-stats{z-index:1;background:var(--gallery-ink);color:var(--gallery-paper);position:relative}.gallery-post-stats dl{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1540px;min-height:104px;margin:0 auto;padding:0 28px;display:grid}.gallery-post-stats dl>div{border-right:1px solid #343434;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:18px clamp(18px,3vw,46px);display:flex}.gallery-post-stats dl>div:first-child{padding-left:0}.gallery-post-stats dl>div:last-child{border-right:0;padding-right:0}.gallery-post-stats dt{color:#858585;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font-size:7px}.gallery-post-stats dd{font-family:var(--gallery-serif);font-size:clamp(16px,1.5vw,21px);line-height:1.1}.gallery-post-reading{max-width:780px;padding:clamp(76px,9vw,130px) 28px clamp(100px,12vw,170px);display:block}@supports (height:100dvh){.gallery-post-head{min-height:calc(100dvh - var(--gallery-subnav-height))}}@media (max-width:1000px){.gallery-post-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:28px}.gallery-post-head .gallery-post-hero-copy h1{font-size:clamp(44px,5.8vw,64px)}.gallery-post-deck{font-size:18px}}@media (max-width:760px){.gallery-post-head{min-height:calc(100svh - var(--gallery-subnav-height));padding:16px 18px 18px}.gallery-post-head-meta>span{max-width:48vw}.gallery-post-hero-grid{grid-template-rows:auto minmax(180px,28svh);grid-template-columns:1fr;gap:16px;margin-top:12px}.gallery-post-hero-grid.is-image-less{grid-template-rows:1fr}.gallery-post-hero-copy{justify-content:flex-start;padding:10px 0 0}.gallery-post-hero-copy>.gallery-kicker{margin-bottom:14px}.gallery-post-head .gallery-post-hero-copy h1{margin:0;font-size:clamp(36px,10.6vw,48px);line-height:.88}.gallery-post-deck{margin-top:16px;padding-top:12px;font-size:15px;line-height:1.25}.gallery-post-hero-copy .gallery-post-byline{margin-top:15px}.gallery-post-avatar{width:38px;height:38px}.gallery-post-byline strong{margin-bottom:3px;font-size:14px}.gallery-post-hero-image{min-height:180px}.gallery-post-hero-image figcaption{display:none}.gallery-post-stats dl{min-height:88px;padding:0}.gallery-post-stats dl>div,.gallery-post-stats dl>div:first-child,.gallery-post-stats dl>div:last-child{padding:14px 12px}.gallery-post-stats dd{overflow-wrap:anywhere;font-size:13px}.gallery-post-reading{padding:70px 18px 100px}}@media (prefers-reduced-motion:reduce){.gallery-page,.gallery-hobby-page,.gallery-archive-page{scroll-behavior:auto}.gallery-page *,.gallery-page :before,.gallery-page :after,.gallery-hobby-page *,.gallery-hobby-page :before,.gallery-hobby-page :after,.gallery-archive-page *,.gallery-archive-page :before,.gallery-archive-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:760px){.gallery-genai{padding:20px 18px 34px}.gallery-genai .gallery-section-meta span:last-child{display:none}.gallery-genai-heading{margin:42px 0 32px;display:block}.gallery-genai-heading h2{font-size:clamp(46px,15vw,64px)}.gallery-genai-heading>p{margin-top:24px;font-size:12px}.gallery-genai-layout{display:block}.gallery-genai-lane-title{grid-template-columns:25px auto;min-height:54px}.gallery-genai-lane-title p{display:none}.gallery-genai-build-list{grid-template-columns:1fr}.gallery-genai-build-row{grid-template-columns:20px 28px minmax(0,1fr) 16px;min-height:104px}.gallery-genai-build-row h4{font-size:21px}.gallery-genai-build-row small{font-size:9px}.gallery-genai-systems{display:block}.gallery-genai-workflow{min-height:330px}.gallery-genai-workflow>h4{font-size:34px}.gallery-genai-assistant-grid{grid-template-columns:1fr}.gallery-genai-assistant-grid article{min-height:138px}}.gallery-hobby-page,.gallery-hobby-page>.gallery-hobby-hero,.gallery-hobby-page>.gallery-hobby-why,.gallery-hobby-page>.gallery-hobby-module,.gallery-hobby-page>.gallery-hobby-notes,.gallery-hobby-page>.gallery-next-project{height:calc(100svh - var(--gallery-subnav-height));min-height:calc(100svh - var(--gallery-subnav-height))}@supports (height:100dvh){.gallery-detail-page,.gallery-case-hero,.gallery-case-intro,.gallery-case-hypothesis,.gallery-case-columns,.gallery-case-results,.gallery-next-project,.gallery-hobby-page,.gallery-hobby-page>.gallery-hobby-hero,.gallery-hobby-page>.gallery-hobby-why,.gallery-hobby-page>.gallery-hobby-module,.gallery-hobby-page>.gallery-hobby-notes,.gallery-hobby-page>.gallery-next-project{height:calc(100dvh - var(--gallery-subnav-height));min-height:calc(100dvh - var(--gallery-subnav-height))}}@media (max-width:760px){.gallery-page{scroll-behavior:auto;scroll-snap-type:none;min-height:100svh;overflow:clip visible;height:auto!important}.gallery-page>section{scroll-snap-align:none;scroll-snap-stop:normal;overflow-x:clip;height:auto!important;min-height:100svh!important;overflow-y:visible!important}.gallery-page>.gallery-hero{flex-direction:column;display:flex}.gallery-hero-cluster{flex-shrink:0;margin-bottom:48px}.gallery-wordmark{letter-spacing:-.075em;text-align:center;flex-shrink:0;margin:auto 0 74px;font-size:clamp(44px,14.5vw,62px);position:relative;bottom:auto;left:auto;translate:none}}
