/* 1.9.53 Site frame: one content width for the header, every page and the footer.
   --mf-frame is the content width; --mf-gutter is the side space outside it.
   Loaded last on every public page so it wins over older per-template widths. */
:root{--mf-frame:1240px;--mf-gutter:56px}
@media(max-width:1100px){:root{--mf-gutter:44px}}
@media(max-width:700px){:root{--mf-gutter:20px}}

/* Header: logo and menu sit on the frame edges. */
html body .mf-site-header.mf-site-header .mf-site-header-inner{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}

/* Film, Art Project, Exhibition and Workshop records. */
body.mfv-body .mfv-main .mf-rec.mf-rec,
#mansour-film-page #film-content>.mf-rec{width:calc(100% - 2*var(--mf-gutter));max-width:var(--mf-frame);margin-inline:auto}

/* Other Studio pages in the film shell (writing, archives, people, books). */
body.mfv-body .mfv-main:where(:not(:has(>.mf-rec))),
body.mfv-body .mfv-footer,
body.mfv-body .mfv-header{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}
/* Essays: the title lines up with the reading column below it. */
body.mfs-body .mfs-main:has(>.mfs-reading)>.mfs-heading{max-width:var(--mfs-reading-width,760px);margin-inline:auto}

/* Editorial pages and directory pages (all layouts, including Immersive). */
body.mf-ed-body .mf-ed-site .mf-ed-main{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}
body.mf-ed-body .mf-ed-site .mf-ed-main>.mf-ed-page-title{max-width:none;margin-left:0;margin-right:0}

/* Footers. */
body .mf-sd-footer-inner{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}
body.mf-ed-body .mf-ed-site>.mf-ed-footer{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));margin-inline:auto;padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}

/* Older stand-alone templates (photography archive, books, prints, connections, independent pages). */
body .mf-photo-header:not(.mf-rec *),body .mf-photo-main:not(.mf-rec *),body .mf-photo-footer:not(.mf-rec *),
body .mfb-site,body .mf-print-header,body .mf-print-main,body .mf-conn-site,
body .mf-independent-header,body .mf-independent-footer{max-width:calc(var(--mf-frame) + 2*var(--mf-gutter));padding-left:var(--mf-gutter);padding-right:var(--mf-gutter);box-sizing:border-box}

/* Homepage and other pages drawn by the WordPress theme: Studio sections use the
   same frame, centred on the window, whatever width the theme gives them. */
body.mf-frame-native .mf-native-mf_studio_editorial{--mf-frame-w:min(var(--mf-frame),calc(100vw - 2*var(--mf-gutter)));width:var(--mf-frame-w);max-width:none;margin-left:calc(50% - var(--mf-frame-w)/2);margin-right:calc(50% - var(--mf-frame-w)/2);box-sizing:border-box}

/* ===== 1.9.54 Editorial sections follow the Film page grammar =====
   Text sections: heading in the left 35%, text in the right 65% (like Synopsis).
   A heading that sits alone above images or cards is centred.
   One type scale shared with Film / Art / Exhibition pages (record.css).
   Per-page and per-section Design settings stay stronger than these rules. */
:root{--mf-type-title:78px;--mf-type-h2:36px;--mf-type-lede:23px;--mf-type-quote:30px;--mf-type-body:17px;--mf-type-card:19px;--mf-type-small:13px;--mf-grid-gap:64px}
@media(max-width:1100px){:root{--mf-type-title:62px;--mf-grid-gap:42px}}
@media(max-width:700px){:root{--mf-type-title:42px;--mf-type-h2:29px;--mf-type-lede:20px;--mf-type-quote:24px;--mf-type-body:16px;--mf-type-card:16px;--mf-grid-gap:20px}}

/* Type (kept at low strength so Studio Design font settings still win). */
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-page-title.mf-ed-page-title h1{font-size:var(--mf-type-title);line-height:1.04;letter-spacing:-.05em;text-wrap:balance}
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block>:is(h1,h2),
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block>.mf-ed-side>:is(h1,h2),
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-shared-block .mfs-section.mfs-section>h2{font-size:var(--mf-type-h2);line-height:1.2;letter-spacing:-.035em;font-weight:400;text-transform:none}
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block :is(.mf-ed-text,.mf-studio-column-prose) :is(p,li){font-size:var(--mf-type-body);line-height:1.8}
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block>blockquote{font-size:var(--mf-type-quote);line-height:1.45}
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block :is(figcaption,.mf-ed-cta){font-size:var(--mf-type-small)}
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-work span,
html :where(body.mf-ed-body .mf-ed-main,.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial) .mf-ed-shared-block .mfs-card.mfs-card h3{font-family:var(--mf-sd-heading,Georgia),"Times New Roman",serif;font-size:var(--mf-type-card);font-weight:400;line-height:1.3;letter-spacing:-.015em}

/* Fixes: a Gallery or Contact section no longer takes the inner grid / link styling itself. */
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) section.mf-ed-block.mf-ed-gallery{display:block}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) section.mf-ed-block.mf-ed-cta{display:block;border:0;padding:0;font-size:inherit}

/* Every text column, heading or not, uses the reading width. */
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-text p{max-width:var(--mfs-reading-width,760px)}

