/* The art itself remains untouched. Light sits behind it, reflection on the rim. */
html body.mf-site.mf-polish.mf-cinema-ready .art-card { overflow:visible; }
html body.mf-site.mf-polish.mf-cinema-ready .art-card.mf-cinema-engaged { position:relative;z-index:6; }
html body.mf-site.mf-polish.mf-cinema-ready .art-card .mf-cinema-surface {
  position:relative;isolation:isolate;overflow:visible!important;transform:none;
  border-radius:14px;transform-origin:center bottom;scale:none!important;
  transition:none!important;
}
/* Own the transform even where the older home hover selector is more specific. */
html body.mf-site.mf-polish.mf-cinema-ready .art-card:is(:hover,:focus-within) .mf-cinema-surface {
  transform:none;scale:none!important;
}
html body.mf-site.mf-polish.mf-cinema-ready .mf-cinema-surface .art-image-button,
html body.mf-site.mf-polish.mf-cinema-ready .mf-cinema-surface .canvas-frame {
  position:relative;z-index:1;transform:none!important;scale:none!important;
}
html body.mf-site.mf-polish.mf-cinema-ready .mf-cinema-surface .canvas-frame>img {
  transform:none!important;scale:none!important;filter:none!important;
}
.mf-cinema-halo,.mf-cinema-rim {position:absolute;pointer-events:none;border-radius:inherit;}
.mf-cinema-halo {
  inset:-7px;z-index:-1;opacity:0;filter:blur(10px);
  background:transparent;transform:translate3d(0,4px,0) scale(1.01);
}
.mf-cinema-halo::before {
  content:"";position:absolute;inset:0;border-radius:inherit;opacity:.76;
  box-shadow:0 0 18px 10px rgb(255 231 174 / .8),0 0 46px 20px rgb(168 96 37 / .48);
  transform:scale(1.01);
}
.mf-cinema-rim {
  z-index:2;inset:-1px;border:1px solid rgb(255 242 217 / .6);
  box-shadow:inset 0 1px 1px #fff8,0 0 0 1px #edc99735,0 22px 48px -22px #000b;
  opacity:.2;
}
@supports (mask-composite:exclude) {
  .mf-cinema-rim {
    padding:2px;border:0;
    background:radial-gradient(ellipse at 38% 22%,#fffce3,#ffe2ab50 30%,#ffffff0a 58%,#ffd49f70);
    mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;
  }
}
html body.mf-site.mf-polish.mf-cinema-ready .art-card:focus-within .mf-cinema-rim {opacity:1;}
html body.mf-site.mf-polish.mf-cinema-ready .art-image-button:focus-visible {outline:3px solid #ffe2ac;outline-offset:7px;}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none) {
  .mf-cinema-moving {will-change:transform;}
  .mf-cinema-moving .mf-cinema-halo {will-change:transform,opacity;}
  /* A bounded breath, then a steady glow. No perpetual idle animation. */
  .mf-cinema-engaged .mf-cinema-halo::before {animation:mf-halo-breathe 4.8s ease-in-out 1 both;}
  @keyframes mf-halo-breathe {
    0% {opacity:.68;transform:scale(.99);}
    30% {opacity:1;transform:scale(1.035);}
    66% {opacity:.5;transform:scale(.995);}
    100% {opacity:.76;transform:scale(1.01);}
  }
  html body.mf-site.mf-polish.mf-cinema-ready .cinematic-hero .mf-cinema-hero-surface {
    animation:none!important;transform:scale(.985);transform-origin:center;transition:none;
  }
  html body.mf-site.mf-flow-home.mf-cinema-ready .cine-painting {
    animation:cinema-unveil 1.65s cubic-bezier(.16,.7,.22,1) both;
  }
  @keyframes cinema-unveil {
    from {opacity:.35;transform:translateY(24px) scale(.97);}
    to {opacity:1;transform:none;}
  }
}
@media (pointer:coarse),(hover:none),(prefers-reduced-motion:reduce),(forced-colors:active) {
  html body.mf-site.mf-polish.mf-cinema-ready .art-card .mf-cinema-surface,
  html body.mf-site.mf-polish.mf-cinema-ready .cinematic-hero .mf-cinema-hero-surface {transform:none!important;transition:none!important;will-change:auto;}
  .mf-cinema-halo,.mf-cinema-rim {display:none;}
}
@media (prefers-reduced-transparency:reduce),(prefers-contrast:more) {.mf-cinema-halo,.mf-cinema-rim {display:none;}}
html body.mf-cinema-ready[data-cinema-mode=static] :is(.mf-cinema-surface,.mf-cinema-hero-surface,.cine-painting) {transform:none!important;animation:none!important;}
@media print {
  .mf-cinema-halo,.mf-cinema-rim {display:none;}
  html body.mf-site.mf-polish.mf-cinema-ready :is(.mf-cinema-surface,.mf-cinema-hero-surface) {transform:none!important;animation:none!important;}
}

/* Reuse the theme's one-shot observer. Fixed parents keep hover bounds stable. */
html body.mf-site.mf-polish.mf-cinema-ready .art-card.mf-reveal {
  opacity:1!important; transform:none!important; transition:none!important;
}
.mf-cinema-shadow {
  position:absolute; inset:6px; z-index:-2; pointer-events:none;
  border-radius:inherit; background:#352115; filter:blur(20px);
  transform:translate3d(0,22px,0) scale(.97); opacity:.28;
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none) {
  html body.mf-site.mf-polish.mf-cinema-ready[data-cinema-mode=motion] .art-card.mf-reveal:not(.is-in):not(.mf-cinema-arrived) .mf-cinema-surface {opacity:0;}
  html body.mf-site.mf-polish.mf-cinema-ready[data-cinema-mode=motion] .art-card.mf-reveal.is-in:not(.mf-cinema-arrived) .mf-cinema-surface {
    animation:mf-art-arrive 1.45s cubic-bezier(.2,.7,.2,1) backwards;
  }
  html body.mf-site.mf-polish.mf-cinema-ready[data-cinema-mode=motion] .art-card.mf-reveal:not(.is-in):not(.mf-cinema-arrived) .art-info {opacity:0;}
  html body.mf-site.mf-polish.mf-cinema-ready[data-cinema-mode=motion] .art-card.mf-reveal.is-in:not(.mf-cinema-arrived) .art-info {
    animation:mf-caption-arrive 1.45s cubic-bezier(.2,.7,.2,1) backwards;
  }
  @keyframes mf-caption-arrive {
    from {opacity:0;transform:translate3d(0,42px,0);}
    to {opacity:1;transform:none;}
  }
  @keyframes mf-art-arrive {
    from {opacity:0;transform:translate3d(0,42px,0) scale(.975);}
    to {opacity:1;transform:none;}
  }
}
html body.mf-site.mf-polish.mf-cinema-ready .art-card:focus-within :is(.mf-cinema-surface,.art-info) {
  animation:none!important;opacity:1!important;
}
@media (forced-colors:active),print {.mf-cinema-shadow {display:none;}}
@media print {
  html body.mf-site.mf-polish.mf-cinema-ready .art-card .art-info {animation:none!important;transform:none!important;opacity:1!important;}
}
