/* Approved Acton v7 desktop / v8 mobile. Component foundations are shared. */
:root { --acton-photo-gap:24px; }
.work-title-row { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:72px; align-items:end; margin-top:20px; }
.work-meta span { white-space:nowrap; }
.work-meta { margin:10px 0 0; font-size:12px; line-height:1.7; color:var(--ink-soft); letter-spacing:.02em; max-width:640px; }
.work-approach-copy { max-width:440px; margin:0; }
.work-approach-label { margin:0 0 14px; line-height:1.7; }
.work-approach-text { margin:0; font-size:16px; line-height:1.75; color:var(--ink-soft); }
.work-intro { padding-top:48px; padding-bottom:56px; }
.work-film-section { padding-bottom:112px; }
.work-film-section .work-section-label,
.work-photo-section .work-section-label { margin-bottom:30px; }
.work-photo-section { padding-bottom:112px; }
.photo-seq { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--acton-photo-gap); }
.photo-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--acton-photo-gap); }
.ph { margin:0; min-width:0; }
.ph img,.photo-closing img { display:block; width:100%; height:auto; object-fit:contain; }
.photo-craft { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:var(--acton-photo-gap); align-items:end; }
.photo-closing { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:var(--acton-photo-gap); align-items:end; margin:24px 0 0; }
.photo-closing img { grid-column:2; grid-row:1; }
.photo-closing figcaption { grid-column:1; grid-row:1; margin:0; max-width:260px; font-size:13px; line-height:1.75; color:var(--ink-soft); letter-spacing:.02em; }
.work-brochure-section { padding:88px 0 80px; }
#brochure .work-book:not([data-pages*=","]) .work-book-volume { transform:scale(1.08); }
.work-sale { border-top:1px solid var(--rule); margin-top:64px; padding-top:40px; }
.work-sale .rule-label { margin:0 0 16px; line-height:1.7; }
.work-sale h3 { font:400 30px/1.15 var(--serif); margin:0; }
.work-sale h3 a { color:var(--ink); text-decoration:none; border-bottom:1px solid var(--rule); padding-bottom:5px; }
.work-sale h3 a:hover { color:var(--navy); border-color:var(--navy); }
.work-sale-note { margin:20px 0 0; font-size:12px; line-height:1.75; color:var(--ink-soft); }
.work-sale-note .work-text-link { font-size:12px; }
@media(min-width:701px) and (max-width:1000px) {
  .work-title-row { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:36px; }
}
@media(max-width:700px) {
  :root { --acton-photo-gap:36px; }
  .work-intro { padding-top:28px; padding-bottom:36px; }
  .work-title-row { grid-template-columns:minmax(0,1fr); gap:28px; margin-top:16px; }
  .work-title-row h1 { font-size:clamp(26px,8.4vw,36px); }
  .work-location { font-size:12px; }
  .work-meta { font-size:12px; line-height:1.6; }
  .work-approach-copy { max-width:300px; }
  .work-approach-label { margin-bottom:10px; }
  .work-approach-text { font-size:14.5px; line-height:1.7; }
  .work-film-section { padding-bottom:64px; }
  .work-section-label { font-size:11px; letter-spacing:.24em; }
  .work-film-section .work-section-label { margin-bottom:16px; }
  .work-film-frame { width:100vw; margin-left:calc((100% - 100vw) / 2); aspect-ratio:3/2; min-height:0; }
  .work-film-frame:has(iframe) { aspect-ratio:16/9; }   /* poster is 3:2; the player is 16:9 */
  .work-film-note { width:100%; margin-left:0; }
  .work-film-note { font-size:12px; }
  .work-photo-section { padding-bottom:104px; }
  .work-photo-section .work-section-label { margin-bottom:22px; }
  .ph-full { width:100vw; margin-left:calc((100% - 100vw) / 2); }
  .photo-pair,.photo-craft { grid-template-columns:minmax(0,1fr); gap:12px; }
  .photo-pair .ph:last-child { width:88%; }
  .photo-craft .ph:last-child { width:64%; justify-self:end; }
  .photo-closing { grid-template-columns:minmax(0,1fr); gap:18px; }
  .photo-closing img,.photo-closing figcaption { grid-column:1; grid-row:auto; }
  .work-brochure-section { padding:48px 0 60px; }
  .work-object-heading { margin-bottom:12px; }
  #brochure .work-book-stage { width:calc(100vw - 20px); margin-left:calc((100% - (100vw - 20px)) / 2); padding-top:12px; }
  #brochure .work-book:not([data-pages*=","]) .work-book-volume { width:100%; transform:none; }
  .work-sale { margin-top:48px; padding-top:32px; }
  .work-sale h3 { font-size:24px; }
  .work-sale-note { margin-top:24px; }
  /* Expand small-link hit areas without moving or restyling the approved text. */
  .work-film-note a,
  .work-book-extras > *,
  .work-sale-note a,
  .work-contact-links a,
  .work-contact-service,
  .lang-toggle-header button { position:relative; }
  .work-film-note a::before,
  .work-book-extras > *::before,
  .work-sale-note a::before,
  .work-contact-links a::before,
  .work-contact-service::before,
  .lang-toggle-header button::before { content:""; position:absolute; inset:-11px -5px; }
}
