/* No remote fonts or image fetches; tiny progressive motion control, no animation library. */
:root{color-scheme:dark;--mffc-line:#51465f;--mffc-purple:#bfa2ff;--mffc-green:#b8dc83;--mffc-muted:#c0b8cc;--mffc-panel:#1c1826;--mffc-canvas:#111016}
*{box-sizing:border-box}html{scroll-padding-top:1rem}body{margin:0}a{text-underline-offset:.23em;text-decoration-thickness:.08em}a:hover{text-decoration-thickness:.14em}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--mffc-green);outline-offset:5px}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{font-weight:750}h1{letter-spacing:-.045em}h2{letter-spacing:-.025em}.wp-site-blocks{overflow:clip}.wp-site-blocks>header{margin-block-start:0}.mffc-header{border-bottom:1px solid var(--mffc-line);padding:22px clamp(20px,4vw,56px)}.mffc-header-inner{max-width:1200px;margin-inline:auto}.mffc-brand{max-width:285px;gap:12px}.mffc-brand .wp-block-site-title{font-size:20px!important;line-height:1.15;font-weight:800;max-width:215px}.wp-block-site-title a{text-decoration:none;color:#f3eff7}.wp-block-site-logo img{object-fit:contain;width:56px;height:auto;max-height:72px}.wp-block-navigation{font-size:15px;font-weight:650}.wp-block-navigation a,.wp-block-navigation button{min-height:44px;display:inline-flex;align-items:center}.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;padding:10px}.wp-block-navigation__responsive-container.is-menu-open{padding:28px;background:#111016!important;color:#f3eff7!important}.wp-block-navigation__submenu-container{border:1px solid var(--mffc-line)!important;padding:8px!important;background:var(--mffc-panel)!important;color:#f3eff7!important}.mffc-support-link a{color:var(--mffc-green)!important}.mffc-main{padding:clamp(28px,5vw,72px) clamp(20px,4vw,56px) 72px;min-height:60vh}.mffc-home{padding-top:40px}.mffc-hero{padding:8px 0 24px;border-bottom:3px solid var(--mffc-purple)}.mffc-hero::before{content:none}.mffc-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:400;line-height:1.1;letter-spacing:-.025em;margin:0 0 16px!important;max-width:22ch}.mffc-hero .mffc-intro{max-width:56ch;margin-bottom:12px}.mffc-eyebrow{font-size:14px!important;letter-spacing:0;text-transform:none;font-weight:600;color:var(--mffc-purple);margin:0 0 16px}.mffc-intro{font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.55;color:var(--mffc-muted)}.mffc-section{margin-block:56px!important}.mffc-section-heading{margin-bottom:0!important;padding-bottom:12px}.mffc-section-heading h2{margin:0;font-size:1.3rem;font-weight:650;letter-spacing:0}.mffc-grid{display:block}.mffc-featured-grid{display:block}.mffc-card{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;padding:28px 0;border:0;border-bottom:1px solid var(--mffc-line);border-radius:0;background:transparent;position:relative}.mffc-card :is(h2,h3){font-size:1.7rem;line-height:1.2;margin:0 0 16px;letter-spacing:-.02em}.mffc-card :is(h2,h3) a{color:#f3eff7;text-decoration:none}.mffc-card :is(h2,h3) a:hover{text-decoration:underline}.mffc-card>p{margin-top:0}.mffc-card .mffc-text-link{margin-top:auto;padding-top:12px;min-height:44px}.mffc-card-featured{border-top:1px solid var(--mffc-green);border-bottom:1px solid var(--mffc-green);background:transparent;padding-block:28px}.mffc-card-featured:before{content:none}.mffc-card-featured :is(h2,h3){font-size:clamp(1.7rem,3vw,2.3rem)}.mffc-meta{font-size:14px;line-height:1.6;color:var(--mffc-muted)}.mffc-meta span{margin:0 8px;color:var(--mffc-purple)}.mffc-films{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;font-size:18px;line-height:1.4}.mffc-films a{color:var(--mffc-purple);display:inline-block;min-height:44px;padding:8px 0}.mffc-films>span{display:none}.mffc-button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 22px;border-radius:4px;background:var(--mffc-green);color:#111016;font-size:16px;font-weight:750;text-decoration:none;border:1px solid transparent}.mffc-button:hover,.wp-block-button__link:hover{background:#d1eda9;color:#111016}.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--mffc-purple);border-color:var(--mffc-line)}.mffc-empty,.mffc-notice{padding:16px 0;border:0;border-bottom:1px solid var(--mffc-line);border-radius:0;color:var(--mffc-muted);font-size:16px}.mffc-empty p:first-child,.mffc-notice p:first-child{margin-top:0}.mffc-empty p:last-child,.mffc-notice p:last-child{margin-bottom:0}.mffc-warning{padding:24px;border-left:4px solid var(--mffc-green);background:var(--mffc-panel);margin-block:28px}.mffc-warning h2{font-size:1.2rem;margin-top:0}.mffc-warning p{margin-bottom:0}.mffc-season-list{display:flex;flex-wrap:wrap;gap:12px}.mffc-season{display:inline-flex;gap:12px;align-items:center;min-height:44px;padding:8px 0;margin-right:24px;border:0;border-radius:0;text-decoration:underline}.mffc-season:hover{border-color:var(--mffc-purple)}.mffc-host-panel{padding:24px 0;border-top:1px solid var(--mffc-line);border-radius:0;background:transparent}.mffc-placeholder{border:1px dashed var(--mffc-line);padding:18px;color:var(--mffc-muted);font-size:15px}.mffc-footer{padding:40px clamp(20px,4vw,56px);border-top:1px solid var(--mffc-line);color:var(--mffc-muted)}.mffc-footer-inner{max-width:1200px;margin-inline:auto}.mffc-footer a{min-height:44px;display:inline-flex;align-items:center}.mffc-footer .wp-block-site-title{font-size:22px;font-weight:750}.mffc-footer .wp-block-navigation{font-size:14px}.wp-block-post-title{font-size:clamp(2rem,5vw,3.7rem);line-height:1.08;margin-top:0!important}.wp-block-query-title{font-size:clamp(2rem,4vw,3rem)}.wp-block-post-content{line-height:1.75}.wp-block-post-content>h2{margin-top:2em}.wp-block-post-content img,.wp-block-post-content video{max-width:100%;height:auto}.wp-block-post-content iframe{max-width:100%}.wp-block-audio audio{width:100%}.wp-block-search{max-width:720px}.wp-block-search__label{font-weight:650;margin-bottom:10px;display:block}.wp-block-search__input{min-width:0;padding:12px;background:var(--mffc-panel);color:#f3eff7;border:1px solid var(--mffc-line);border-radius:4px;font:inherit}.wp-block-search__button{min-height:48px;background:var(--mffc-purple);color:#111016;border:0;border-radius:4px;font:inherit;font-weight:700}.mffc-pagination{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:32px}.mffc-pagination .page-numbers{padding:10px 16px;min-height:44px;border:1px solid var(--mffc-line);border-radius:4px}.mffc-pagination .current{background:var(--mffc-green);color:#111016}.mffc-adjacent{display:flex;justify-content:space-between;gap:32px;border-block:1px solid var(--mffc-line);padding-block:24px;margin-top:40px}.mffc-adjacent a{flex:1;min-height:48px}.mffc-editor-placeholder{padding:20px;border:1px dashed #78638c;background:#1c1826;color:#f3eff7}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{clip-path:none;display:block;height:auto;left:12px;top:12px;width:auto;padding:14px;background:#b8dc83;color:#111016;z-index:100000}.mffc-back{font-size:15px;margin-bottom:28px}.mffc-back a{min-height:44px;display:inline-flex;align-items:center}blockquote{border-left:3px solid var(--mffc-purple);padding-left:24px}table{max-width:100%;overflow-wrap:anywhere}pre{overflow:auto}summary{cursor:pointer;min-height:44px}
@media(max-width:1024px){.mffc-grid{display:block}.mffc-featured-grid{display:block}.mffc-header-inner{gap:20px!important}.mffc-header .wp-block-navigation{font-size:14px}.mffc-header .wp-block-navigation__container{gap:14px}.mffc-hero{padding:8px 0 24px;border-bottom:3px solid var(--mffc-purple)}}
@media(max-width:781px){.mffc-hero{padding:8px 0 24px;border-bottom:3px solid var(--mffc-purple)}.mffc-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:400;line-height:1.1;letter-spacing:-.025em;margin:0 0 16px!important;max-width:22ch}.mffc-home{padding-top:24px}.mffc-hero .wp-block-column{flex-basis:100%!important}.mffc-section{margin-block:36px!important}.mffc-header{padding-block:14px}.mffc-card-featured{border-top:1px solid var(--mffc-green);border-bottom:1px solid var(--mffc-green);background:transparent;padding-block:28px}.mffc-adjacent{flex-direction:column}.mffc-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.mffc-header .wp-block-navigation__responsive-container-open{display:flex}.mffc-header .wp-block-navigation__responsive-container.is-menu-open{display:flex}.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:flex-start;flex-direction:column;gap:14px}.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start}.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{position:static;visibility:visible;opacity:1;height:auto;width:auto;overflow:visible}.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{font-size:20px}}
@media(max-width:520px){.mffc-grid{display:block}.mffc-brand{max-width:238px}.mffc-brand .wp-block-site-title{font-size:18px!important;max-width:175px}.mffc-card{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;padding:28px 0;border:0;border-bottom:1px solid var(--mffc-line);border-radius:0;background:transparent;position:relative}.mffc-footer .wp-block-navigation__container{gap:10px 20px}.mffc-section-heading{margin-bottom:0!important;padding-bottom:12px}.wp-block-search__inside-wrapper{flex-wrap:wrap;gap:8px}.wp-block-search__button{margin-left:0}.mffc-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:400;line-height:1.1;letter-spacing:-.025em;margin:0 0 16px!important;max-width:22ch}.mffc-main{padding-inline:20px}.mffc-hero .mffc-intro{max-width:56ch;margin-bottom:12px}.wp-block-site-logo img{width:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Episode listings follow the same reading order at every width. */
.mffc-entry-main{min-width:0}.mffc-entry-main>p{max-width:64ch}.mffc-entry-index{font-size:14px;color:var(--mffc-muted)}.mffc-entry-index .mffc-meta{margin:0 0 12px}.mffc-entry-index .mffc-meta span{display:block;font-size:0;margin:3px 0}.mffc-access-label{font-size:14px;line-height:1.5;margin:0}.mffc-films li{border-top:1px solid var(--mffc-line);padding-top:4px}.mffc-films li span{white-space:nowrap;color:var(--mffc-muted);font-size:15px}.mffc-byline{font-size:16px;margin:0}.mffc-byline a,.mffc-directory-link a,.mffc-support-note a{display:inline-flex;align-items:center;min-height:44px}.mffc-support-note{border-top:1px solid var(--mffc-line);margin-top:40px;padding-top:20px}.mffc-summary{margin-top:0}.mffc-directory-link{margin-top:16px}.mffc-section:first-of-type{margin-top:24px!important}
@media(max-width:600px){.mffc-card{grid-template-columns:1fr;gap:10px;padding-block:24px}.mffc-entry-index{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:baseline}.mffc-entry-index .mffc-meta{margin:0}.mffc-entry-index .mffc-meta span{display:inline;font-size:14px;margin:0 5px}.mffc-films{gap:16px;font-size:17px}.mffc-home{padding-top:20px}.mffc-section{margin-block:28px!important}.mffc-card :is(h2,h3){font-size:1.5rem}.mffc-header .mffc-brand{max-width:235px}}
@media(max-width:360px){.mffc-films{grid-template-columns:1fr;gap:8px}}

.mffc-entry-index:empty{display:none}.mffc-card:has(.mffc-entry-index:empty){grid-template-columns:1fr}
/* v0.3: shared alignment and a deliberate film-collection masthead. */
.mffc-home>*,.mffc-home-collection{max-width:1200px!important;width:100%;margin-inline:auto!important}
.mffc-hero>*,.mffc-section>*,.mffc-home-collection>.mffc-section{max-width:none!important;margin-inline:0!important}
.mffc-hero{padding:32px 0 40px;border-bottom:0}
.mffc-masthead-columns{align-items:center!important;gap:40px!important;margin:0!important}
.mffc-hero h1{font-family:Impact,"Arial Narrow","Liberation Sans Narrow",sans-serif;font-weight:700;font-size:clamp(2.7rem,5.6vw,5.1rem);line-height:1.02;letter-spacing:-.015em;max-width:14ch;margin:12px 0 24px!important}
.mffc-title-accent{color:var(--mffc-purple)}
.mffc-kicker{font-size:15px;font-weight:650;color:var(--mffc-green);margin:0;letter-spacing:.015em}
.mffc-hero .mffc-intro{max-width:42ch;margin:0 0 24px!important;font-size:20px}
.mffc-collection-art{margin:0!important}.mffc-collection-art img{display:block;width:100%;height:auto;max-height:390px;object-fit:contain}
.mffc-welcome-state{display:grid;grid-template-columns:180px 1fr;gap:12px 36px;align-items:baseline;background:var(--mffc-panel);border-left:5px solid var(--mffc-green);padding:28px 32px}
.mffc-welcome-state h2{font-size:1.6rem;margin:0}.mffc-welcome-state p{margin:0;max-width:60ch;color:var(--mffc-muted)}.mffc-welcome-state a{grid-column:2;display:inline-flex;min-height:44px;align-items:center;justify-self:start}
.mffc-section-heading{display:flex;align-items:baseline;border-top:3px solid var(--mffc-purple);padding-top:16px}.mffc-section-heading h2{font-size:1.7rem;letter-spacing:-.025em}
.mffc-card-featured{border:0;border-left:5px solid var(--mffc-green);padding:30px;background:var(--mffc-panel)}
.mffc-header{border-top:4px solid var(--mffc-purple)}
@media(max-width:781px){.mffc-hero{padding:12px 0 28px}.mffc-masthead-columns{gap:16px!important}.mffc-masthead-columns>.wp-block-column:last-child{display:none}.mffc-hero h1{font-size:clamp(2.5rem,8.5vw,4.2rem);max-width:15ch}.mffc-hero .mffc-intro{font-size:18px}.mffc-welcome-state{grid-template-columns:1fr;padding:24px;gap:12px}.mffc-welcome-state a{grid-column:1}.mffc-card-featured{padding:22px}.mffc-main{padding-top:24px}}

/* v0.3.1: finite, opt-in motion; normal styles remain fully visible without JS.
   No forwards fill or persistent will-change: release compositing after settling. */
@media (prefers-reduced-motion: no-preference) {
  @keyframes mffc-heading-enter {
    from { opacity: .92; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
  }
  body:not(.wp-admin) .mffc-home .mffc-hero h1 {
    animation: mffc-heading-enter 480ms ease-out 0s 1 normal none;
  }
  body:not(.wp-admin) :is(.mffc-button, .wp-block-button__link) {
    transition: transform 160ms ease-out;
  }
}
@media (prefers-reduced-motion: no-preference) and (min-width: 782px) {
  @keyframes mffc-art-settle {
    from { transform: translateY(4px) rotate(-.6deg); }
    to { transform: none; }
  }
  body:not(.wp-admin) .mffc-home .mffc-collection-art {
    animation: mffc-art-settle 800ms ease-out 0s 1 normal none;
  }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  body:not(.wp-admin) :is(.mffc-button, .wp-block-button__link):hover:not(:focus-visible) {
    transform: translateY(-1px);
  }
}
/* Focus outlines and final position are immediate, including after mouse hover. */
body:not(.wp-admin) :is(.mffc-button, .wp-block-button__link):focus-visible {
  transform: none;
  transition: none;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* v0.3.2: only the reel turns. A static illustration is the no-JS default. */
.mffc-collection-art svg{display:block;width:100%;height:auto;max-height:390px}
.mffc-motion-toggle{display:block;margin:12px auto 0;min-height:44px;padding:8px 14px;border:1px solid var(--mffc-line);border-radius:4px;background:var(--mffc-panel);color:#f3eff7;font:inherit;font-size:14px;cursor:pointer}
.mffc-motion-toggle[hidden]{display:none}
@media (prefers-reduced-motion: no-preference) and (min-width: 782px) {
  @keyframes mffc-wheel-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
  }
  body:not(.wp-admin) .mffc-motion-ready .mffc-film-wheel {
    transform-box: view-box;
    transform-origin: 97px 126px;
    animation: mffc-wheel-spin 4s linear 0s infinite normal none;
    animation-play-state: paused;
  }
  body:not(.wp-admin) .mffc-motion-ready.is-spinning .mffc-film-wheel {
    animation-play-state: running;
  }
}

/* Reserve control space before JS initializes, preventing an appearance-time shift. */
.mffc-collection-art{position:relative;padding-bottom:56px}
.mffc-motion-toggle{position:absolute;bottom:0;inset-inline:0;width:max-content;max-width:100%}
.mffc-collection-art:focus-within{animation:none!important}

/* v0.3.3: responsive review against the installed WordPress navigation. */
.mffc-hero h1{font-weight:400;font-synthesis:none;letter-spacing:0}
.mffc-support-note>*,.mffc-footer-inner>*{max-width:none!important;margin-inline:0!important}
.mffc-home{margin-block-start:0!important}
@media(max-width:900px){
  .mffc-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}
  .mffc-header .wp-block-navigation__responsive-container-open{display:flex}
  .mffc-header .wp-block-navigation__responsive-container.is-menu-open{display:flex}
}
/* WordPress overlay rules have greater specificity than its closed menu rules.
   Set the layout variable as well as alignment so nested items cannot inherit right alignment. */
.mffc-header .wp-block-navigation__responsive-container.is-menu-open{
  padding:24px!important;
  --navigation-layout-justification-setting:flex-start;
  --navigation-layout-justify:flex-start;
}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
  width:100%;align-items:flex-start!important;padding-top:56px;
}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{
  align-items:flex-start!important;justify-content:flex-start;flex-direction:column;
}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{width:100%;gap:14px}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{font-size:20px;max-width:100%}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{text-align:left;white-space:normal}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{
  position:static;visibility:visible;opacity:1;height:auto;width:auto;min-width:0!important;
  overflow:visible;padding:4px 0 4px 18px!important;margin:4px 0 0;
  border:0!important;border-left:1px solid var(--mffc-line)!important;gap:4px!important;
  align-items:flex-start!important;
}
@media(max-width:781px){.mffc-main{padding-bottom:40px}.mffc-footer{padding-block:32px}}

.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{width:100%}
.mffc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{background:transparent!important}

/* v0.3.4: quiet film-slide frame for the episode empty state.
   Clip only decorative layers; text and keyboard focus remain unclipped. */
.mffc-welcome-state{
  --mffc-frame-cut:18px;
  position:relative;isolation:isolate;
  border:1px solid var(--mffc-line);background:#17151d;
}
@supports (clip-path:polygon(0 0,100% 0,100% 100%,0 100%)){
  .mffc-welcome-state{border:0;background:transparent}
  .mffc-welcome-state::before,.mffc-welcome-state::after{
    content:"";position:absolute;pointer-events:none;
    clip-path:polygon(0 0,calc(100% - var(--mffc-frame-cut)) 0,100% var(--mffc-frame-cut),100% 100%,var(--mffc-frame-cut) 100%,0 calc(100% - var(--mffc-frame-cut)));
  }
  .mffc-welcome-state::before{inset:0;z-index:-2;background:var(--mffc-line)}
  .mffc-welcome-state::after{--mffc-frame-cut:17px;inset:1px;z-index:-1;background:#17151d}
}
@media(max-width:781px){
  .mffc-welcome-state{--mffc-frame-cut:12px}
  .mffc-welcome-state::after{--mffc-frame-cut:11px}
}
@media(forced-colors:active){
  .mffc-welcome-state{border:1px solid CanvasText;background:Canvas}
  .mffc-welcome-state::before,.mffc-welcome-state::after{display:none}
}
