/* Extension of the approved midnight arcade, scoped to standard build pages.
   Variance 5 / motion 2 / density 5. No pricing, forms or checkout behavior. */
body.product-halloween {
  --night:#100c20; --deep:#0b0918; --paper:#fff0c9; --orange:#ff8c27;
  --mint:#65ecae; --muted:#c9bedb; --line:#403353;
  --gama:#ffbd76; --gama-ink:#201207; --gama-soft:#2c201d; --gama-edge:#a57949;
  --sh-bg:#100c20; --sh-surf:#171026; --sh-surf-2:#20172e; --sh-surf-3:#2c213a;
  --sh-text:#fff4de; --sh-text-2:#e2d7ed; --sh-text-3:#c9bedb;
  --sh-line:#403353; --sh-line-2:#70587f; --sh-line-3:#a08ab0;
  --sh-accent:var(--gama); --sh-accent-hover:var(--gama); --sh-accent-dim:var(--gama-soft);
  --sh-ok:#65ecae; --sh-warn:#ffcf76; --sh-err:#ff9292;
  background:var(--night); color:var(--sh-text); color-scheme:dark;
  scrollbar-color:#70587f var(--night);
}
body.product-halloween[data-product-gama="advanced"] { --gama:#8ccfff; --gama-ink:#0b1b2c; --gama-soft:#17283c; --gama-edge:#5f99bf; }
body.product-halloween[data-product-gama="godlike"] { --gama:#e4b3ff; --gama-ink:#241331; --gama-soft:#2d1c3c; --gama-edge:#ad7dc7; }
body.product-halloween[data-product-gama="enthusiast"] { --gama:#a8eb8a; --gama-ink:#14220e; --gama-soft:#1c2b21; --gama-edge:#7ca468; }
body.product-halloween[data-product-gama="workstation"] { --gama:#c8b8ff; --gama-ink:#1e1538; --gama-soft:#26203e; --gama-edge:#9789c0; }
body.product-halloween[data-product-gama="gorilightning"] { --gama:#87e6f5; --gama-ink:#0a2429; --gama-soft:#132b35; --gama-edge:#5babb8; }
body.product-halloween main { padding:0; margin:0; position:relative; isolation:isolate; background:var(--night); }
body.product-halloween main::before {
  content:""; position:absolute; z-index:-1; inset:0 0 auto; height:940px;
  background:linear-gradient(180deg,rgba(16,12,32,.69),#100c20 95%),
    url('/assets/halloween-product-20261022/jungle.webp') center top / cover no-repeat;
  pointer-events:none;
}
body.product-halloween .pp-wrap { max-width:1380px; }
body.product-halloween .pp-crumb { color:var(--muted); padding-block:20px; }
body.product-halloween .pp-crumb a { color:var(--muted); }
body.product-halloween .pp-crumb .cur { color:var(--paper); }
body.product-halloween .pp-main { background:transparent; padding-bottom:56px; }
body.product-halloween .pp-grid { gap:36px; }
body.product-halloween .pp-gal-main { border:1px solid var(--gama-edge); border-radius:4px; padding:10px; background:var(--deep); }
body.product-halloween .pp-img-tag { border-radius:4px; }
body.product-halloween .pp-img-tag.tag-ram { background:#20172e; }
body.product-halloween .pp-img-tag.tag-ram .sub { color:#e4d4f4; }
body.product-halloween .pp-thumb { border-radius:4px; }
body.product-halloween .pp-buy {
  background:var(--sh-surf); padding:24px; border-radius:4px;
  border:1px solid var(--line); gap:18px;
}
body.product-halloween .pp-world { display:flex; align-items:center; gap:16px; min-width:0; }
body.product-halloween .pp-world-name { font:700 clamp(27px,3vw,38px)/1.05 Pixelify,monospace; color:var(--gama); }
body.product-halloween .pp-world-portrait {
  display:block; width:64px; height:64px; flex:none;
  background-image:url('/assets/halloween-product-20261022/portraits.webp');
  background-size:500% auto; background-repeat:no-repeat; background-position-y:68%;
}
body.product-halloween .pp-world-portrait-0 { background-position-x:0%; }
body.product-halloween .pp-world-portrait-1 { background-position-x:25%; }
body.product-halloween .pp-world-portrait-2 { background-position-x:50%; }
body.product-halloween .pp-world-portrait-3 { background-position-x:75%; }
body.product-halloween .pp-world-portrait-4 { background-position-x:100%; }
body.product-halloween .pp-world-lightning {
  background-image:url('/assets/halloween-product-20261022/lighting.webp');
  background-size:cover; background-position:center;
}
body.product-halloween .pp-title { font-size:clamp(26px,2.6vw,34px); color:var(--paper); line-height:1.18; }
body.product-halloween .pp-gama-link { color:var(--gama); text-underline-offset:4px; }
body.product-halloween .pp-desc { color:var(--sh-text-2); font-size:14px; line-height:1.75; }
body.product-halloween .pp-meta { color:var(--muted); }
body.product-halloween .pp-apt { background:var(--deep); border-color:var(--line); color:var(--sh-text-2); border-radius:4px; }
/* Capabilities are a readable group, not a wall of tiny button-like chips. */
body.product-halloween .pp-apts {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px;
  margin:2px 0; padding:14px 0; border-block:1px solid var(--line);
}
body.product-halloween .pp-apt {
  display:flex; align-items:center; gap:10px; min-width:0; min-height:32px;
  padding:0; border:0; background:none; color:var(--sh-text-2);
  font-size:13px; font-weight:600; line-height:1.4;
}
body.product-halloween .pp-apt:last-child:nth-child(odd) { grid-column:1 / -1; }
body.product-halloween .pp-apt svg {
  flex:none; width:32px; height:32px; padding:7px; border-radius:4px;
  background:var(--gama-soft); color:var(--gama);
}
body.product-halloween .pp-price-box { background:var(--deep); border:0; border-radius:4px; padding:16px; }
body.product-halloween .pp-price-row { border-radius:4px; background:var(--sh-surf-2); }
body.product-halloween .pp-price-row .val { font-variant-numeric:tabular-nums; }
body.product-halloween .pp-price-row-transfer { background:#302019; box-shadow:inset 0 0 0 1px #ad7449; }
body.product-halloween .pp-price-row-transfer .val { background:none; color:#ffbd76; font-size:clamp(22px,2.1vw,28px); }
body.product-halloween .pp-price-row-transfer .pp-transfer-discount-note { color:#f1d5bf; }
body.product-halloween .pp-price-row .chip-dcto { background:#ffbd76; color:#201207; }
body.product-halloween :is(.pp-mod,.pp-addon,.pp-log,.pp-share,.pp-qty,.pp-btn,.gs-mbar-btn) { border-radius:4px; }
body.product-halloween .pp-mod:focus-within,
body.product-halloween .pp-addon:focus-within { outline:3px solid var(--gama); outline-offset:3px; }
body.product-halloween .pp-mod.sel { background:var(--gama-soft); }
body.product-halloween .pp-addon:has(input:checked) .pp-addon-box::after { border-color:var(--gama-ink); }
body.product-halloween :is(.pp-btn,.gs-mbar-btn) { background:var(--gama); color:var(--gama-ink); box-shadow:none; font-weight:800; }
body.product-halloween :is(.pp-btn,.gs-mbar-btn):hover { background:var(--gama); filter:brightness(1.06); box-shadow:none; }
body.product-halloween :is(.pp-btn,.gs-mbar-btn):disabled { opacity:.45; filter:grayscale(.5); }
body.product-halloween .pp-price-box :is(.pp-mp-cta,.pp-asesoria,.pp-mixed-disclosure) { border-radius:4px; }
body.product-halloween .pp-section { background:var(--night); border-color:var(--line); padding-block:48px; }
body.product-halloween .pp-section h2 { font:700 clamp(28px,3vw,38px)/1.15 Pixelify,monospace; color:var(--paper); letter-spacing:0; }
body.product-halloween .pp-section h2 svg { color:var(--gama); }
body.product-halloween :is(.pp-spec-card,.pp-trust-card,.pp-xsell-card,.pp-review-card) { background:var(--sh-surf); border-color:var(--line); border-radius:4px; }
body.product-halloween .pp-spec-card .ic { color:var(--gama); background:var(--gama-soft); }
/* Eight standard components form two balanced rows; content remains in DOM order. */
body.product-halloween .pp-specs-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; align-items:stretch; }
body.product-halloween .pp-spec-card {
  min-width:0; min-height:176px; padding:22px; gap:8px;
  background:var(--sh-surf); border-color:var(--line);
}
body.product-halloween .pp-spec-card .top { display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:12px; align-items:center; margin-bottom:8px; }
body.product-halloween .pp-spec-card .top .ic { width:40px; height:40px; border-radius:4px; color:var(--gama); background:var(--gama-soft); }
body.product-halloween .pp-spec-card .top .ic svg { width:20px; height:20px; }
body.product-halloween .pp-spec-card .top .lbl {
  color:var(--sh-text-2); font-size:13px; line-height:1.35; font-weight:600;
  text-transform:none; letter-spacing:0; border-bottom:0; width:fit-content;
}
body.product-halloween .pp-spec-card .top .lbl::after { width:15px; height:15px; margin-left:5px; font-size:10px; }
body.product-halloween .pp-spec-card .top .brand-logo { height:28px; padding:5px 7px; margin:0; background:#fff; border-radius:4px; box-shadow:none; }
body.product-halloween .pp-spec-card .top .brand-logo img { height:18px; max-width:48px; opacity:1; }
body.product-halloween .pp-spec-card .modelo { font-size:19px; font-weight:700; line-height:1.35; overflow-wrap:anywhere; }
body.product-halloween .pp-spec-card.branded .modelo { font-size:23px; }
body.product-halloween .pp-spec-card .marca { color:var(--muted); font-size:12px; letter-spacing:.02em; line-height:1.4; }
body.product-halloween .pp-spec-card .detalle { font-size:14px; line-height:1.5; margin-top:0; }
body.product-halloween .pp-spec-card.branded::before,
body.product-halloween .pp-spec-card.branded::after { display:none; }
body.product-halloween .pp-spec-card:hover { border-color:var(--gama-edge); }
body.product-halloween .pp-spec-card .lbl:focus-visible { outline:3px solid var(--gama); outline-offset:4px; }
/* Benchmarks: original game marks, a single title, and actual FPS figures.
   No percentage-like bars: the supplied figures are estimates, not progress. */
body.product-halloween .pp-bench-grid { grid-template-columns:minmax(0,1fr) 280px; gap:20px; }
body.product-halloween .pp-bench-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.product-halloween .pp-bench-card {
  grid-template-columns:128px minmax(0,1fr); gap:16px; padding:16px;
  min-width:0; min-height:154px; background:var(--sh-surf);
  border:1px solid var(--line); border-radius:4px; box-shadow:none;
  transition:border-color .15s ease;
}
body.product-halloween .pp-bench-card:hover { transform:none; border-color:var(--gama-edge); box-shadow:none; }
body.product-halloween .pp-bench-card::before {
  width:100%; opacity:.10;
  background:url('/assets/halloween-product-20261022/jungle.webp') center / cover no-repeat;
}
body.product-halloween .pp-bench-cover,
body.product-halloween .pp-bench-cover.has-logo {
  aspect-ratio:auto; width:128px; height:96px; padding:0;
  background:none; border-radius:0; box-shadow:none; overflow:visible;
  align-items:center; justify-content:center;
}
body.product-halloween .pp-bench-cover::after,
body.product-halloween .pp-bench-cover-label { display:none; }
body.product-halloween .pp-bench-cover-img {
  width:100%; height:100%; max-width:none; max-height:none;
  object-fit:contain; filter:none;
}
body.product-halloween .pp-bench-cover:not(.has-logo) { display:none; }
body.product-halloween .pp-bench-card:has(.pp-bench-cover:not(.has-logo)) { grid-template-columns:1fr; }
body.product-halloween .pp-bench-info {
  display:grid; grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"title fps" "meta meta" "link link";
  gap:10px 12px; align-items:center;
}
body.product-halloween .pp-bench-game-name {
  grid-area:title; font-size:16px; line-height:1.3; text-transform:none;
  color:var(--paper); overflow-wrap:anywhere;
}
body.product-halloween .pp-bench-game-meta {
  grid-area:meta; flex-wrap:wrap; gap:6px; margin:0; letter-spacing:0;
}
body.product-halloween .pp-bench-game-meta :is(.res,.cal) {
  font:600 11px/1.4 Inter,sans-serif; letter-spacing:0; text-transform:none;
  color:var(--sh-text-2); background:var(--deep); box-shadow:none; padding:3px 7px;
}
body.product-halloween .pp-bench-bars { grid-area:fps; }
body.product-halloween .pp-bench-pill {
  display:flex; flex-direction:column-reverse; align-items:flex-end; gap:5px;
  padding:0; min-height:0; border-radius:0; background:none; overflow:visible;
  font-family:'Space Grotesk',sans-serif; letter-spacing:0; text-transform:none;
}
body.product-halloween .pp-bench-pill::before { display:none; animation:none; }
body.product-halloween .pp-bench-pill > .val { font-size:26px; font-weight:700; line-height:1.1; color:var(--paper); white-space:nowrap; }
body.product-halloween .pp-bench-pill > .lbl { font-size:11px; font-weight:600; line-height:1.3; color:var(--muted); }
body.product-halloween .pp-bench-more {
  grid-area:link; margin-top:0!important; min-height:28px; width:fit-content;
  color:var(--gama)!important; line-height:1.4; text-underline-offset:4px;
}
body.product-halloween .pp-bench-more:hover { text-decoration:underline!important; }
body.product-halloween .pp-bench-video { border:1px solid var(--line); border-radius:4px; box-shadow:none; background:var(--sh-surf); }
@media(max-width:1100px) {
  body.product-halloween .pp-bench-grid { grid-template-columns:1fr; }
  body.product-halloween .pp-bench-video { max-width:480px; }
}
@media(max-width:900px) {
  body.product-halloween .pp-bench-list { grid-template-columns:1fr; }
}
@media(max-width:600px) {
  body.product-halloween .pp-bench-card { grid-template-columns:96px minmax(0,1fr); gap:12px; padding:12px; min-height:150px; }
  body.product-halloween .pp-bench-cover,
  body.product-halloween .pp-bench-cover.has-logo { width:96px; height:88px; }
  body.product-halloween .pp-bench-info { gap:8px; }
  body.product-halloween .pp-bench-game-name { font-size:15px; }
  body.product-halloween .pp-bench-pill > .val { font-size:22px; }
  body.product-halloween .pp-bench-more { min-height:44px; }
}
@media(max-width:360px) {
  body.product-halloween .pp-bench-card { grid-template-columns:80px minmax(0,1fr); gap:10px; }
  body.product-halloween .pp-bench-cover,
  body.product-halloween .pp-bench-cover.has-logo { width:80px; height:80px; }
  body.product-halloween .pp-bench-info { grid-template-areas:"title title" "meta fps" "link link"; }
  body.product-halloween .pp-bench-pill > .val { font-size:20px; }
}
body.product-halloween .pp-xsell-img { aspect-ratio:1; background:var(--deep); }
body.product-halloween .pp-xsell-img img { object-fit:contain; }
body.product-halloween .pp-gloss-pop { background:var(--sh-surf-2); }
body.product-halloween .gs-mbar { background:var(--deep); border-top-color:var(--gama-edge); }
body.product-halloween .home-snapshot .footer-scene img { object-fit:cover; }
body.product-halloween ::selection { color:var(--gama-ink); background:var(--gama); }
body.product-halloween :is(input,textarea) { caret-color:var(--gama); }
body.product-halloween :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--gama); outline-offset:4px; }
/* Keep headings/prices/components readable; Pixelify is reserved for range and section titles. */
@media(max-width:1000px) {
  body.product-halloween .pp-grid { grid-template-columns:1fr; gap:24px; }
  body.product-halloween .pp-buy { padding:22px; }
  body.product-halloween main::before { height:700px; }
}
@media(max-width:1100px) {
  body.product-halloween .pp-specs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  body.product-halloween .pp-wrap { padding-inline:18px; }
  body.product-halloween .pp-buy { padding:18px; }
  body.product-halloween .pp-crumb { padding-block:10px; background:var(--night); }
  body.product-halloween .pp-gal-main { padding:7px; }
  body.product-halloween .pp-img-tags { left:18px; top:18px; }
  body.product-halloween .pp-world-portrait { width:52px; height:52px; }
  body.product-halloween .pp-title { font-size:26px; }
  body.product-halloween .pp-price-box { padding:12px; }
  body.product-halloween .pp-price-row { padding:12px; gap:8px; }
  body.product-halloween .pp-price-row .lbl { font-size:12.5px; flex-wrap:wrap; }
  body.product-halloween .pp-price-row .val { font-size:17px; }
  body.product-halloween .pp-price-row-transfer .val { font-size:24px; }
  body.product-halloween .pp-section { padding-block:36px; }
  body.product-halloween .pp-specs-grid { grid-template-columns:1fr; gap:12px; }
  body.product-halloween .pp-spec-card { min-height:0; padding:20px; }
  body.product-halloween .pp-spec-card .modelo { font-size:19px; }
  body.product-halloween .pp-spec-card.branded .modelo { font-size:22px; }
  body.product-halloween .pp-apts { gap:12px; }
  body.product-halloween .pp-apt { font-size:12.5px; gap:8px; }
}
@media(max-width:380px) {
  body.product-halloween .pp-buy { padding:14px; }
  body.product-halloween .pp-price-row-transfer .val { flex-basis:100%; text-align:right; }
  body.product-halloween .gs-mbar { gap:8px; padding-inline:10px; }
  body.product-halloween .gs-mbar-btn { padding-inline:9px; font-size:12px; }
}
@media(max-width:360px) {
  body.product-halloween .pp-apts { grid-template-columns:1fr; gap:10px; }
}
@media(prefers-reduced-motion:reduce) {
  body.product-halloween main *,body.product-halloween main *::before,body.product-halloween main *::after {
    animation:none!important; transition:none!important; scroll-behavior:auto!important;
  }
}
