@font-face{font-family:Fallback;src:local('Arial')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f3ed;color:#272e29;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}::selection{background:#e4c9b8}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #a45135;outline-offset:5px}button{border:0;background:none}img{display:block;width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2,.serif{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(52px,7.4vw,106px);line-height:1.03;letter-spacing:-.055em}h2{font-size:clamp(34px,4vw,55px);line-height:1.16;letter-spacing:-.035em}h3{font-size:22px;line-height:1.3;letter-spacing:-.035em}.site-header{max-width:1600px;margin:auto;padding:29px 4.5%;display:flex;align-items:center;gap:40px;border-bottom:1px solid #d6d7ce;min-height:95px}.wordmark{font-family:Georgia,serif;font-size:23px;letter-spacing:-.8px;white-space:nowrap}.wordmark-dot{color:#a45135}.site-header nav{margin-left:auto;display:flex;gap:31px}.site-header nav a{font-size:13px;position:relative;padding:7px 0}.site-header nav a::after{content:'';height:1px;position:absolute;left:0;bottom:3px;right:100%;background:#a45135;transition:right .2s}.site-header nav a:hover::after,.site-header nav a[aria-current=page]::after{right:0}.site-header nav a[aria-current=page]{color:#a45135}.private-mark{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#696e62;white-space:nowrap;display:flex;align-items:center;gap:7px}.private-mark i{width:5px;height:5px;background:#8b937b;border-radius:50%}.menu-toggle{display:none}main{max-width:1600px;margin:auto;min-height:70vh;outline:none}.view{animation:appear .35s ease-out}.eyebrow{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;display:flex;align-items:center;gap:14px;color:#616759;margin-bottom:32px}.eyebrow::before{content:'';width:25px;height:1px;background:currentColor}.text-link{display:inline-flex;align-items:center;gap:27px;font-size:12px;border-bottom:1px solid #919789;padding:9px 0;transition:color .2s,gap .2s}.text-link:hover{color:#a45135;gap:36px}.text-link span{font-size:20px;line-height:1}.image-button{display:block;padding:0;width:100%;position:relative;text-align:left}.image-button:after{content:'↗';position:absolute;bottom:15px;right:15px;background:#f4f3ed;color:#272e29;border-radius:50%;height:33px;width:33px;display:grid;place-items:center;opacity:0;transform:translateY(4px);transition:.2s}.image-button:hover:after,.image-button:focus-visible:after{opacity:1;transform:translateY(0)}.section{padding:62px 8%;border-top:1px solid #d6d7ce}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:37px}.section-heading h2{font-size:36px}.section-number{font-size:10px;letter-spacing:1.4px;color:#74796f;display:block;margin-bottom:13px}.muted{color:#74796f}.project-index{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.index-card{display:block;border-top:1px solid #a7ada0;padding-top:19px}.index-meta{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#74796f;display:flex;justify-content:space-between;margin-bottom:27px}.index-card h3{font-family:Georgia,serif;font-size:29px;margin-bottom:12px;letter-spacing:-1px}.index-card p{font-size:13px;line-height:1.75;max-width:265px;color:#6c7167}.index-card .arrow{display:block;font-size:23px;margin-top:24px;color:#9b523a;transition:transform .2s}.index-card:hover .arrow{transform:translateX(8px)}.index-card:hover h3{color:#a45135}.notes-section{background:#eaece3}.note-row{display:grid;grid-template-columns:110px 1fr 28px;gap:20px;padding:24px 0;border-top:1px solid #cbd0c2;align-items:center}.note-row .date{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#74796f}.note-row h3{font-family:Georgia,serif;font-size:22px}.note-row p{font-size:12px;color:#6b7165;margin-top:5px}.note-row:hover h3{color:#a45135}.note-arrow{font-size:23px}.page-head{padding:70px 8% 48px}.page-head .eyebrow{margin-bottom:22px}.page-head h1{font-size:clamp(54px,7vw,90px)}.page-intro{margin-top:26px;max-width:570px;font-size:16px;color:#666d61;line-height:1.8}.split{display:grid;grid-template-columns:1fr 1.5fr;gap:12%;padding:0 8% 65px}.bio-image img{height:460px;object-fit:cover}.caption{font-size:10px;line-height:1.6;margin-top:11px;color:#74796f}.body-copy{max-width:660px}.body-copy p+p{margin-top:23px}.body-copy p{font-size:15px;line-height:1.9;color:#555e50}.body-copy .lead{font-family:Georgia,serif;color:#272e29;font-size:27px;line-height:1.5;letter-spacing:-.5px}.body-copy .text-link{margin-top:25px}.placeholder-note{margin-top:22px;border-left:2px solid #b9bdae;padding:9px 0 9px 16px;color:#727769;font-size:12px;line-height:1.7}.small-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#6b7363}.accordion{border-top:1px solid #c7cdbd}.accordion details{border-bottom:1px solid #c7cdbd;padding:0}.accordion summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:23px 0;cursor:pointer;font-family:Georgia,serif;font-size:23px;line-height:1.4}.accordion summary::-webkit-details-marker{display:none}.accordion summary::after{content:'+';font:24px Arial,sans-serif;color:#737d69}.accordion details[open] summary::after{content:'−'}.accordion .detail-body{max-width:760px;padding:0 45px 28px 0;font-size:14px;color:#5b6553;line-height:1.85}.accordion .detail-body p+p{margin-top:16px}.toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:34px}.filters{display:flex;gap:5px;flex-wrap:wrap}.filter{font-size:12px;border:1px solid transparent;padding:8px 16px;border-radius:2px;color:#666e5f}.filter[aria-pressed=true]{border-color:#394833;background:#394833;color:#fff}.filter:hover{border-color:#b9c0af}.search-label{display:flex;align-items:center;gap:12px;border-bottom:1px solid #a8af9e;padding:7px 0;color:#737d69;max-width:250px}.search-label input{background:none;border:0;outline:none;width:100%;font-size:12px;padding:4px}.search-label:focus-within{border-color:#a45135}.projects-section{padding:0 8% 72px}.result-count{font-size:11px;color:#7a806f;margin-bottom:18px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}.project-card{display:block;min-width:0}.project-art{aspect-ratio:1.38;background:#e3e7dc;overflow:hidden;position:relative;margin-bottom:19px;display:flex;align-items:center;justify-content:center}.project-art:after{content:'↗';position:absolute;bottom:14px;right:17px;font-size:24px;color:currentColor;transition:transform .2s}.project-card:hover .project-art:after{transform:translate(4px,-4px)}.project-card img{height:100%;object-fit:cover;transition:transform .4s}.project-card:hover img{transform:scale(1.025)}.project-card h3{font-family:Georgia,serif;font-size:27px;margin-bottom:8px}.project-card:hover h3{color:#a45135}.project-card p{font-size:12px;color:#6b7461;max-width:320px;line-height:1.75}.project-card .small-label{margin-bottom:8px;display:block;font-size:9px}.art-dubois{background:#dce1d2;color:#526244}.art-sidera{background:#e5e0d5;color:#8f806c}.art-index{background:#313c31;color:#d5dbcb}.art-tri{background:#d7ddd7;color:#536d67}.art-remnants{background:#e3e0d9;color:#686256}.art-symbol{font-family:Georgia,serif;font-size:clamp(55px,7vw,100px);font-weight:400;letter-spacing:-8px;line-height:1}.art-symbol i{font-style:italic}.art-lines{height:82px;width:72%;display:flex;align-items:center;justify-content:center;gap:9px}.art-lines i{height:var(--h);width:1px;background:currentColor;opacity:.65;transform:rotate(var(--r,0deg))}.art-index .art-symbol{letter-spacing:-4px}.empty-state{padding:45px 0;font-family:Georgia,serif;font-size:25px;color:#737d69;grid-column:1/-1}.back-link{display:inline-flex;align-items:center;gap:10px;color:#747b6b;font-size:12px;margin-bottom:42px}.project-detail-head{padding:48px 8%}.project-detail-head h1{max-width:900px;font-size:clamp(48px,6.9vw,92px)}.project-detail-head .eyebrow{margin:0 0 25px}.project-detail-head .page-intro{max-width:680px}.detail-layout{display:grid;grid-template-columns:240px 1fr;gap:8%;padding:0 8% 64px}.fact-list{margin:0;border-top:1px solid #c6cdbb}.fact-list div{padding:17px 0;border-bottom:1px solid #d3d7cb}.fact-list dt{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#7a816f}.fact-list dd{margin:6px 0 0;font-size:12px;line-height:1.75}.detail-image{margin:26px 0}.detail-image img{max-height:400px;object-fit:cover}.related-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}.related-links a{padding:9px 15px;background:#e5e8df;font-size:11px;border:1px solid #d3d9c8}.related-links a:hover{border-color:#7b8b69}.project-pagination{display:flex;justify-content:space-between;gap:20px;margin-top:45px}.project-pagination a{display:flex;flex-direction:column;gap:8px;font-family:Georgia,serif;font-size:21px}.project-pagination a:last-child{text-align:right}.project-pagination .small-label{font-family:Arial,sans-serif}.research-lead{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:0 8% 64px}.research-question{font-family:Georgia,serif;font-size:clamp(32px,3.3vw,47px);line-height:1.27;letter-spacing:-1.4px;border-left:2px solid #a45135;padding-left:28px}.research-context{font-size:14px;color:#646e5a;line-height:1.85}.research-context p+p{margin-top:20px}.paper{display:grid;grid-template-columns:100px 1fr auto;gap:32px;align-items:center}.paper-cover{height:130px;border:1px solid #bcc4af;background:#f4f3ed;padding:17px 12px;display:flex;flex-direction:column;justify-content:space-between;font:18px/1.15 Georgia,serif;letter-spacing:-.5px}.paper-cover span{font:8px Arial,sans-serif;letter-spacing:1px;color:#7b826f}.paper h3{font-family:Georgia,serif;font-size:27px}.paper p{font-size:12px;color:#707b64;margin-top:10px;max-width:520px}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 28px}.media-card .media-visual{aspect-ratio:1.38;overflow:hidden;background:#e3e7dc;margin-bottom:17px}.media-visual img{height:100%;object-fit:cover}.media-card h3{font-family:Georgia,serif;font-size:24px;margin-top:7px}.media-card p{font-size:12px;color:#6f7864;margin-top:9px}.media-card .text-link{margin-top:13px}.media-paper{display:flex;align-items:center;justify-content:center;font:42px/1.1 Georgia,serif;letter-spacing:-1.5px;padding:24px;text-align:center;color:#526346}.media-card .pending{display:flex;align-items:center;justify-content:center;background:transparent;border:1px dashed #b9c1af;color:#858e79;font:12px Arial,sans-serif;letter-spacing:.2px}.media-card[data-state=missing]{opacity:.9}.media-card[data-state=missing] h3{color:#65715a}.site-footer{max-width:1600px;margin:auto;padding:35px 4.5%;border-top:1px solid #d3d8cb;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#717a65}.site-footer div{color:#374531;font-family:Georgia,serif;font-size:15px}.site-footer div span{display:block;font:10px Arial,sans-serif;color:#7a826f;margin-top:5px}.site-footer p{font-size:10px}.site-footer a{font-size:10px}.site-footer a span{margin-left:9px}dialog{padding:22px;background:#f4f3ed;color:#272e29;border:0;width:min(1080px,92vw);max-height:94dvh}dialog::backdrop{background:#192017e8;backdrop-filter:blur(5px)}.lightbox-head,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px}.lightbox-head{padding-bottom:16px}.lightbox-head button,.lightbox-bottom button{padding:7px}.lightbox-bottom{padding-top:14px}#lightbox-image{max-height:73dvh;object-fit:contain;background:#20251e}.skip-link{position:fixed;top:-80px;left:16px;background:#272e29;color:#fff;padding:10px 18px;z-index:30}.skip-link:focus{top:16px}.noscript{padding:50px}.inline-link{border-bottom:1px solid #b0b7a6}.inline-link:hover{color:#a45135}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:1100px){.site-header{gap:25px}.site-header nav{gap:23px}.private-mark{display:none}.section{padding:50px 6%}.page-head{padding:58px 6% 40px}.split,.research-lead{padding-left:6%;padding-right:6%;gap:7%}.projects-section{padding-left:6%;padding-right:6%}.detail-layout{padding-left:6%;padding-right:6%;grid-template-columns:200px 1fr;gap:6%}.project-detail-head{padding-left:6%;padding-right:6%}.project-grid,.media-grid{gap:35px 22px}.paper{grid-template-columns:80px 1fr;gap:24px}.paper>.text-link{grid-column:2;justify-self:start;margin-top:-12px}}
@media(max-width:760px){.site-header{padding:20px 6%;position:relative;min-height:80px;flex-wrap:wrap;gap:0}.wordmark{font-size:22px}.menu-toggle{display:flex;margin-left:auto;gap:14px;align-items:center;padding:7px 0 7px 14px;font-size:12px}.menu-toggle span{font-size:20px;line-height:1}.site-header nav{display:none;flex-basis:100%;margin:22px 0 3px;padding-top:15px;border-top:1px solid #d6d7ce;gap:6px;justify-content:space-between}.site-header nav.is-open{display:flex}.site-header nav a{padding:10px 0;font-size:12px}.eyebrow{font-size:9px;margin-bottom:25px}.image-button:after{opacity:1;transform:none}.section{padding:40px 6%}.section-heading{gap:20px;margin-bottom:29px}.section-heading h2{font-size:32px}.section-heading .text-link{font-size:10px;gap:10px;white-space:nowrap}.project-index{grid-template-columns:1fr;gap:23px}.index-card{display:grid;grid-template-columns:1fr auto;column-gap:12px}.index-meta{grid-column:1/-1;margin-bottom:15px}.index-card h3{font-size:28px;grid-column:1}.index-card p{max-width:85%;grid-column:1}.index-card .arrow{grid-column:2;grid-row:2 / 4;margin-top:10px;align-self:center}.note-row{grid-template-columns:1fr 24px;gap:8px;padding:22px 0}.note-row .date{grid-column:1/-1;font-size:9px}.note-row h3{font-size:21px}.note-row p{font-size:11px}.note-arrow{grid-column:2;grid-row:2}.page-head{padding:43px 6% 35px}.page-head h1{font-size:clamp(48px,12vw,60px)}.page-intro{font-size:14px;margin-top:20px}.split{display:flex;flex-direction:column-reverse;padding-bottom:42px;gap:36px}.bio-image{max-width:420px}.bio-image img{height:420px}.body-copy .lead{font-size:26px}.body-copy p{font-size:14px}.accordion summary{font-size:21px;padding:20px 0}.accordion .detail-body{font-size:13px;padding-right:15px}.toolbar{flex-wrap:wrap;gap:18px}.filters{gap:3px}.filter{padding:8px 12px;font-size:11px}.search-label{max-width:none;width:100%}.project-grid,.media-grid{grid-template-columns:repeat(2,1fr);gap:30px 18px}.project-card h3{font-size:23px}.project-card p{font-size:11px}.art-symbol{font-size:64px}.project-art{aspect-ratio:1.1;margin-bottom:15px}.project-art:after{font-size:19px;bottom:8px;right:12px}.art-lines{gap:6px;height:64px}.detail-layout{display:flex;flex-direction:column-reverse;gap:34px;padding-bottom:40px}.fact-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.project-detail-head{padding:30px 6%}.back-link{margin-bottom:30px}.project-detail-head h1{font-size:clamp(45px,11vw,70px)}.project-detail-head .eyebrow{font-size:9px;margin-bottom:18px}.project-detail-head .page-intro{font-size:14px}.project-pagination a{font-size:18px;max-width:45%}.research-lead{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.research-question{font-size:35px;padding-left:20px}.research-context{font-size:13px}.paper{grid-template-columns:65px 1fr;gap:18px}.paper-cover{height:110px;padding:12px 8px;font-size:16px}.paper h3{font-size:23px}.paper p{font-size:11px}.paper>.text-link{margin-top:0}.media-card h3{font-size:22px}.media-card p{font-size:11px}.media-card .media-visual{aspect-ratio:1.08}.media-paper{font-size:30px;padding:15px}.media-card .pending{font-size:10px}.site-footer{padding:29px 6%;flex-wrap:wrap}.site-footer p{display:none}.site-footer a{font-size:9px}.lightbox-head{font-size:10px}dialog{padding:12px;width:94vw}.lightbox-bottom{font-size:10px}}
@media(max-width:390px){.project-grid,.media-grid{grid-template-columns:1fr}.project-art,.media-card .media-visual{aspect-ratio:1.55}.art-symbol{font-size:80px}.section-heading{align-items:flex-start}.section-heading h2{font-size:28px}.site-header nav a{font-size:11px}.fact-list{grid-template-columns:1fr}.paper{grid-template-columns:1fr}.paper-cover{display:none}.paper>.text-link{grid-column:1}.lightbox-head{align-items:flex-start}.close-lightbox{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.media-visual .image-button{height:100%}.media-visual .image-button img{height:100%;object-fit:cover}

.skip-link{visibility:hidden}.skip-link:focus{visibility:visible}
/* September 2026: quieter home, native pages, progressive enhancement. */
[hidden]{display:none!important}.js-only{display:none}.js .toolbar.js-only{display:flex}.js .result-count.js-only{display:block}
.project-card h2{font:27px/1.3 Georgia,serif;letter-spacing:-.035em;margin-bottom:8px}.project-card:hover h2{color:#a45135}.media-card h2{font:24px/1.3 Georgia,serif;letter-spacing:-.035em;margin-top:7px}.related-projects{margin-top:36px}.related-projects h2{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-size:10px;letter-spacing:1px;color:#6b7363}.related-projects .related-links{margin-top:13px}.site-footer{min-height:98px}.site-footer p{font-size:10px}.menu-toggle{min-height:44px}.filter{min-height:40px}.image-button:disabled{cursor:default}
@media(max-width:760px){.project-card h2{font-size:23px}.media-card h2{font-size:22px}.site-header nav{display:flex}.menu-toggle{display:none}.js .menu-toggle{display:flex}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.page-head h1{overflow-wrap:break-word}.research-question{font-size:32px}.private-mark{display:none}}

/* Full-width photograph, a single news list and the complete biography. */
.page-home main{max-width:none}
.news-section{display:grid;grid-template-columns:1fr 2fr;gap:8%;max-width:1600px;margin:auto;padding-top:44px;padding-bottom:52px;border-top:0}
.news-section h2{font-size:36px}
.news-empty{font-size:16px;color:#656a61;padding-top:4px}
.news-entry{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:22px 0;border-top:1px solid #d6d7ce}
.news-entry:first-child{padding-top:4px;border-top:0}
.news-entry time{font-size:14px;color:#656a61;padding-top:4px}
.news-entry h3{font-family:Georgia,serif;font-size:24px}
.news-entry p{margin-top:8px;font-size:16px;color:#656a61;line-height:1.7}
.bio-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:8%;align-items:start;padding-bottom:80px}
.bio-view .bio-image{position:sticky;top:32px;width:100%;max-width:none}
.bio-view .bio-image img{height:auto;aspect-ratio:3/4;object-fit:contain}
.bio-view .caption{font-size:12px;margin-top:13px}
.bio-view .body-copy p{font-size:16px;line-height:1.85}
.bio-view .body-copy .lead{font-size:28px;line-height:1.5}
.bio-background{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;padding-top:58px;padding-bottom:64px}
.bio-background h2{font-size:28px;line-height:1.2;margin-bottom:26px}
.education-list{list-style:none;margin:0;padding:0}
.education-list li{border-top:1px solid #cbd0c2;padding:22px 0}
.education-list h3{font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6;letter-spacing:0}
.education-list p{font-size:14px;line-height:1.7;margin-top:5px;color:#555e50}
.education-list .education-date{font-size:14px;color:#656a61;margin:0 0 7px}
@media(max-width:1100px){.bio-background{gap:7%}.bio-background h2{font-size:26px}}
@media(max-width:900px),(orientation:portrait){
 .news-section{padding-top:30px;padding-bottom:38px;border-top:1px solid #d6d7ce}
}
@media(max-width:760px){
 .news-section{grid-template-columns:1fr;gap:18px}
 .news-section h2{font-size:30px}
 .news-empty{padding-top:0}
 .news-entry{grid-template-columns:1fr;gap:10px}
 .bio-layout{display:flex;flex-direction:column;gap:32px;padding-bottom:44px}
 .bio-view .bio-image{position:static;max-width:520px;margin:auto}
 .bio-view .body-copy .lead{font-size:26px}
 .bio-background{grid-template-columns:1fr;gap:30px;padding-top:40px;padding-bottom:34px}
 .bio-background h2{font-size:26px;margin-bottom:22px}
}

/* Three ensemble pages: photographs and direct navigation. */
.ensemble-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.ensemble-card-image{height:auto;aspect-ratio:3/2;margin-bottom:24px;display:flex;align-items:center}
.ensemble-card-image img{width:100%;height:100%;object-fit:cover;transition:none}
.ensemble-card:hover img{transform:none}
.ensemble-card .small-label{font-size:12px;text-transform:none;letter-spacing:0;margin-bottom:10px}
.ensemble-card h2{font-size:30px;line-height:1.2}
.ensemble-card p{font-size:16px;line-height:1.75;max-width:none;margin-top:14px}
.project-open{display:inline-block;font-size:14px;margin-top:22px;border-bottom:1px solid #b0b7a6;padding-bottom:3px}
.ensemble-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:7%;align-items:start;padding:0 8% 68px}
.ensemble-photo img{width:100%;height:auto;object-fit:contain}
.ensemble-photo .caption{font-size:12px;margin-top:12px}
.ensemble-story .body-copy p{font-size:16px;line-height:1.85}
.ensemble-story .body-copy .lead{font-size:26px;line-height:1.55}
.ensemble-story .text-link{font-size:14px;gap:15px;overflow-wrap:anywhere;max-width:100%}
.ensemble-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:0 8% 70px}
.ensemble-gallery.single-photo{grid-template-columns:1fr;max-width:1120px;margin:auto}
@media(max-width:1100px){.ensemble-grid{gap:24px}.ensemble-card h2{font-size:27px}.ensemble-story,.ensemble-gallery{padding-left:6%;padding-right:6%}.ensemble-story{gap:6%}.ensemble-story .body-copy .lead{font-size:24px}}
@media(max-width:760px){.ensemble-grid{grid-template-columns:1fr;gap:42px}.ensemble-card-image{aspect-ratio:3/2;margin-bottom:19px}.ensemble-card-image img{height:100%}.ensemble-card h2{font-size:30px}.ensemble-card p{margin-top:10px}.project-open{margin-top:16px}.ensemble-story{grid-template-columns:1fr;gap:30px;padding-bottom:44px}.ensemble-gallery{grid-template-columns:1fr;gap:28px;padding-bottom:44px}.ensemble-view .project-detail-head h1{overflow-wrap:normal}.ensemble-view .page-intro{font-size:18px}}

/* Section labels are the sole page headings on Bio, Projects and Media. */
.page-head h1.eyebrow{font-family:inherit;font-size:10px;line-height:inherit;letter-spacing:1.7px;margin-bottom:0}
@media(max-width:760px){.page-head h1.eyebrow{font-size:9px}}

/* Home: a quiet line gives the photograph space before News. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.home-view{--home-header-height:98px;--home-credit-height:32px}
.home-view .home-hero{display:block;padding:0;color:#272e29}
.home-view .hero-figure{width:100%;margin:0}
.home-view .hero-figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - var(--home-header-height) - var(--home-credit-height));max-height:calc(100svh - var(--home-header-height) - var(--home-credit-height));margin:0 auto;object-fit:contain}
.home-view .hero-figure figcaption{display:block;margin:0;padding:6px 4.5%;font-size:12px;line-height:20px;text-align:center;color:#656a61}
.home-view .home-quote{max-width:1100px;margin:0 auto;padding:64px 8% 68px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(18px,1.8vw,22px);font-style:normal;font-weight:400;line-height:1.55;letter-spacing:-.01em;text-align:center;color:#555e50}
.home-view .news-section{border-top:1px solid #d6d7ce}
@media(max-width:760px){.home-view{--home-header-height:85px}.home-view .home-quote{padding:44px 6% 48px}}

/* Publications use the same quiet typography as the research introduction. */
.publication-entry{display:grid;grid-template-columns:100px minmax(0,1fr);gap:34px;padding:4px 0 10px;max-width:1040px}
.publication-entry+.publication-entry{margin-top:36px;padding-top:36px;border-top:1px solid #d6d7ce}
.publication-year{font-size:15px;color:#656a61;padding-top:4px}
.publication-copy h3{font-family:Georgia,serif;font-size:clamp(25px,2.7vw,34px);line-height:1.3;letter-spacing:-.025em;max-width:850px}
.publication-author{font-size:16px;margin-top:22px;color:#374531}
.publication-citation{font-size:15px;line-height:1.75;margin-top:8px;color:#656a61;max-width:740px}
.publication-links{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:24px}
.publication-links .text-link{font-size:14px;gap:18px}
@media(max-width:760px){.publication-entry{grid-template-columns:1fr;gap:14px}.publication-year{padding-top:0}.publication-links{gap:16px 28px}.publication-copy h3{overflow-wrap:break-word}}

/* Equal project thumbnails; full photographs remain on each detail page. */
.ensemble-card{display:flex;flex-direction:column}
.ensemble-card-image{position:relative;flex:none;overflow:hidden}
.ensemble-card-image img{position:absolute;inset:0;object-position:center}
.ensemble-card .small-label{min-height:2.8em}
.ensemble-card .project-open{align-self:flex-start;margin-top:auto;padding-top:22px}
.ensemble-card h2{margin-bottom:0}
@media(max-width:760px){.ensemble-card .small-label{min-height:0}.ensemble-card .project-open{padding-top:16px}}
/* The footer follows the document and sits at its natural bottom. */
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.site-header{width:100%;margin:0 auto}
main{width:100%;flex:1;margin:0 auto}
.site-footer{position:static;flex-shrink:0;width:100%;max-width:none;min-height:0;margin:0;padding:0 0 env(safe-area-inset-bottom,0px);display:block;background:#f4f3ed;border-top:1px solid #d3d8cb}
.site-footer .footer-inner{display:flex;align-items:center;justify-content:flex-end;gap:12px 28px;max-width:1600px;min-height:65px;margin:0 auto;padding:10px 4.5%;font-family:Arial,Helvetica,sans-serif}
.footer-socials{display:flex;align-items:center;gap:8px;flex-shrink:0}
.site-footer .footer-socials a{display:grid;place-items:center;width:44px;height:44px;color:#374531;border-radius:2px}
.footer-socials svg{display:block;width:22px;height:22px}
.site-footer .footer-socials a:hover{color:#a45135;background:#e9ebe3}
.editor-entry{width:100%;max-width:1600px;margin:0 auto;padding:16px 4.5%;text-align:right;font-size:12px;color:#717a65}
.editor-entry a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:650px){.site-footer .footer-inner{justify-content:center;padding:10px 6%}.footer-socials{gap:14px}}

/* Media unfolds in one continuous page, with native playback in place. */
.media-view .media-section{padding:48px 8% 60px}
.media-section>h2{font-size:clamp(30px,3vw,42px);margin-bottom:30px}
.media-film{max-width:1100px}
.media-section iframe{display:block;width:100%;max-width:100%;border:0}
.video-player{height:auto;aspect-ratio:16/9;min-height:200px;background:#171b18}
.media-film figcaption{margin-top:16px;font-size:1rem;line-height:1.6;color:#60665b}
.recording-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.recording{display:flex;flex-direction:column;min-width:0;gap:20px}
.recording h3{font-family:Georgia,'Times New Roman',serif;font-size:24px;line-height:1.35;letter-spacing:-.02em;min-height:2.7em}
.recording-details{margin-top:-10px}
.recording-meta,.recording-role{font-size:14px;line-height:1.65;color:#60665b}
.recording-role{margin-top:4px}
.album-player{height:352px;margin-top:auto;border-radius:12px}
.media-empty{font-size:1rem;color:#6b7165}
@media(max-width:1100px){.recording-grid{grid-template-columns:1fr}.recording{max-width:660px}.recording h3{min-height:0}}
@media(max-width:760px){.media-view .media-section{padding:34px 6% 42px}.media-section>h2{margin-bottom:24px}.recording-grid{gap:36px}.recording{gap:16px}.media-film figcaption{font-size:.875rem}}

/* The centred photograph stays whole, with adjacent images visible at the sides. */
.photo-carousel{max-width:1100px;--carousel-image-height:clamp(280px,64vh,680px);--carousel-image-height:clamp(280px,64svh,680px)}
.carousel-track{display:flex;gap:24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a7ada0 transparent;position:relative}
.carousel-track:focus-visible{outline:2px solid #a45135;outline-offset:5px}
.carousel-slide{--slide-width:min(78%,calc(var(--carousel-image-height) * var(--photo-ratio,1)));flex:0 0 auto;width:var(--slide-width);min-width:0;scroll-snap-align:center;scroll-snap-stop:always}
.carousel-slide:first-child{margin-inline-start:calc((100% - var(--slide-width)) / 2)}
.carousel-slide:last-child{margin-inline-end:calc((100% - var(--slide-width)) / 2)}
.carousel-slide img{display:block;width:100%;height:var(--carousel-image-height);object-fit:contain;object-position:center}
.carousel-slide figcaption{padding:16px 6px 12px;font-size:14px;line-height:1.65;color:#60665b;text-align:center;overflow-wrap:anywhere}
.carousel-controls{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:16px}
.carousel-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;border:1px solid #b9c1af;border-radius:50%;font-size:23px;line-height:1}
.carousel-controls button:hover:not(:disabled){border-color:#a45135;color:#a45135}
.carousel-controls button:disabled{opacity:.3}
.carousel-position{min-width:48px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
@media(max-width:760px){.carousel-track{gap:12px}}

/* The complete identity and mobile Menu share one row, without truncation. */
.site-header{--navigation-font-size:13px}
.site-header nav a{font-size:var(--navigation-font-size);flex-shrink:0}
.site-header .wordmark{display:block;flex-shrink:0;font-size:18px;line-height:1.5;letter-spacing:0;white-space:nowrap}
@media(max-width:760px){.site-header{--navigation-font-size:12px;column-gap:8px}.site-header .wordmark{font-size:clamp(13px,4vw,16px)}.site-header .menu-toggle{flex-shrink:0;min-width:44px;min-height:44px;padding:0;gap:4px;justify-content:flex-end}.site-header .menu-toggle span{font-size:18px}}
@media(max-width:390px){.site-header{--navigation-font-size:11px}}