/* Headings alone above media, galleries, cards and video are centred. */
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block:is(.mf-ed-split,.mf-ed-columns,.mf-ed-gallery,.mf-ed-featured,.mf-ed-video,.mf-ed-image)>:is(h1,h2),
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-shared-block .mfs-section.mfs-section>h2{text-align:center;max-width:none;margin-left:auto;margin-right:auto}
/* Quotes: centred column. */
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block>blockquote{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}
/* Narrow media sections stay a centred reading-width column; narrow text follows the text grid. */
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-narrow{max-width:var(--mfs-reading-width,760px);margin-left:auto;margin-right:auto}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-narrow:is(.mf-ed-text,.mf-ed-hero,.mf-ed-cta){max-width:none}

@media(min-width:701px){
  /* Text, Hero and Contact sections: heading left 35%, text right 65%. */
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block:is(.mf-ed-text,.mf-ed-hero,.mf-ed-cta){display:grid;grid-template-columns:minmax(0,35fr) minmax(0,65fr);column-gap:var(--mf-grid-gap);align-items:start}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block:is(.mf-ed-text,.mf-ed-hero,.mf-ed-cta)>*{grid-column:2;min-width:0;max-width:var(--mfs-reading-width,760px);margin-left:0;margin-right:0}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block:is(.mf-ed-text,.mf-ed-hero,.mf-ed-cta)>:is(h1,h2,.mf-ed-side){grid-column:1;grid-row:span 4;max-width:none;margin:0;text-align:start;align-self:start;position:sticky;top:var(--mf-side-top,32px)}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-hero>:is(.mf-ed-hero-image,.mf-ed-hero-media){grid-column:1/-1;max-width:none;margin-bottom:var(--mf-grid-gap)}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-hero>:is(.mf-ed-hero-image,.mf-ed-hero-media)~:is(h1,h2,.mf-ed-side){grid-row:2/span 4}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-cta>a.mf-ed-cta{justify-self:start;margin-top:8px}
  /* Image + text Split uses the same 35 / 65 grid, so its text lines up with the text sections. */
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block .mf-ed-split-content.mf-ed-split-content:not(.mf-ed-text-only){grid-template-columns:minmax(0,35fr) minmax(0,65fr);column-gap:var(--mf-grid-gap)}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block .mf-ed-split-content.mf-ed-split-content:not(.mf-ed-text-only):has(>.mf-ed-text:first-child){grid-template-columns:minmax(0,65fr) minmax(0,35fr)}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block .mf-ed-split-content.mf-ed-text-only{grid-template-columns:minmax(0,35fr) minmax(0,65fr);column-gap:var(--mf-grid-gap)}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block .mf-ed-split-content.mf-ed-text-only>.mf-ed-text{grid-column:2}
}

/* ===== 1.9.55 Heading, side note and first line =====
   The first line of text starts level with the heading; the heading (and its
   side note) stays in view while a long text scrolls past. */
body.admin-bar{--mf-side-top:64px}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-text>:first-child{margin-top:0}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-side>:is(h1,h2){margin:0;max-width:none;text-align:start;color:var(--mf-sd-fg,inherit)}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside{margin:22px 0 0;max-width:420px}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-line{margin:0 0 6px;max-width:none;font:400 var(--mf-type-aside,19px)/1.45 var(--mf-sd-heading,Georgia),"Times New Roman",serif;letter-spacing:-.01em;color:var(--mf-sd-muted,#6c7067)!important}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-facts{display:grid;gap:14px;margin:18px 0 0;padding:0}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-facts:first-child{margin-top:0}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-facts dt{margin:0 0 3px;font:600 10px/1.4 Arial,"Helvetica Neue",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mf-sd-muted,#6c7067)}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-facts dd{margin:0;font:400 14px/1.55 Arial,"Helvetica Neue",sans-serif;color:var(--mf-sd-fg,#252620)}
html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside .mf-ed-aside-facts+.mf-ed-aside-line{margin-top:16px}
@media(max-width:700px){
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-side{margin-bottom:22px}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside{margin-top:14px;max-width:none}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
  html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block .mf-ed-aside-line{font-size:17px}
}
@media print{html :is(body.mf-ed-body .mf-ed-main.mf-ed-main,.mf-native-mf_studio_editorial.mf-native-mf_studio_editorial,.mf-rec .mf-rec-editorial.mf-rec-editorial) .mf-ed-block.mf-ed-block :is(h1,h2,.mf-ed-side){position:static}}

/* ===== 1.9.56 Content Directory: one typography everywhere =====
   The directory heading and the record titles inside it follow the site
   type scale on every page (directory pages, record pages, homepage). */
html body .mf-dir-shell.mf-dir-shell :is(.mf-dir-title,.mf-dir-heading){font-family:var(--mf-sd-heading,Georgia),"Times New Roman",serif!important;font-size:var(--mf-type-h2,36px)!important;font-weight:400!important;line-height:1.2!important;letter-spacing:-.035em!important;text-transform:none!important}
html body .mf-dir-shell.mf-dir-shell .mf-dir-title{margin:12px 0 0!important}
html body .mf-dir-shell.mf-dir-shell .mf-dir-lead-title{font-size:var(--mf-type-h2,36px)!important;line-height:1.15!important;letter-spacing:-.035em!important}
html body .mf-dir-shell.mf-dir-shell .mf-dir-card-title{font-family:var(--mf-sd-heading,Georgia),"Times New Roman",serif!important;font-size:var(--mf-type-card,19px)!important;font-weight:400!important;line-height:1.3!important;letter-spacing:-.015em!important;text-transform:none!important}
html body .mf-dir-shell.mf-dir-shell :is(.mf-dir--index,.mf-dir--cinematic) .mf-dir-card-title{font-size:var(--mf-type-lede,23px)!important;line-height:1.25!important;letter-spacing:-.02em!important}
