@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/barlow-400.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/barlow-600.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/barlow-700.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/barlow-condensed-700.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/barlow-condensed-800.woff2') format('woff2')}
/* Accent colours sampled from Ward's painting; paper and ink keep the text readable. */
:root{--paper:#fffefb;--ink:#35221c;--brown:#603838;--yellow:#e59e30;--blue:#3fb2dd;--turquoise:#34a3c9;--orange:#e7713a;--cream:#e3c49a;--line:#d9d4cd;--muted:#665e57;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'Barlow',Arial,sans-serif;--wrap:1380px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--paper);color:var(--ink);font:1.125rem/1.6 var(--body)}
body.dialog-open{overflow:hidden}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3{margin:0}
p+p{margin-top:1.25rem}
h1,h2,h3{overflow-wrap:anywhere;font-family:var(--display);font-weight:700;line-height:.98;letter-spacing:-.012em}
h2{font-size:clamp(3rem,5.7vw,5.9rem)}
h3{font-size:clamp(2.4rem,4.1vw,4.6rem)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}
.eyebrow{font-size:.875rem;line-height:1.4;font-weight:700;letter-spacing:.105em}
.button{display:inline-flex;align-items:center;justify-content:center;gap:2rem;min-height:56px;padding:14px 24px;border:1px solid transparent;font-weight:600;font-size:1rem;line-height:1.3;border-radius:2px;transition:background .2s,transform .2s,color .2s}
.button:hover{transform:translateY(-2px)}
.button span{font-size:1.65rem;line-height:1}
.button-brown{background:var(--brown);color:#fff}
.button-brown:hover{background:var(--ink)}
.button-yellow{background:var(--yellow);color:var(--ink)}
.button-yellow:hover{background:var(--cream)}
.button-outline{background:transparent;border-color:currentColor}
.button-outline:hover{background:var(--brown);color:white}
.text-link,.text-button,.additional-work{font-weight:600;font-size:1rem;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.text-button{background:transparent;border:0;padding:10px 0;display:flex;align-items:center;gap:28px;text-align:left}
.text-button span{font-size:1.7rem;text-decoration:none}
.skip-link{position:fixed;top:-120px;left:18px;z-index:1000;background:var(--yellow);padding:12px 20px}
.skip-link:focus{top:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(var(--wrap),calc(100% - 112px));margin:auto;border-bottom:1px solid var(--line);position:relative;z-index:20}
.wordmark{font:800 1.5rem/.86 var(--display);letter-spacing:.005em;display:block;flex-shrink:0}
.wordmark>span{color:var(--blue)}
.site-header nav{display:flex;flex-wrap:wrap;justify-content:end;align-items:center;gap:36px;font-size:1rem;font-weight:600}
.site-header nav>a:hover{text-decoration:underline;text-underline-offset:5px}
.nav-contact{background:var(--yellow);padding:14px 21px;border-radius:2px}
.menu-toggle{display:none;background:transparent;border:0;font-weight:600;font-size:1rem}
.menu-toggle span{margin-left:15px;font-size:1.5rem}
.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:65px;min-height:740px;align-items:center;padding-top:42px;padding-bottom:42px}
.hero-copy{padding:25px 0 0;position:relative;z-index:1;min-width:0}
.hero h1{font-size:clamp(3.5rem,6.8vw,7.2rem);margin:30px 0 24px}
.hero h1>span{position:relative;display:inline;isolation:isolate}
.hero h1>span:before{content:'';position:absolute;background:var(--yellow);height:27%;left:-2px;right:-8px;bottom:9%;z-index:-1}
.hero-description{font-size:1.3rem;line-height:1.6;margin-bottom:31px}
.hero-secondary{display:block;width:fit-content;text-decoration:underline;text-underline-offset:5px;font-size:1rem;margin-top:18px}
.hero-bottom{display:flex;align-items:end;justify-content:space-between;max-width:380px;margin-top:55px;gap:20px}
.hero-bottom>span:first-child{font-size:.8rem;line-height:1.5;font-weight:600;letter-spacing:.08em}
.hero-count{display:flex;align-items:center;gap:12px;font:600 3.6rem/.8 var(--display)}
.hero-count>span{font:600 .75rem/1.4 var(--body);letter-spacing:.07em}
.hero-art{width:100%;min-width:0;position:relative}
.hero-painting{background:#f2ece1;border:0;padding:0;display:block;width:100%;overflow:hidden;position:relative;box-shadow:0 12px 26px #35221c0c;cursor:zoom-in}
.hero-painting img{width:100%;height:min(635px,57vw);object-fit:contain;background:#f6efe3;transition:transform 1s cubic-bezier(.2,.6,.2,1)}
.hero-painting:hover img{transform:scale(1.035)}
.art-hotspot{position:absolute;left:61%;top:65%;display:flex;flex-direction:column;align-items:center;gap:9px;transform:translate(-50%,-50%);font-size:.8rem;white-space:nowrap;font-weight:600;color:#fff;filter:drop-shadow(0 2px 5px #35221c44)}
.art-hotspot>span:first-child{width:46px;height:46px;border:1px solid #fff;background:#35221c9c;border-radius:50%;display:grid;place-items:center;font-size:1.6rem;box-shadow:0 0 0 8px #ffffff30}
.art-hotspot>span:last-child{background:#35221cd9;border-radius:2px;padding:3px 8px}
.hero-art figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:16px;font-size:.8rem;line-height:1.5}
.hero-art figcaption>span:last-child{color:var(--muted);text-align:right}
.hero-art figcaption strong{font-weight:700}
.hero-scroll{position:relative}
.scrub-guidance{display:none;align-items:center;gap:12px;margin-top:24px;max-width:430px;font-size:.875rem;line-height:1.4}
.js .scrub-guidance{display:flex}
.scrub-guidance p{flex:1;min-width:0}
.scrub-guidance>span:last-child{font-size:.75rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.scrub-progress,.gallery-progress{display:block;overflow:hidden;height:3px;background:var(--line);width:55px;flex-shrink:0}
.scrub-progress>span,.gallery-progress>span{display:block;width:100%;height:100%;background:var(--brown);transform:scaleX(0);transform-origin:left center}
.hero-scroll.has-scroll-zoom .hero-painting{height:min(635px,57vw)}
.hero-scroll.has-scroll-zoom .hero-painting img{position:absolute;left:0;top:0;max-width:none;object-fit:fill;transform-origin:0 0;transition:none;will-change:transform}
.hero-scroll.has-scroll-zoom .hero-painting:hover img{transform:none}
.hero-scroll.is-scrubbing{height:calc(var(--scene-viewport) + var(--scrub-distance))}
.hero-scroll.is-scrubbing .hero{position:sticky;top:0;height:var(--scene-viewport);min-height:0;padding-top:24px;padding-bottom:24px}
.hero-scroll.is-scrubbing .hero-painting{height:min(72svh,705px)}
.hero-scroll.is-scrubbing.is-measuring .hero{position:relative;height:auto;min-height:min(740px,100svh);padding-block:32px}
.encounter-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 0 50px;border-top:1px solid var(--line)}
.encounter-strip>p{font-size:1.3rem;line-height:1.45}
.encounter-strip strong{font-weight:600}
.philosophy{background:var(--blue);color:var(--ink);padding:100px 0 40px}
.philosophy-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.philosophy h2{margin-top:24px;color:var(--brown)}
.section-number{display:block;font:700 8rem/.9 var(--display);opacity:.3;margin-top:45px}
.large-copy{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.4}
.philosophy-copy>p:not(.large-copy){max-width:550px}
.signature{font:600 2.1rem/1 var(--display);margin-top:30px!important}
.philosophy-line{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #60383845;margin-top:65px;padding-top:28px;font-size:.875rem;font-weight:600;letter-spacing:.08em}
.exhibition{padding-top:100px}
.exhibition-heading{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:end;margin-bottom:38px}
.exhibition-heading h2{margin-top:22px;font-size:clamp(3rem,5vw,5.1rem)}
.exhibition-heading>p{max-width:460px;justify-self:end;font-size:1.125rem;line-height:1.6}
.exhibition-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:50% 35%}
.exhibition-photo figcaption{display:flex;justify-content:space-between;gap:24px;padding-top:17px;margin-top:17px;border-top:1px solid var(--line);font-size:.875rem;line-height:1.5;color:var(--muted)}
.exhibition-photo figcaption>span:last-child{text-align:right}
.exhibition-feature{display:grid;grid-template-columns:1.35fr 1fr;gap:55px;align-items:center;padding-top:58px;margin-top:58px;border-top:1px solid var(--line)}
.exhibition-feature-photo{min-width:0}
.exhibition-feature-photo img{width:100%;height:auto}
.exhibition-feature-photo figcaption{margin-top:14px;font-size:.875rem;line-height:1.5;color:var(--muted)}
.exhibition-feature-copy{min-width:0}
.exhibition-feature-copy h3{margin:18px 0 22px;color:var(--brown)}
.exhibition-feature-copy>p:not(.eyebrow):not(.large-copy){max-width:430px;font-size:1.125rem;line-height:1.6}
@media(max-width:1100px){.exhibition-feature{gap:35px}}
@media(max-width:760px){.exhibition-feature{grid-template-columns:1fr;gap:26px;padding-top:35px;margin-top:35px}.exhibition-feature-copy h3{margin:14px 0 18px}}
@media(max-width:1100px){.exhibition-heading{gap:55px}}
@media(max-width:760px){.exhibition{padding-top:65px}.exhibition-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.exhibition-heading h2{margin-top:18px}.exhibition-heading>p{justify-self:start;max-width:500px;font-size:1rem}.exhibition-photo img{aspect-ratio:3/2;object-position:center}.exhibition-photo figcaption{flex-direction:column;gap:6px;font-size:.875rem;padding-top:13px;margin-top:13px}.exhibition-photo figcaption>span:last-child{text-align:left}}
.projects{padding-top:110px;padding-bottom:100px}
.project-gallery{position:relative;max-width:100%;}
.project-gallery-pin{padding:28px 0;background:var(--paper)}
.project-gallery .section-heading{margin-bottom:20px}
.project-gallery .section-heading h2{font-size:clamp(2.8rem,4vw,3.6rem);margin-top:12px}
.project-track{display:flex;gap:26px;overflow-x:auto;overflow-y:hidden;position:relative;width:100%;padding:10px max(56px,calc((100vw - var(--wrap))/2));scroll-padding-inline:max(56px,calc((100vw - var(--wrap))/2));scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--brown) var(--paper);overscroll-behavior-x:contain;outline-offset:-5px}
.project-card{flex:0 0 min(920px,76vw);display:block;border:0;padding:0;background:transparent;text-align:left;scroll-snap-align:start;min-width:0;color:var(--ink)}
.project-cover{height:min(42svh,430px);padding:22px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f1eee8}
.project-cover img{height:100%;width:100%;object-fit:contain}
.cover-diversity{background:var(--cream)}
.cover-roots{background:#f0efed}
.cover-nout{background:var(--brown)}
.cover-inner{background:#f3e8d8}
.cover-cities{background:var(--blue);color:var(--brown)}
.diamond-art{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.diamond-art img{width:70.7%;height:70.7%;object-fit:contain;transform:rotate(45deg)}
.gallery-city-type{font:800 clamp(5rem,min(11vw,14svh),9rem)/.82 var(--display);letter-spacing:-.012em}
.gallery-city-type>span{color:var(--orange)}
.project-card-caption{display:flex;align-items:start;gap:22px;padding:18px 0 7px;min-height:88px}
.project-card-number{font-size:.875rem;padding-top:5px}
.project-card-caption>span:nth-child(2){flex:1;min-width:0}
.project-card-caption strong{display:block;font:700 clamp(1.7rem,2.5vw,2.5rem)/1.05 var(--display)}
.project-card-caption>span:nth-child(2)>span{display:block;margin-top:7px;font-size:.875rem}
.project-card-action{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;white-space:nowrap;padding-top:7px}
.project-card:hover .project-card-action{text-decoration-thickness:2px}
.project-card:focus-visible{outline-offset:5px}
.gallery-controls{display:flex;align-items:center;gap:24px;padding-top:20px;font-size:.875rem}
.gallery-controls>p{flex:1}
.gallery-progress{width:140px}
#gallery-count{font-variant-numeric:tabular-nums;white-space:nowrap}
.gallery-controls>div{display:flex;gap:8px}
.gallery-controls button{font-size:.875rem;min-height:44px;padding:8px 16px;border:1px solid var(--brown);border-radius:2px;background:transparent}
.gallery-controls button:hover{background:var(--yellow)}
.gallery-controls button:disabled{opacity:.35;cursor:default}
.project-gallery.is-pinned{height:calc(var(--scene-viewport) + var(--gallery-distance))}
.project-gallery.is-pinned .project-gallery-pin{position:sticky;top:0;height:var(--scene-viewport);display:flex;flex-direction:column;justify-content:center}
.project-gallery.is-pinned .project-track{scroll-snap-type:none;scrollbar-width:none;flex-shrink:0}
.project-gallery.is-pinned .project-track::-webkit-scrollbar{display:none}
.project-gallery.is-pinned.is-measuring .project-gallery-pin{position:relative;height:auto;display:block}
.project-details{padding-top:70px;scroll-margin-top:24px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:48px}
.section-heading h2{margin-top:22px}
.section-heading>p{max-width:380px;color:var(--muted);font-size:1rem}
.project-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:45px;border:1px solid var(--line)}
.project-tab{min-width:0;text-align:left;background:transparent;border:0;border-right:1px solid var(--line);padding:20px 22px 25px;display:flex;flex-direction:column;justify-content:space-between;min-height:176px;transition:background .2s,color .2s;position:relative}
.project-tab:last-child{border-right:0}
.project-tab:hover{background:var(--cream)}
.project-tab[aria-selected=true]{background:var(--yellow);color:var(--ink)}
.tab-number{font-size:.875rem;font-weight:500;margin-bottom:20px}
.tab-name{font:700 2rem/1.1 var(--display)}
.tab-relation{font-size:.875rem;font-weight:500;margin-top:9px;line-height:1.4}
.project-panel{display:grid;grid-template-columns:1fr 1.05fr;gap:85px;align-items:center;padding:0 25px 0 0}
.js .project-panel[hidden]{display:none}
.project-panel+.project-panel{margin-top:80px}
.js .project-panel+.project-panel{margin-top:0}
.project-copy h3{margin:22px 0}
.project-copy>p:not(.eyebrow){max-width:535px}
.project-lead{font-size:1.55rem;line-height:1.35}
.project-copy p:not(.eyebrow):not(.project-lead){font-size:1.1rem}
.project-facts{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:28px;padding-top:19px;border-top:1px solid var(--line);font-size:.875rem;line-height:1.5;color:var(--muted)}
.project-copy>.button{margin-top:30px}
.project-art{min-width:0}
.work-preview{display:block;position:relative;border:0;background:#f1eee8;width:100%;padding:20px;cursor:zoom-in;overflow:hidden}
.work-preview img{width:100%;height:510px;object-fit:contain;transition:transform .5s}
.work-preview:hover img{transform:scale(1.025)}
.work-preview.work-preview-diamond{padding:22px 22px 72px}
.work-preview-diamond .diamond-art{aspect-ratio:1;height:auto}
.work-preview-diamond .diamond-art img{width:70.7%;height:auto;transform:rotate(45deg)}
.work-preview-diamond:hover img{transform:rotate(45deg) scale(1.025)}
.image-open{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--paper);color:var(--ink);padding:12px 18px;font-size:.875rem;font-weight:600;box-shadow:0 4px 14px #35221c12}
.image-open span{font-size:1.5rem;line-height:1}
.project-caption{display:flex;justify-content:space-between;gap:20px;margin-top:14px;font-size:.8rem;line-height:1.5}
.additional-work{margin-top:15px;display:block;border:0;padding:0;background:transparent;text-align:left;font-size:.875rem}
/* Full paintings from the countries project, using the existing detail viewer. */
.country-collection{grid-column:1/-1;min-width:0;border-top:1px solid var(--line);padding-top:42px;scroll-margin-top:115px}
.country-collection-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:32px}
.country-collection-heading h4{font:700 clamp(2.3rem,4vw,3.3rem)/1.05 var(--display);letter-spacing:-.012em;margin:14px 0 0;overflow-wrap:anywhere}
.country-collection-heading>p{max-width:310px;font-size:1rem;color:var(--muted)}
.country-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px;align-items:start}
.country-work{min-width:0}
.country-work--wide{grid-column:span 2}
.country-work-open{display:block;width:100%;border:0;padding:0;background:transparent;text-align:left;cursor:zoom-in}
.country-work-image{display:block;height:clamp(330px,32vw,470px);padding:20px;background:#f1eee8;overflow:hidden}
.country-work-image img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.country-work-open:hover img{transform:scale(1.02)}
.country-work-action{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;font-size:.875rem;font-weight:600}
.country-work-action>span{font-size:1.5rem;line-height:1}
.country-work figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:5px;font-size:.875rem;color:var(--muted);line-height:1.5}
.country-work figcaption>span:last-child{white-space:nowrap}
@media(max-width:1000px){.country-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}.country-work--wide{grid-column:auto}.country-work-image{height:360px;padding:16px}}
@media(max-width:600px){.country-collection{padding-top:30px}.country-collection-heading{display:block;margin-bottom:24px}.country-collection-heading>p{margin-top:16px;max-width:none}.country-grid{grid-template-columns:1fr;gap:32px}.country-work-image{height:auto;padding:16px}.country-work-image img{height:auto}}
.nout-collection .country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.nout-collection .country-grid{grid-template-columns:1fr}}
.city-statement{min-height:550px;background:var(--blue);color:var(--ink);padding:35px;position:relative;display:flex;flex-direction:column;align-items:start}
.city-type{font:800 clamp(6rem,12vw,11.5rem)/.82 var(--display);letter-spacing:-.012em;margin:45px 0;color:var(--brown)}
.city-type span{color:var(--orange)}
.city-bottom{font-size:1.15rem;line-height:1.5;margin-top:auto!important;max-width:300px}
.city-index{position:absolute;bottom:35px;right:35px;font-size:.8rem}
.near-miss{background:var(--brown);color:#fff;padding:95px 0}
.near-miss :focus-visible{outline-color:var(--yellow)}
.near-miss-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}
.near-miss h2{margin-top:25px}
.near-miss h2 span{color:var(--yellow)}
.near-miss .button{margin-top:28px}
.near-miss .large-copy{max-width:550px}
.process{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-top:115px;padding-bottom:115px}
.process-image img{height:620px;width:100%;object-fit:cover;object-position:50% 45%}
.process-image figcaption,.portrait figcaption{font-size:.875rem;line-height:1.5;margin-top:14px;color:var(--muted)}
.process-copy h2{margin-top:24px;margin-bottom:25px}
.process-step{display:grid;grid-template-columns:35px 1fr;gap:18px;padding:22px 0;border-top:1px solid var(--line)}
.process-step:first-of-type{margin-top:35px}
.process-step>span{font-size:.875rem;line-height:1.5;padding-top:3px}
.process-step h3{font-size:1.75rem;line-height:1.1;margin-bottom:9px}
.process-step p{font-size:1rem;line-height:1.55}
.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding:95px 0;border-top:1px solid var(--line)}
.about h2{margin:24px 0}
.about-copy>p:not(.eyebrow){max-width:550px}
.about .text-link{display:inline-block;margin-top:26px}
.about-location{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;margin-top:35px;padding-top:20px;font-size:.8rem;font-weight:600;letter-spacing:.04em}
.portrait img{width:100%;height:560px;object-fit:cover;object-position:50% 40%}
.live-section{display:grid;grid-template-columns:1.08fr 1fr;gap:85px;align-items:center;padding:65px 0 100px}
.live-section img{width:100%;height:360px;object-fit:cover}
.live-section h2{margin:24px 0}
.live-section p:not(.eyebrow){max-width:530px}
.live-section .button{margin-top:25px}
.contact{background:var(--yellow);padding:95px 0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.contact h2{margin:24px 0}
.contact-grid>div>p:not(.eyebrow){max-width:500px;font-size:1.1rem}
.contact-email{display:block;font-size:clamp(1.2rem,2vw,1.7rem);font-weight:600;margin-top:35px;overflow-wrap:anywhere}
.contact-phone{display:block;font-size:1.1rem;margin-top:6px}
.contact-address{margin-top:25px!important;font-size:1rem!important}
.contact .text-link{display:inline-block;margin-top:25px}
.contact .contact-instagram{margin-top:25px;max-width:100%}
.instagram-section{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;padding-bottom:100px}
.instagram-copy h2{margin:22px 0 24px;color:var(--brown)}
.instagram-copy>p:not(.eyebrow){max-width:460px;font-size:1.125rem;line-height:1.6}
.instagram-copy .button{margin-top:28px;max-width:100%;overflow-wrap:anywhere}
.instagram-preview{width:min(100%,540px);min-width:0;justify-self:end}
.instagram-preview .instagram-media{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;background:#fff;border:1px solid var(--line);border-radius:2px;padding:24px}
.instagram-preview iframe.instagram-media{display:block;padding:0;border:0}
.instagram-profile-fallback{display:block;color:var(--brown);font-weight:600;overflow-wrap:anywhere}
@media(max-width:760px){.instagram-section{grid-template-columns:1fr;gap:32px;padding-bottom:65px}.instagram-copy h2{margin-top:18px}.instagram-preview{justify-self:start}}
.contact-form{background:#fff;padding:35px;box-shadow:0 6px 24px #45291f0a}
.contact-form h3{font-size:3rem;margin-bottom:24px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-form label{display:block;font-size:.875rem;font-weight:600;margin:18px 0 7px}
.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:1px solid #c8c0b6;border-radius:0;padding:12px;background:var(--paper);color:var(--ink);font-size:1rem;line-height:1.5;min-height:48px}
.contact-form textarea{resize:vertical}
.contact-form .button{margin-top:24px;width:100%}
.form-note{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:15px}
.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px 0}
.footer>p{font-size:1rem;line-height:1.5}
.footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:20px;font-size:.875rem}
.footer>div a:hover{text-decoration:underline}
.world-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:0;margin:0;background:#efe7d9;color:var(--ink);overflow:hidden;opacity:0;transition:opacity .35s}
.world-dialog[open]{display:grid;grid-template-rows:auto 1fr auto}
.world-dialog.is-visible{opacity:1}
.world-dialog::backdrop{background:var(--paper)}
.world-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 32px;background:#fffefbf5;z-index:3;border-bottom:1px solid #d9d4cd}
.world-top h2{font-size:2rem;margin-top:5px;line-height:1.1}
.world-top .eyebrow{font-size:.75rem;letter-spacing:.07em}
.world-close{border:0;background:transparent;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:22px;padding:10px 0;flex-shrink:0}
.world-close span{font-size:2rem;font-weight:400}
.world-stage{min-height:0;min-width:0;position:relative;overflow:hidden;touch-action:none;cursor:grab;background:#efe7d9;outline-offset:-5px}
.world-stage:active{cursor:grabbing}
.world-stage.is-animating{cursor:default}
.world-stage img{position:absolute;left:0;top:0;max-width:none;transform-origin:0 0;will-change:transform;user-select:none;-webkit-user-drag:none}
.world-stage.is-animating img{transition:transform 1.15s cubic-bezier(.2,.68,.18,1)}
.world-loading{position:absolute;inset:0;display:grid;place-items:center;font-size:1rem;background:#efe7d9;z-index:2}
.world-loading[hidden]{display:none}
.world-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fffefbf5;padding:20px 32px;z-index:3;border-top:1px solid var(--line)}
.world-story{max-width:490px}
.world-story>p{font-size:1rem;line-height:1.4}
.world-instruction{font-size:.75rem;color:var(--muted);line-height:1.4;display:block;margin-top:9px}
.world-controls{display:flex;align-items:center;justify-content:end;gap:8px;flex-wrap:wrap}
.world-controls button{border:1px solid #c9bdb0;min-height:42px;min-width:42px;background:white;padding:9px 13px;border-radius:2px;font-size:.875rem;line-height:1.3;white-space:nowrap}
.world-controls button:hover{background:var(--yellow)}
.world-controls button:disabled{opacity:.4;cursor:default}
.world-controls output{font-size:.875rem;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}
.world-controls #zoom-in,.world-controls #zoom-out{font-size:1.5rem;padding:3px 10px;line-height:1}
.world-controls #zoom-meeting{background:var(--yellow);border-color:var(--yellow);font-weight:600;margin-left:10px}
.world-controls #zoom-meeting[hidden]{display:none}
.noscript-note{padding:25px;text-align:center;background:#fff7c9;font-size:1rem}
@media(min-width:1000px) and (min-height:740px){.hero-scroll .hero{min-height:min(740px,100svh);padding-block:32px}.hero-scroll .hero-copy{padding-top:0}.hero-scroll .hero h1{font-size:clamp(3.5rem,min(6.8vw,10svh),7.2rem);margin:24px 0}.hero-scroll .hero-description{margin-bottom:24px}.hero-scroll .scrub-guidance{margin-top:20px}.hero-scroll .hero-bottom{margin-top:25px}}
@media(max-width:1100px){.project-track{padding-inline:32px;scroll-padding-inline:32px}.gallery-controls{gap:16px}.gallery-progress{width:90px}}
@media(max-width:760px){.hero-scroll.has-scroll-zoom .hero-painting{height:min(58svh,540px)}.scrub-guidance{margin-top:20px;font-size:.875rem;max-width:none}.scrub-progress{width:40px}.project-gallery-pin{padding:0 0 25px}.project-gallery .section-heading{margin-bottom:18px}.project-gallery .section-heading>p{margin-top:18px}.project-track{padding-inline:20px;scroll-padding-inline:20px;gap:18px}.project-card{flex-basis:86vw}.project-cover{height:clamp(270px,43svh,390px);padding:15px}.cover-cities{padding:25px}.gallery-city-type{font-size:7rem}.cover-cities>.eyebrow{font-size:.75rem}.cover-cities>span:last-child{font-size:1rem}.project-card-caption{gap:12px;min-height:100px}.project-card-caption strong{font-size:1.8rem}.project-card-caption>span:nth-child(2)>span{font-size:.875rem}.project-card-action{display:none}.gallery-controls{gap:12px;flex-wrap:wrap;padding-top:15px}.gallery-controls>p{flex:1 0 calc(100% - 100px);order:0}.gallery-controls>#gallery-count{order:1}.gallery-progress{order:2;flex:1}.gallery-controls>div{order:3}.project-details{padding-top:35px}}
@media(prefers-reduced-motion:reduce){.hero-scroll.has-scroll-zoom .hero-painting img{will-change:auto}}
@media(min-width:1650px){.hero{min-height:840px}.hero-painting img{height:705px}}
@media(max-width:1100px){.wrap,.site-header{width:calc(100% - 64px)}.hero{gap:38px;min-height:650px}.hero h1{font-size:clamp(3rem,6.3vw,5.5rem)}.hero-description{font-size:1.1rem}.hero-painting img{height:570px}.hero-bottom{margin-top:35px}.site-header nav{gap:22px}.philosophy-grid,.process,.about,.contact-grid{gap:55px}.near-miss-grid,.project-panel,.live-section{gap:50px}.project-tab{padding:17px 15px;min-height:164px}.tab-name{font-size:1.7rem}.tab-relation{font-size:.8rem}.world-bottom{gap:20px}.world-story{max-width:360px}.process-image img{height:565px}.work-preview img{height:470px}.city-statement{min-height:510px}}
@media(max-width:760px){html{scroll-padding-top:95px}.wrap,.site-header{width:calc(100% - 40px)}body{font-size:1rem}.site-header{min-height:86px}.wordmark{font-size:1.3rem}.menu-toggle{display:block;min-height:44px}.site-header nav{display:none;position:absolute;top:85px;left:-20px;right:-20px;padding:25px 20px;background:var(--paper);box-shadow:0 14px 20px #35221c15;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px}.site-header nav.is-open{display:flex}.site-header nav>a{padding:13px 0}.site-header nav>.nav-contact{padding:13px 18px}.hero{grid-template-columns:1fr;gap:34px;padding-top:28px;padding-bottom:28px;min-height:0}.hero-copy{padding-top:0}.hero .eyebrow{font-size:.75rem}.hero h1{font-size:clamp(3.5rem,11.5vw,5.3rem);margin:22px 0}.hero-description{font-size:1.125rem;margin-bottom:25px}.hero-bottom{display:none}.hero-art{max-width:530px;margin-inline:auto}.hero-painting img{height:auto;width:100%;max-height:620px;object-fit:contain}.hero-art figcaption{font-size:.75rem;gap:15px}.hero-secondary{margin-top:17px}.encounter-strip{padding:28px 0 38px;align-items:start;flex-direction:column;gap:13px}.encounter-strip>p{font-size:1.1rem}.philosophy{padding:65px 0 28px}.philosophy-grid{grid-template-columns:1fr;gap:32px}.philosophy h2{margin-top:18px}.section-number{display:none}.philosophy-line{flex-wrap:wrap;gap:15px 30px;justify-content:start;margin-top:38px;padding-top:23px;font-size:.75rem}.large-copy{font-size:1.45rem}.projects{padding-top:65px;padding-bottom:65px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{margin-top:18px}.section-heading>p{margin-top:20px}.project-tabs{display:flex;overflow-x:auto;scroll-snap-type:x proximity;margin-bottom:30px;-webkit-overflow-scrolling:touch}.project-tab{flex:0 0 155px;scroll-snap-align:start;min-height:147px;padding:16px}.tab-name{font-size:1.8rem}.tab-number{margin-bottom:15px}.tab-relation{font-size:.8rem}.project-panel{grid-template-columns:1fr;gap:32px;padding:0}.project-copy h3{margin:18px 0}.project-copy p:not(.eyebrow):not(.project-lead){font-size:1rem}.project-lead{font-size:1.4rem}.project-facts{font-size:.8rem}.project-copy>.button{margin-top:25px}.work-preview{padding:15px}.work-preview img{height:440px}.image-open{left:15px;right:15px;bottom:15px}.project-caption{font-size:.75rem}.city-statement{min-height:420px;padding:26px}.city-type{font-size:8rem;margin:35px 0}.city-bottom{font-size:1rem}.city-index{bottom:26px;right:26px}.near-miss{padding:65px 0}.near-miss-grid{grid-template-columns:1fr;gap:28px}.near-miss h2{margin-top:20px}.near-miss .button{margin-top:25px}.process{grid-template-columns:1fr;gap:37px;padding-top:65px;padding-bottom:65px}.process-image img{height:420px}.process-copy h2{margin-top:18px}.process-image figcaption{font-size:.8rem}.process-step{padding:19px 0}.about{grid-template-columns:1fr;gap:35px;padding:65px 0}.about h2{margin-top:18px}.portrait img{height:380px}.about-location{font-size:.75rem;gap:15px;flex-wrap:wrap}.live-section{grid-template-columns:1fr;gap:30px;padding:15px 0 65px}.live-section img{height:260px}.live-section h2{margin-top:18px}.contact{padding:65px 0}.contact-grid{grid-template-columns:1fr;gap:36px}.contact h2{margin-top:18px}.contact-form{padding:24px}.contact-form h3{font-size:2.7rem}.form-row{grid-template-columns:1fr;gap:0}.contact-email{font-size:1.35rem}.footer{flex-wrap:wrap;align-items:start;padding:30px 0;gap:24px}.footer>div{width:100%;gap:16px;font-size:.8rem}.world-top{padding:12px 17px;gap:12px}.world-top h2{font-size:1.7rem}.world-top .eyebrow{font-size:.75rem}.world-close{font-size:.75rem;gap:10px;max-width:130px;text-align:right;line-height:1.3}.world-close span{font-size:1.7rem}.world-bottom{align-items:start;flex-direction:column;padding:14px 17px;gap:14px}.world-story{max-width:none}.world-story>p{font-size:.875rem}.world-instruction{font-size:.75rem;margin-top:6px}.world-controls{justify-content:start;width:100%;gap:6px}.world-controls button{font-size:.8rem;min-height:40px;padding:8px 10px}.world-controls #zoom-meeting{margin-left:4px}.art-hotspot>span:last-child{font-size:.75rem}}
@media(max-width:360px){.wrap,.site-header{width:calc(100% - 32px)}.hero h1{font-size:3.5rem}.hero-description{font-size:1rem}.hero-art figcaption{flex-direction:column;gap:4px}.hero-art figcaption>span:last-child{text-align:left}.world-controls #zoom-meeting{margin-left:0}.world-top .eyebrow{letter-spacing:0}.world-close{max-width:100px}.button{padding-inline:18px;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}

/* Exhibition opening: the photographs stay intact; the scroll moves the presentation. */
.hero.exhibition-hero{display:flex;align-items:center;width:100%;gap:0;min-height:calc(100svh - 106px);padding:60px 0 150px;position:relative;overflow:hidden;background:var(--blue);color:#fff}
.exhibition-hero .hero-art{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0}
.exhibition-hero .hero-painting,.hero-scroll.has-scroll-zoom .exhibition-hero .hero-painting{position:absolute;inset:0;height:100%;width:100%;background:var(--blue);box-shadow:none;touch-action:pan-y}
.exhibition-hero .hero-painting:focus-visible{outline:3px solid var(--yellow);outline-offset:-6px}
.exhibition-hero #hero-image{position:absolute;inset:0;max-width:none;max-height:none;width:100%;height:100%;object-fit:cover;background:transparent;transform-origin:0 0;transition:none;will-change:transform,opacity}
.hero-detail-plane{position:absolute;left:0;top:0;width:1024px;height:1024px;transform-origin:0 0;overflow:hidden;opacity:0;pointer-events:none;will-change:transform}
.exhibition-hero #hero-detail{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;background:transparent;transform:none;transition:none;will-change:auto}
.exhibition-hero .hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#211b21e6 0%,#211b21bc 25%,#211b2145 58%,#211b2114 100%),linear-gradient(0deg,#211b2180,transparent 30%)}
.exhibition-hero .hero-copy{padding:0;z-index:2;pointer-events:none;will-change:opacity}
.exhibition-hero .hero-copy .button,.exhibition-hero .hero-copy a{pointer-events:auto}
.exhibition-hero.copy-is-hidden .hero-copy .button,.exhibition-hero.copy-is-hidden .hero-copy a{pointer-events:none}
.exhibition-hero.copy-is-hidden .hero-copy:focus-within .button,.exhibition-hero.copy-is-hidden .hero-copy:focus-within a{pointer-events:auto}
.exhibition-hero .hero-copy:focus-within,.exhibition-hero .hero-copy:focus-within~.hero-shade{opacity:1!important}
.exhibition-hero .hero-copy :focus-visible{outline-color:var(--yellow)}
.exhibition-hero h1{font-size:clamp(3.5rem,7.7vw,8rem);margin:26px 0;color:#fff;max-width:650px}
.exhibition-hero h1>span:before{content:none}
.exhibition-hero .hero-description{max-width:470px;font-size:1.2rem;margin-bottom:28px}
.exhibition-hero .hero-secondary{font-size:1rem;margin-top:18px}
.exhibition-hero .art-hotspot{z-index:1;pointer-events:none}
.exhibition-hero .art-hotspot>span:first-child{width:34px;height:34px;font-size:1.4rem;box-shadow:0 0 0 5px #ffffff25}
.exhibition-hero .scrub-guidance{position:absolute;left:max(56px,calc((100% - var(--wrap))/2));bottom:65px;margin:0;z-index:3;max-width:490px;width:calc(100% - 112px);padding:12px 15px;background:#35221cdd;color:#fff;border:1px solid #ffffff30;border-radius:2px;pointer-events:none}
.exhibition-hero .scrub-progress{background:#ffffff45}
.exhibition-hero .scrub-progress>span{background:var(--yellow)}
.exhibition-hero .hero-art figcaption{position:absolute;left:max(56px,calc((100% - var(--wrap))/2));bottom:22px;z-index:3;margin:0;padding:4px 9px;background:#35221cdd;color:#fff;max-width:calc(100% - 112px);font-size:.8125rem;line-height:1.5;pointer-events:none}
.hero-scroll.is-scrubbing .hero.exhibition-hero{height:var(--scene-viewport);min-height:0;padding:60px 0 150px}
.hero-scroll.is-scrubbing.is-measuring .hero.exhibition-hero{position:relative;height:auto;min-height:calc(100svh - 106px);padding:60px 0 150px}
@media(max-width:1100px){.exhibition-hero .scrub-guidance,.exhibition-hero .hero-art figcaption{left:32px;max-width:calc(100% - 64px)}.exhibition-hero .scrub-guidance{width:calc(100% - 64px)}}
@media(max-width:760px){.hero.exhibition-hero,.hero-scroll.is-scrubbing.is-measuring .hero.exhibition-hero{min-height:calc(100svh - 86px);padding:42px 0 156px}.hero-scroll.is-scrubbing .hero.exhibition-hero{padding:42px 0 156px;min-height:0}.exhibition-hero h1{font-size:clamp(3rem,12.5vw,5rem);margin:24px 0}.exhibition-hero .hero-description{font-size:1.0625rem;max-width:350px;margin-bottom:24px}.exhibition-hero .hero-shade{background:linear-gradient(90deg,#211b21d9,#211b2166),linear-gradient(0deg,#211b2180,transparent 45%)}.exhibition-hero .scrub-guidance,.exhibition-hero .hero-art figcaption{left:20px;max-width:calc(100% - 40px)}.exhibition-hero .scrub-guidance{bottom:78px;width:calc(100% - 40px);font-size:.875rem;padding:11px 12px}.exhibition-hero .hero-art figcaption{bottom:23px;font-size:.8125rem}.exhibition-hero .art-hotspot>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.exhibition-hero #hero-image,.exhibition-hero .hero-detail-plane,.exhibition-hero .hero-copy{will-change:auto}}
