/* Desktop copy shares the ARCHIVE navigation edge; compact copy starts at the left content edge. */
:root{
  --copy-offset:calc(var(--desktop-copy-start,58vw) - var(--pad));
  --copy-gap:clamp(24px,4vw,64px);
  --copy-columns:minmax(0,calc(var(--copy-offset) - var(--copy-gap))) minmax(0,calc(100% - var(--copy-offset)));
}
.section-heading:has(> .section-copy),
.series-directory-intro,.archive-directory-heading,.archive-next,
.about-page-title-row,.archive-detail-hero,.series-gallery-intro,.exhibition-schedule{
  grid-template-columns:var(--copy-columns);
  column-gap:var(--copy-gap);
}
.section-copy,.series-directory-intro>p,.archive-directory-heading>p,
.archive-next>p,.about-page-deck,.detail-meta,.series-gallery-intro>p:last-child,
.exhibition-schedule-note{
  min-width:0;max-width:none;text-align:left;
}
.section-heading>.section-copy,.series-directory-intro>p,
.archive-directory-heading>p,.archive-next>p,.about-page-intro,
.archive-detail-hero>.detail-meta,.series-gallery-intro>p:last-child,
.exhibition-schedule>.exhibition-schedule-note{grid-column:2}
body.exhibition-page-body main>.archive-hero.exhibitions-intro{
  grid-template-columns:var(--copy-columns);column-gap:var(--copy-gap);
}
body.exhibition-page-body main>.exhibitions-intro>.archive-hero-meta{
  grid-column:2;max-width:none;padding-left:0;padding-right:var(--archive-pad);
}
/* Hero descriptions need real space when a narrow viewport creates more lines. */
body.page-body main>.page-hero{height:auto;min-height:var(--page-image-height,360px)}
.page-hero-copy{width:100%;max-width:none}
.page-hero .page-hero-copy>p:not(.eyebrow),
.home-critical>p:not(.eyebrow),.curator-materials>p,
.curator-history-note{
  width:calc(100% - var(--copy-offset));max-width:none;
  margin-inline-start:var(--copy-offset);margin-inline-end:0;text-align:left;
}
.home-page .home-critical{max-width:none}
.curator-history-note p{max-width:none}
/* Biography columns and image-use copy retain their original page layouts. */
/* Keep form controls and download controls separate from the introduction. */
.contact-page main>.contact{
  grid-template-columns:var(--copy-columns);gap:48px var(--copy-gap);
}
.contact-intro,.portfolio-intro,.home-page .home-contact-cta .contact-copy{
  display:grid;grid-template-columns:var(--copy-columns);
  column-gap:var(--copy-gap);align-items:end;max-width:none;
}
.contact-intro{grid-column:1/-1}
.contact-intro>.eyebrow,.portfolio-intro>.eyebrow,
.home-contact-cta .contact-copy>.eyebrow{grid-column:1/-1}
.contact-intro>h2,.portfolio-intro>h2,.home-contact-cta .contact-copy>h2{grid-column:1}
.contact-intro>p:not(.eyebrow),.portfolio-intro>p:not(.eyebrow),
.home-page .home-contact-cta .contact-copy>p:not(.eyebrow){
  grid-column:2;min-width:0;max-width:none;margin-top:0;text-align:left;
}
.contact-intro>h2{font-size:var(--type-page)!important;line-height:1.15!important}
.portfolio-section{grid-template-columns:var(--copy-columns);gap:40px var(--copy-gap)}
.portfolio-intro{grid-column:1/-1}
.portfolio-download{grid-column:2;min-width:0}
.home-page .home-contact-cta{display:block}
.home-page .home-contact-cta .contact-copy{position:static}
.home-page .home-contact-cta>.text-link{margin-inline-start:var(--copy-offset)}
/* Image-led sections keep the image and copy in their own columns. */
.home-video-inner{grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);gap:var(--copy-gap)}
.statement{grid-template-columns:minmax(0,.4fr) minmax(0,.6fr)}
.statement-copy{max-width:none;min-width:0}
.statement-copy>p:not(.eyebrow),.archive-description,
.archive-directory-copy>p:not(.eyebrow){max-width:none}
.privacy-document{width:calc(100% - 2 * var(--pad));max-width:none}
.privacy-sections section{display:block}
.privacy-sections section>:not(h2){max-width:90ch;min-width:0}


