/* Máscara sazonal: todas as regras dependem de data-season e da rota pública. */
html[data-season="halloween"] body.seasonal-public {
  background: #100915;
}
html[data-season="halloween"] body.seasonal-public .hero {
  background-image:
    linear-gradient(0deg, #100915 0%, #10091500 46%),
    linear-gradient(90deg, #100915f5 0%, #100915bd 28%, #10091534 66%, transparent 100%),
    var(--hero);
}
html[data-season="halloween"] body.seasonal-public .home-main,
html[data-season="halloween"] body.seasonal-public .catalog-page,
html[data-season="halloween"] body.seasonal-public footer {
  background: radial-gradient(ellipse at 0% 30%, #5c214326, transparent 42%),
    radial-gradient(ellipse at 100% 75%, #d25a0a14, transparent 38%), #100915;
}
html[data-season="halloween"] body.seasonal-public .btn:not(.glass),
html[data-season="halloween"] body.seasonal-public .trailer-play svg {
  background: linear-gradient(135deg, #ff9e19, #ec4e0f);
  box-shadow: 0 0 22px #ec650b66;
}
html[data-season="halloween"] body.seasonal-public .btn:not(.glass):hover {
  background: #ffac38;
}
html[data-season="halloween"] body.seasonal-public header nav a.active:after,
html[data-season="halloween"] body.seasonal-public .hero-dots .selected,
html[data-season="halloween"] body.seasonal-public .hero-note > span {
  background: #ff8b20;
}
html[data-season="halloween"] body.seasonal-public .eyebrow.purple,
html[data-season="halloween"] body.seasonal-public .text-button,
html[data-season="halloween"] body.seasonal-public .section-head a:hover {
  color: #ff9b42;
}
html[data-season="halloween"] body.seasonal-public .chip.selected,
html[data-season="halloween"] body.seasonal-public .card:hover .card-art {
  border-color: #ec7b29;
  box-shadow: 0 0 22px #f1781933;
}
html[data-season="halloween"] body.seasonal-public .studio-banner {
  border-color: #f5883355;
  background: radial-gradient(ellipse at 90% 90%, #dd66232b, transparent 65%), #1a101e;
}
html[data-season="halloween"] body.seasonal-public .hero-note::after {
  content: "✦ ESPECIAL HALLOWEEN";
  color: #ff9b42;
  letter-spacing: 1px;
  margin-left: 10px;
}
.seasonal-frame {
  position: fixed;
  inset: 0;
  z-index: 8;
  overflow: hidden;
  pointer-events: none;
}
.seasonal-frame i {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: .9;
}
.seasonal-frame .web {
  top: 0;
  width: clamp(95px, 14vw, 230px);
  aspect-ratio: 1;
  background-image: url('/themes/halloween-web.svg');
}
.seasonal-frame .web-left { left: 0; }
.seasonal-frame .web-right { right: 0; transform: scaleX(-1); }
.seasonal-frame .pumpkin {
  bottom: 0;
  width: clamp(125px, 17vw, 265px);
  aspect-ratio: 1.15;
  background-image: url('/themes/halloween-pumpkin.svg');
}
.seasonal-frame .pumpkin-left { left: 0; }
.seasonal-frame .pumpkin-right { right: 0; transform: scaleX(-1); }
@media (max-width: 760px) {
  .seasonal-frame .web { width: 95px; opacity: .55; }
  .seasonal-frame .pumpkin { width: 100px; opacity: .5; }
  html[data-season="halloween"] body.seasonal-public .hero {
    background-image: linear-gradient(0deg, #100915 0%, #10091500 50%),
      linear-gradient(90deg, #100915c9, #10091524), var(--hero);
  }
}
@media (prefers-reduced-transparency: reduce) {
  .seasonal-frame i { opacity: .65; }
}
