/* FenMovies Halloween preview revision, expires 10 November 2026.
   Seasonal ornaments are decorative only: zero pointer interaction or focus impact. */
html:not(.fen-tv) .fen-halloween-web,
html:not(.fen-tv) .fen-halloween-detail,
html:not(.fen-tv) .fen-halloween-source-trim {
  pointer-events:none !important;
  -webkit-user-select:none !important;
  user-select:none !important;
}

/* Delicate 150px corner-web, not a broad overlay: fine radial and curved strands. */
.fen-halloween-web {
  position:absolute;top:0;right:0;
  --fen-web-size:clamp(145px,16vw,190px);
  --fen-spider-top:80px;
  --fen-thread-start:calc(var(--fen-web-size) * .328125);
  --fen-thread-length:calc(var(--fen-spider-top) - var(--fen-thread-start));
  width:var(--fen-web-size);height:178px;
  overflow:hidden;z-index:26;isolation:isolate;
}
.fen-halloween-web-art {
  position:absolute;top:0;right:0;width:100%;height:auto;
  aspect-ratio:320/252;object-fit:contain;object-position:top right;
  opacity:.84;filter:drop-shadow(0 1px 2px rgba(6,5,9,.75));
  transform-origin:100% 0;animation:fen-web-sway 16s ease-in-out infinite;
}
/* Small silk junction (at 73% width / 105 of 320 SVG units) is directly
   above the spider's centre. Deliberately simple, like the photo reference. */
.fen-halloween-thread {
  position:absolute;
  top:var(--fen-thread-start);right:calc(27% - 7px);
  width:14px;height:var(--fen-thread-length);
  transform-origin:50% 0;
  overflow:visible;
  filter:drop-shadow(0 0 .6px rgba(254,247,237,.5));
  animation:fen-thread-stretch 17s cubic-bezier(.43,0,.57,1) infinite;
}
.fen-halloween-hanger {
  position:absolute;top:var(--fen-spider-top);
  right:calc(27% - 22px);width:44px;height:55px;
  transform-origin:50% 0;
  animation:fen-spider-descent 17s cubic-bezier(.43,0,.57,1) infinite;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.85));
}
.fen-halloween-spider {
  display:block;width:44px;height:55px;overflow:visible;
  transform-origin:50% 16%;
  animation:fen-spider-pivot 10s ease-in-out infinite;
}
@keyframes fen-web-sway {
  0%,100%{transform:rotate(-.2deg)}
  50%{transform:rotate(.28deg)}
}
@keyframes fen-spider-descent {
  0%,15%,100%{transform:translateY(0)}
  46%,60%{transform:translateY(34px)}
  82%{transform:translateY(12px)}
}
@keyframes fen-thread-stretch {
  0%,15%,100%{height:var(--fen-thread-length)}
  46%,60%{height:calc(var(--fen-thread-length) + 34px)}
  82%{height:calc(var(--fen-thread-length) + 12px)}
}
@keyframes fen-spider-pivot {
  0%,100%{transform:rotate(-1.8deg)}
  50%{transform:rotate(2deg)}
}

/* Source panel: two warm, dimensional jack-o'-lanterns, with no caption. */
.fen-halloween-source-trim {
  position:relative;display:flex!important;align-items:center;
  justify-content:flex-end;gap:0;width:100%;height:44px;
  margin:0 0 4px!important;overflow:visible;
}
.fen-halloween-source-trim .fen-halloween-pumpkin {
  width:59px;height:45px;object-fit:contain;
  animation:fen-pumpkin-breathe 5s ease-in-out infinite;
}
.fen-halloween-source-trim .fen-halloween-pumpkin.fen-halloween-pumpkin-second {
  width:45px;height:37px;margin-left:-8px;
  opacity:.84;animation-delay:-2.3s;
}

/* Details page: autumn moon and little bat silhouettes in a thin header
   above the breadcrumb and ART, never over a person's face or a control. */
.fen-halloween-detail {
  position:relative;
  display:block;
  height:54px;width:100%;margin:-4px 0 3px;
  overflow:visible;isolation:isolate;
}
.fen-halloween-detail img.fen-halloween-moon {
  position:absolute;top:-19px;right:-6px;
  width:clamp(125px,27vw,205px);height:98px;
  object-fit:contain;object-position:right center;
  opacity:.87;
  filter:drop-shadow(0 0 11px rgba(249,131,54,.16));
  transform-origin:65% 50%;animation:fen-harvest-moon 9s ease-in-out infinite;
}
.fen-halloween-detail::after {
  content:"";position:absolute;right:0;bottom:-1px;
  width:min(210px,35vw);height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,129,70,.24),transparent);
}

/* A seated skeleton: torso above and legs below the precise top edge of
   the feature image; palms rest beside the pelvis. No walk, no opacity fades. */
.fen-detail-shell:has(.fen-halloween-skeleton-rail){position:relative}
.fen-halloween-detail{z-index:10}
.fen-halloween-skeleton-rail {
  position:absolute;top:0;right:clamp(15px,4%,68px);
  display:block;width:clamp(85px,18vw,108px);
  aspect-ratio:120 / 214;height:auto;
  pointer-events:none!important;user-select:none!important;
  z-index:12;opacity:1!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.9)) drop-shadow(0 0 4px rgba(250,226,176,.13));
}
.fen-halloween-skeleton-rail img.fen-halloween-skeleton {
  display:block;width:100%;height:100%;
  object-fit:contain;opacity:1!important;
  filter:none!important;
}

@keyframes fen-harvest-moon{
  0%,100%{opacity:.82;transform:translateY(0)}
  50%{opacity:.96;transform:translateY(-1.5px)}
}
@keyframes fen-pumpkin-breathe{
  0%,100%{filter:drop-shadow(0 0 3px rgba(255,116,25,.20)) brightness(.94)}
  50%{filter:drop-shadow(0 0 10px rgba(255,116,25,.47)) brightness(1.08)}
}
@media(max-width:767px){
  .fen-halloween-web{--fen-web-size:clamp(135px,36vw,165px);--fen-spider-top:76px;height:176px}
  .fen-halloween-web-art{opacity:.88}
  .fen-halloween-source-trim{height:36px;margin-bottom:3px!important}
  .fen-halloween-source-trim .fen-halloween-pumpkin{width:50px;height:39px}
  .fen-halloween-source-trim .fen-halloween-pumpkin.fen-halloween-pumpkin-second{width:38px;height:32px}
  .fen-halloween-detail{height:46px;margin:-5px 0 0}
  .fen-halloween-detail img.fen-halloween-moon{width:clamp(133px,37vw,182px);height:87px;top:-21px;right:-5px}
  .fen-halloween-skeleton-rail{width:clamp(85px,22vw,96px);right:clamp(15px,4%,32px)}
  .fen-halloween-detail{z-index:9}
}
@media(prefers-reduced-motion:reduce){
  .fen-halloween-web-art,.fen-halloween-thread,.fen-halloween-hanger,
  .fen-halloween-spider,.fen-halloween-detail .fen-halloween-moon,.fen-halloween-source-trim .fen-halloween-pumpkin {
    animation:none!important;transform:none!important
  }
}
html.fen-tv .fen-halloween-web,
html.fen-tv .fen-halloween-detail,
html.fen-tv .fen-halloween-source-trim {display:none!important}