@media(min-width:1121px){
  .home-video-copy{display:block;position:relative}
  .home-video-copy .section-index{position:absolute;right:calc(100% + 24px);top:0}
  /* Full-bleed and inset image sections account for their own container edge. */
  body.exhibition-page-body main>.archive-hero.exhibitions-intro{
    grid-template-columns:minmax(0,calc(var(--desktop-copy-start,58vw) - var(--copy-gap))) minmax(0,1fr);
  }
  .exhibition-page-body .exhibition-schedule,.exhibition-page-body .archive-next{
    grid-template-columns:minmax(0,calc(var(--desktop-copy-start,58vw) - var(--archive-pad) - var(--copy-gap))) minmax(0,1fr);
  }
  .home-video-inner{
    grid-template-columns:minmax(0,calc(var(--desktop-copy-start,58vw) - (var(--copy-viewport-width,100vw) - 100%)/2 - var(--copy-gap))) minmax(0,1fr);
  }
  .statement{grid-template-columns:minmax(0,calc(var(--desktop-copy-start,58vw) - var(--pad))) minmax(0,1fr)}
  .section-copy,.about-page-deck,.page-hero-copy>p:not(.eyebrow),
  .series-directory-intro>p,.archive-directory-heading>p,.archive-next>p,
  .contact-intro>p:not(.eyebrow),.portfolio-intro>p:not(.eyebrow){text-wrap:pretty}
}

@media(max-width:1120px){
  /* Compact introductions use the full content width from the left edge. */
  :root{--copy-offset:0px;--copy-gap:20px;--copy-columns:minmax(0,1fr)}
  .section-heading:has(>.section-copy),.series-directory-intro,
  .archive-directory-heading,.archive-next,.about-page-title-row,
  .archive-detail-hero,.series-gallery-intro,.exhibition-schedule{
    grid-template-columns:var(--copy-columns);row-gap:24px;
  }
  .section-heading:has(>.section-copy)>:first-child,
  .series-directory-intro>div,.archive-directory-heading>div,.archive-next>div,
  .about-page-title-row>div:first-child,.archive-detail-hero>:first-child,
  .series-gallery-intro>h2,.exhibition-schedule>.exhibition-section-heading,
  .contact-intro>h2,.portfolio-intro>h2,.home-contact-cta .contact-copy>h2{
    grid-column:1/-1;
  }
  .section-heading>.section-copy,.series-directory-intro>p,
  .archive-directory-heading>p,.archive-next>p,.about-page-intro,
  .series-gallery-intro>p:last-child,.exhibition-schedule>.exhibition-schedule-note,
  .contact-intro>p:not(.eyebrow),.portfolio-intro>p:not(.eyebrow),
  .home-page .home-contact-cta .contact-copy>p:not(.eyebrow){grid-column:1/-1}
  .section-copy,.about-page-deck,.archive-next>p,.exhibition-schedule-note{margin-inline:0}
  body.exhibition-page-body main>.exhibitions-intro>.archive-hero-meta{grid-column:1/-1;padding-inline:var(--archive-pad)}
  body.exhibition-page-body main>.exhibitions-intro>div:not(.archive-hero-meta){grid-column:1/-1}
  .archive-detail-hero>.detail-meta{grid-column:1/-1;width:100%;max-width:none}
  .detail-meta>p{width:100%;max-width:none;margin-inline:0}
  .contact-page main>.contact{grid-template-columns:minmax(0,1fr)}
  .contact-intro{grid-template-columns:var(--copy-columns);row-gap:20px}
  .contact-page .contact-copy,.contact-page .contact-form{grid-column:1/-1;min-width:0}
  .portfolio-section{grid-template-columns:minmax(0,1fr)}
  .portfolio-intro,.home-page .home-contact-cta .contact-copy{grid-template-columns:var(--copy-columns);row-gap:20px}
  .portfolio-download{grid-column:1/-1}
  .home-video-inner{grid-template-columns:minmax(0,1fr)}
  .home-video-copy{width:100%;grid-template-columns:var(--copy-columns);gap:0 var(--copy-gap)}
  .home-video-copy .intro-large{grid-column:1/-1;grid-row:2;margin-top:20px}
  .home-video-copy .intro-meta{grid-column:1/-1;grid-row:3}
  .statement{grid-template-columns:minmax(0,1fr)}
  .statement-copy{width:100%}
  .statement-copy>p:not(.eyebrow),.featured-project-card>.archive-description,
  .selected-past .archive-card>p{
    width:100%;margin-inline:0;text-align:left;
  }
  .featured-project-grid,.selected-past-grid,.archive-directory-item{grid-template-columns:minmax(0,1fr)}
  .archive-directory-copy{grid-template-columns:40px minmax(0,1fr)}
  .archive-directory-copy>span{grid-column:1;grid-row:1}
  .archive-directory-copy>h3{grid-column:1/-1}
  .archive-directory-copy>p:not(.eyebrow){grid-column:1/-1;width:100%;margin-inline:0}
  .archive-document-grid{grid-column:1/-1}
  .privacy-document{width:auto;margin:0;padding-inline:var(--pad)}
  .privacy-fact{grid-template-columns:minmax(0,1fr);gap:5px}
}
