/* Content-led spacing. Artwork proportions and interaction surfaces retain their own geometry. */
:root{--space-section:clamp(76px,6vw,108px);--space-heading:36px;--space-detail:56px}
body .section-pad,body .archive-section{padding-block:var(--space-section)}
body.page-body .works,body.page-body .texts,body.page-body .portfolio-section{padding-top:var(--space-section)}
body .section-heading,body .exhibition-section-heading{margin-bottom:var(--space-heading)}
body .section-heading:has(>.section-copy){row-gap:22px}
body .series-directory-intro{margin-top:64px;padding-top:24px}
body .series-directory-intro+.series-list{margin-top:28px}
body .series-list{margin-top:64px}
body .archive-directory-item{padding-block:44px}
body .archive-directory-heading{display:block;margin-bottom:28px}
body .archive-directory-heading>.eyebrow{display:flex;align-items:center;gap:22px;width:100%;max-width:none;margin:0 0 30px;text-align:center;font-size:16px!important;line-height:1.5!important;letter-spacing:.12em!important}
.archive-directory-heading>.eyebrow::before,.archive-directory-heading>.eyebrow::after{content:"";flex:1;min-width:16px;height:1px;background:var(--line)}
body .archive-directory-heading>h2{margin:0}
body .archive-directory{padding-top:44px}
body .curator-history-note{width:100%;max-width:none;margin:20px 0 0;text-align:left}
body .curator-history-note p{margin:0;color:#45443f}
body .curator-history-note p+p{margin-top:8px}
body .curator-materials-list{margin:28px 0 20px}
body .curator-materials-list li{padding-block:20px}
body .quote-band{min-height:0;height:auto;padding-block:64px;gap:16px}
body .quote-band p{font-size:26px!important;line-height:1.3!important;margin:0}
body .quote-band span{max-width:64ch;font-size:var(--type-body);line-height:1.7;letter-spacing:0}
body .about-page-quote{min-height:0;padding-block:64px}
body .about-page-quote p{font-size:26px!important;line-height:1.4!important}
body .about-page-lead,body .about-page-text{padding-block:var(--space-section)}
body .about-page-facts{margin-top:44px;padding-top:26px}
body .about-professional-resources{margin-top:36px}
body .about-page-columns article>p:not(.about-page-label){margin-bottom:18px}
body .archive-detail-hero{min-height:0;padding-block:var(--space-detail);row-gap:30px}
body .archive-lead{padding-top:var(--space-detail);padding-bottom:24px}
body .archive-gallery-head{padding-top:var(--space-detail);padding-bottom:28px}
body .archive-masonry{padding-bottom:var(--space-section)}
body .archive-detail-next,body .archive-next{padding-block:var(--space-section)}
body .archive-next{margin-top:0}
body .detail-meta p{margin-top:20px}
body .featured-project-grid,body .selected-past-grid{row-gap:48px}
body .text-cards h3{margin-top:32px}
body .critic-detail{padding-top:26px}
body .archive-document-card h4{min-height:0}
body .archive-document-grid{row-gap:28px}
body .home-critical>p:not(.eyebrow){margin-bottom:18px}
body .statement-copy h2{margin-bottom:28px}
body .statement{min-height:0}
body .statement-image{min-height:0}
body .statement-image img{min-height:100%;object-fit:cover}
/* Supporting information remains within the existing warm neutral palette. */
body :is(.art-caption>div:last-child,.gallery-meta span,.timeline span,.press-source,.about-professional-resources span,.detail-meta dt,.archive-lead figcaption span:last-child,.archive-shot figcaption span:last-child,.archive-hero-meta span,.exhibition-schedule-note){opacity:.78}
body .curator-materials .curator-file-info{opacity:1;color:#55534d}
body .archive-document-open,body .archive-document-download{min-height:44px;display:inline-flex;align-items:center}
body .text-link{min-height:44px;max-width:100%}
/* Preserve words at every width; authored labels can wrap at spaces. */
:where(h1,h2,h3,h4,p,li,dt,dd,figcaption,label,summary,blockquote,a,strong,em,span){overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important}
main :where(h1,h2,h3,h4,p,li,dt,dd,figcaption){min-width:0}
@media(max-width:1120px){
 :root{--space-section:64px;--space-heading:30px;--space-detail:42px}
 body .archive-directory{padding-top:36px}
 body .quote-band,body .about-page-quote{padding-block:52px}
 body .archive-directory-item{padding-block:34px;row-gap:24px}
 body .series-directory-intro{margin-top:48px}
 body .series-list{margin-top:44px}
 body .statement-image img{height:auto;min-height:0}
 body .archive-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 :root{--space-section:48px;--space-heading:26px;--space-detail:34px}
 body .quote-band,body .about-page-quote{padding-block:40px}
 body .quote-band p,body .about-page-quote p{font-size:23px!important}
 body .quote-band{gap:12px}
 body .archive-directory{padding-top:28px}
 body .archive-directory-heading>.eyebrow{font-size:15px!important;gap:14px;margin-bottom:24px}
 body .archive-directory-heading{margin-bottom:22px}
 body .archive-directory-item{padding-block:28px}
 body .curator-materials-list li{padding-block:18px}
 body .curator-history-note{margin-top:18px}
 body .about-page-facts{margin-top:32px}
 body .archive-document-grid{grid-template-columns:minmax(0,1fr)}
 body .featured-project-grid,body .selected-past-grid{row-gap:36px}
 body .archive-detail-hero{padding-inline:var(--pad);gap:26px}
 body .detail-meta dl{grid-template-columns:max-content minmax(0,1fr);column-gap:16px}
 body .archive-gallery-head{gap:14px}
 body .archive-detail-next,body .archive-next{row-gap:24px}
}

/* Existing 16 September surface color, shared by each explicitly requested area. */
:root{--artista-deep-green:#14281E;--artista-on-green:#F4F0E8;--artista-on-green-muted:#C8D0C9;--artista-green-line:rgba(244,240,232,.38)}
body :is(.quote-band,.about-page-quote,.exhibition-page-body .archive-next,#video-gallery.vap){background:var(--artista-deep-green);color:var(--artista-on-green)}
body :is(.quote-band,.about-page-quote,.exhibition-page-body .archive-next) :is(p,h2,span,a){color:inherit;opacity:1}
body .archive-document-grid{margin-top:26px;padding-top:26px;gap:28px 24px}
body .archive-document-card>p{margin:12px 0 6px;opacity:1;color:#59574f}
body .archive-document-card>h4{margin:0;line-height:1.35}
body .archive-document-card>.pdf-document-info{margin:8px 0 0}
body .archive-document-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px 20px;margin-top:8px}
body .archive-document-actions :is(.archive-document-open,.archive-document-download){margin:0;padding:0;min-height:44px;color:#35372f;opacity:1}
body #video-gallery.vap{--bg:var(--artista-deep-green);--text:var(--artista-on-green);--muted:var(--artista-on-green-muted);--line:var(--artista-green-line);min-height:0;padding:40px var(--pad) 36px}
body #video-gallery .vap__stage{min-height:0;height:var(--vap-stage-height,300px);margin:10px auto 0}
body #video-gallery :is(.vap__css-scene,.vap__fallback,.vap__webgl){background:transparent}
body #video-gallery .vap__head{gap:16px;align-items:center}
body #video-gallery .vap__eyebrow{font-size:14px;line-height:1.5}
body #video-gallery .vap__filters{gap:8px 18px}
body #video-gallery :is(.vap__filters,.vap__controls) button{min-height:44px;font-size:13px;color:var(--text)}
body #video-gallery .vap__thumbnail-rail{margin:4px auto 12px;padding-bottom:6px}
body #video-gallery .vap__info{min-height:0;margin:0 auto 8px}
body #video-gallery .vap__info h2{font-size:clamp(23px,2.2vw,34px);line-height:1.35}
body #video-gallery .vap__info p{font-size:14px;line-height:1.65;margin:6px 0}
body #video-gallery :is(.vap__dialog,.vap__close,.vap__media-surface){background:var(--artista-deep-green)}
body #video-gallery .vap__media-controls button{border-color:var(--line)}
body #video-gallery button:hover{color:#fff}
body #video-gallery button:focus-visible{outline:2px solid var(--artista-on-green);outline-offset:4px}
@media(max-width:1120px){
 body #video-gallery.vap{padding-block:32px}
 .contact-page main>.contact{row-gap:36px}
 .contact-page .contact-form{padding-top:28px;border-top:1px solid var(--contact-line,rgba(244,240,232,.32))}
}
@media(max-width:700px){
 body #video-gallery.vap{padding-block:28px}
 body #video-gallery .vap__filters{margin-top:6px;gap:0 12px}
 body #video-gallery .vap__stage{margin-top:6px}
 body #video-gallery .vap__thumbnail-rail{margin-bottom:10px}
 body .archive-document-grid{margin-top:22px;padding-top:22px;row-gap:26px}
 .contact-page main>.contact{row-gap:30px}
 .contact-page .contact-form{padding-top:24px}
}

.contact-page .contact-form label:has(>input[required],>select[required],>textarea[required])>span::after{content:" *";color:inherit;opacity:1}
