/* Only artwork pages receive this layer. Existing work-specific media stay intact. */
body.work-presentation { --wp-reading-width: 780px; }
.work-presentation .wp-sections {
  display: flex;
  flex-wrap: wrap;
  gap: 10px clamp(22px, 4vw, 52px);
  margin: 0 var(--ww-gutter) 28px;
  padding: 17px 0;
  border-block: 1px solid var(--ww-line);
  font: 13px/1.85 var(--ww-sans);
  color: var(--ww-muted);
}
.work-presentation .wp-sections a { padding: 5px 0; text-decoration: none; color: inherit; }
.work-presentation .wp-sections a:hover { color: var(--ww-accent); }
.work-presentation .wp-chapters {
  margin: 24px var(--ww-gutter) 36px;
  border-block: 1px solid var(--ww-line);
  color: var(--ww-muted);
}
.work-presentation .wp-chapters > summary { padding: 17px 0; cursor: pointer; font: 13px/1.8 var(--ww-sans); }
.work-presentation .wp-chapters .pf-chapter-nav {
  position: static;
  inset: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 9px 25px;
  height: auto;
  max-height: none;
  overflow: visible;
  margin: 0;
  padding: 8px 0 23px;
  border: 0;
  background: transparent;
}
.work-presentation .wp-chapters .pf-chapter-nav a { white-space: normal; font-size: 12px; line-height: 1.8; }
.work-presentation .wp-primary-view { scroll-margin-top: 35px; }
.work-presentation figure.wp-primary-view > img { display: block; width: 100%; height: auto; max-height: 78svh; object-fit: contain; transform: none; }
.work-presentation .wp-primary-view video { object-fit: contain; }
/* Keep the lamp's own dark room, while giving the full photograph its own space. */
.work-presentation .gw-hero.wp-primary-view { height: auto; min-height: 0; max-height: none; display: block; padding: 0 0 48px; }
.work-presentation .gw-hero.wp-primary-view > img { position: relative; inset: auto; z-index: auto; width: 100%; height: auto; max-height: 72svh; object-fit: contain; object-position: center; filter: none; }
.work-presentation .gw-hero.wp-primary-view::after { display: none; }
.work-presentation .gw-hero.wp-primary-view > .gw-wrap { position: relative; padding-top: 35px; }
.work-presentation .gw-hero.wp-primary-view .gw-hero-bottom { margin-top: 30px; }
.work-presentation main > .ar-text,
.work-presentation main > .pf-essay { box-sizing: border-box; width: calc(100% - 2 * var(--ww-gutter)); max-width: var(--wp-reading-width); margin-inline: auto; padding: 40px 0 12px; }
.work-presentation main > .ar-text p,
.work-presentation main > .pf-essay > p { font-size: 17px; line-height: 1.95; }
.work-presentation .ww-work-reading { margin-top: 40px; padding-block: 48px; }
.work-presentation .ww-work-reading-head,
.work-presentation .ww-work-reading-body { max-width: var(--wp-reading-width); }
.work-presentation .ww-work-entry { padding-block: 19px; margin-top: 35px; }
.work-presentation .ac-record { box-sizing: border-box; width: calc(100% - 2 * var(--ww-gutter)); max-width: 920px; margin: 45px auto; padding-top: 27px; border-top: 1px solid var(--ww-line); background: transparent; }
.work-presentation .ac-record h2 { font: 400 clamp(25px, 2.8vw, 34px)/1.45 var(--ww-reading); }
.work-presentation .ac-record-summary { max-width: var(--wp-reading-width); font-size: 16px; line-height: 1.95; }
.work-presentation .ac-record dd { font-size: 14px; line-height: 1.85; }
.work-presentation .ac-record .ac-source-list { font-size: 13px; line-height: 1.9; }
.work-presentation .sr-projects { padding-block: 45px; }
.work-presentation .vx-experience { margin-block: 35px; padding-block: 44px; }
.work-presentation .vx-experience .vx-heading { margin-bottom: 28px; }
.work-presentation .vx-panel { margin-bottom: 28px; }
.work-presentation .vx-panel-copy { padding-bottom: 20px; }
.work-presentation .vx-panel figure img { object-fit: contain; }
.work-presentation .wp-zoom-tools { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 14px; font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); }
.work-presentation .wp-zoom-tools[hidden] { display: none; }
.work-presentation .wp-zoom-tools > div { display: flex; gap: 7px; }
.work-presentation .wp-zoom-tools button { border: 1px solid var(--ww-line); background: transparent; color: var(--ww-ink); border-radius: 0; padding: 7px 15px; min-height: 40px; font: inherit; cursor: pointer; }
.work-presentation .wp-zoom-tools button[aria-pressed="true"] { background: var(--ww-ink); color: var(--ww-paper); border-color: var(--ww-ink); }
.work-presentation .wp-zoom-viewport { width: 100%; height: auto; aspect-ratio: 2800 / 1582; overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; background: var(--ww-image); }
.work-presentation .wp-zoom-viewport img[data-zoom-image] { display: block; width: 100%; min-width: 100%; max-width: none; height: 100%; max-height: none; object-fit: contain; user-select: none; -webkit-user-drag: none; transform: none; }
.work-presentation .wp-sections a:focus-visible,
.work-presentation .wp-chapters > summary:focus-visible,
.work-presentation .wp-zoom :focus-visible { outline: 2px solid var(--ww-accent); outline-offset: 5px; }
@media (max-width: 640px) {
  .work-presentation .wp-sections { gap: 8px 25px; margin-bottom: 23px; padding-block: 12px; font-size: 12px; }
  .work-presentation .wp-chapters { margin-block: 20px 28px; }
  .work-presentation .wp-chapters .pf-chapter-nav { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .work-presentation figure.wp-primary-view > img { max-height: none; }
  .work-presentation main > .ar-text, .work-presentation main > .pf-essay { padding-top: 32px; }
  .work-presentation main > .ar-text p, .work-presentation main > .pf-essay > p { font-size: 16px; }
  .work-presentation .ac-record { margin-block: 33px; }
  .work-presentation .ww-work-reading { padding-block: 36px; }
  .work-presentation .vx-experience { margin-block: 26px; padding-block: 32px; }
  .work-presentation .vx-panel-copy { padding-bottom: 0; }
  .work-presentation .gw-hero.wp-primary-view { padding-bottom: 35px; }
  .work-presentation .gw-hero.wp-primary-view > .gw-wrap { padding-top: 25px; }
  .work-presentation .wp-zoom-viewport { height: auto; min-height: 0; }
  .work-presentation .wp-zoom-tools { gap: 10px; }
  .work-presentation .wp-zoom-tools button { padding-inline: 12px; }
}
@media print {
  .work-presentation .wp-sections, .work-presentation .wp-chapters, .work-presentation .wp-zoom-tools { display: none; }
  .work-presentation .wp-zoom-viewport { height: auto; min-height: 0; overflow: visible; }
  .work-presentation .wp-zoom-viewport img[data-zoom-image] { width: 100% !important; height: auto !important; }
}
