@font-face{font-family:SJPixel;src:url('/assets/press-start-2p.ttf') format('truetype');font-display:swap}
:root{--night:#121036;--grid:#1d1b4a;--panel:#17153f;--cream:#fff3c4;--gold:#ffe16a;--pink:#ed4c87;--cyan:#7ee6de;--blue:#1682c5}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--cream);background-color:var(--night);background-image:linear-gradient(90deg,#1d1b4a00 75%,var(--grid) 75%),linear-gradient(var(--night) 75%,var(--grid) 75%);background-size:8px 8px;font:17px/1.5 Arial,Helvetica,sans-serif}
button,a{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
img{max-width:100%;display:block}
.site{min-height:100vh;overflow:hidden}
.pixel{font-family:SJPixel,monospace}
.shell{width:min(100% - 48px,1320px);margin-inline:auto}
.header{background:#17153ff0;border-bottom:3px solid var(--blue);box-shadow:0 4px 0 #090822}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.header-mark{font:9px SJPixel,monospace;color:var(--cyan)}
.nav{display:flex;align-items:center;gap:30px;font:9px/1.5 SJPixel,monospace}
.nav a:hover,.footer a:hover{color:var(--gold)}
.top-play{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;color:var(--cream);background:transparent;border:2px solid var(--cyan);font:9px SJPixel,monospace;white-space:nowrap}
.top-play:hover{color:var(--gold);border-color:var(--gold)}.cta:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--pink)}
.hero{padding-bottom:24px}
.hero-stage{height:min(68vw,680px);min-height:420px;position:relative;overflow:hidden;background:#130b2d}
.hero-stage::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 28% 45% at 82% 47%,#54a7ff18,transparent 85%),radial-gradient(ellipse 35% 60% at 52% 80%,#ff3ca212,transparent 90%);mix-blend-mode:screen}
.hero-stage::after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(transparent,#121036b8);pointer-events:none}
.hero-stage>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:brightness(1.035) contrast(1.015)}
.hero-brand{position:absolute;z-index:1;left:clamp(24px,5vw,84px);top:clamp(20px,2.5vw,40px);display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:25%}
.hero-brand p{margin:0;color:#fff3c4;font:clamp(8px,.92vw,13px)/1.5 SJPixel,monospace;text-shadow:2px 2px 0 #1a0b34}
.hero-brand>img{width:min(100%,300px);height:auto;filter:drop-shadow(5px 6px 0 #1a0b34)}
.hero-brand .cta{margin-top:0;min-height:52px;font-size:9px}
.hero-message{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:5vw;align-items:center;padding-block:46px 32px}
.hero-message-action{max-width:550px;justify-self:end}
.hero-message-action p{font-size:19px;color:#dfebf6;line-height:1.55;margin-bottom:24px}
.eyebrow{margin:0 0 22px;color:var(--cyan);font:9px/1.8 SJPixel,monospace}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:SJPixel,monospace}
h1{font-size:clamp(24px,2.8vw,42px);line-height:1.42;letter-spacing:-1px;margin-bottom:0;text-shadow:4px 4px 0 #090822}
h1 em{font-style:normal;color:var(--gold)}
.cta{display:inline-flex;align-items:center;justify-content:center;min-height:64px;padding:14px 22px;border:3px solid var(--cream);background:var(--gold);color:var(--night);box-shadow:6px 6px 0 var(--pink);font:11px/1.5 SJPixel,monospace;text-align:center;transition:transform .15s,box-shadow .15s}
.section{padding-block:68px 76px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:27px}
.section h2{font-size:clamp(20px,2.6vw,34px);line-height:1.48;margin:0}
.section-head p{color:#d6e5f0;max-width:450px;margin:0}
.world-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.world-card{min-width:0;background:#17153ff2;border:2px solid #5b79aa;box-shadow:5px 5px 0 #090822}
.world-image{position:relative;aspect-ratio:1.56;overflow:hidden}
.world-image img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.world-image span{position:absolute;top:9px;left:9px;padding:8px;background:var(--gold);color:var(--night);font:8px SJPixel,monospace}
.world-info{padding:15px 14px 17px}
.world-info h3{font-size:10px;line-height:1.55;min-height:47px;margin-bottom:10px}
.world-info a{display:inline-block;color:var(--cyan);border-bottom:2px solid var(--cyan);font:8px/1.6 SJPixel,monospace;padding-bottom:4px}
.world-info a:hover{color:var(--gold);border-color:var(--gold)}
.feature{border-top:3px solid #33487a}
.feature-inner{display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);align-items:center;gap:5vw}
.top-ten-art{display:flex;align-items:center;justify-content:center;min-height:270px;background:#17153f;border:4px solid var(--gold);box-shadow:9px 9px 0 var(--pink);color:var(--gold);font:clamp(52px,10vw,130px)/1 SJPixel,monospace;text-shadow:6px 6px 0 var(--pink);white-space:nowrap}
.top-ten-art span{text-align:center;line-height:1.18}
.feature-copy h2{margin-bottom:18px}
.feature-copy p{color:#d6e5f0;max-width:620px;margin-bottom:15px}
.text-link{display:inline-block;margin-top:9px;color:var(--gold);font:9px/1.7 SJPixel,monospace;border-bottom:2px solid var(--gold);padding-bottom:4px}
.text-link:hover{color:var(--cyan);border-color:var(--cyan)}
.hint{font-size:13px;color:#b8cce4!important;margin-top:13px}
.reward .feature-inner{grid-template-columns:minmax(0,.65fr) minmax(0,.35fr)}
.reward-art{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;max-width:300px;justify-self:center;width:100%;background:var(--gold);border:10px solid var(--pink);box-shadow:10px 10px 0 #090822;color:var(--night);transform:rotate(5deg)}
.reward-art b{font:clamp(54px,7vw,92px)/1 SJPixel,monospace}
.reward-art span{font:10px SJPixel,monospace;margin-top:12px}
.reward-status{font-weight:700;color:var(--cream)!important}
.footer{border-top:3px solid var(--blue);background:#17153ff0;padding-block:25px}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font:9px/1.7 SJPixel,monospace}
.footer small{color:#b8cce4;font:13px Arial,Helvetica,sans-serif}
@media(max-width:1000px){.nav{display:none}.hero-stage{min-height:0;height:auto;aspect-ratio:1672/941}.hero-message{grid-template-columns:1fr;gap:22px}.hero-message-action{justify-self:start}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-inner{gap:35px}}
@media(max-width:650px){.shell{width:min(100% - 32px,560px)}.header{display:none}.hero-stage{aspect-ratio:1672/941}.hero-stage>img{object-fit:contain}.hero-brand{left:13px;top:13px;gap:4px;max-width:26%}.hero-brand p{font:7px/1.4 SJPixel,monospace;white-space:nowrap}.hero-brand>img{width:88px;max-width:100%}.hero-brand .cta{display:none}.hero-message{padding-block:26px 10px;gap:8px}.hero-message-action p{font-size:16px;margin-bottom:18px}.eyebrow{font-size:7px;margin-bottom:11px}h1{font-size:clamp(22px,6.1vw,31px);line-height:1.38;margin-bottom:12px}.cta{width:100%;min-height:54px;font-size:9px}.section{padding-block:48px 54px}.section-head{display:block}.section h2{font-size:21px}.section-head p{font-size:15px;margin-top:14px}.world-grid{gap:10px}.world-info{padding:10px 9px 12px}.world-info h3{font-size:7px;min-height:54px}.world-info a{font-size:6px}.world-image span{font-size:6px;padding:6px}.feature-inner,.reward .feature-inner{grid-template-columns:1fr}.top-ten-art{min-height:170px;font-size:64px}.reward-art{min-height:190px;max-width:210px;grid-row:1}.feature-copy h2{margin-bottom:12px}.footer-inner{display:block}.footer small{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta,.top-play{transition:none}}

/* Hero-only revision: keep the original art and place the logo clear of its characters. */
.hero-stage{height:auto;min-height:0;aspect-ratio:1672/941}
.hero-stage::before{
  background:radial-gradient(ellipse 26% 38% at 83% 51%,rgba(84,167,255,.21),transparent 85%),radial-gradient(ellipse 39% 45% at 73% 70%,rgba(75,150,255,.10),transparent 88%);
  opacity:.46;
  animation:tv-light 9.7s ease-in-out infinite;
}
.hero-stage>img{object-fit:cover;object-position:center}
.hero-brand{z-index:2;left:clamp(16px,1.2vw,24px);top:clamp(16px,2vw,32px);max-width:none}
.hero-brand>img{width:min(24vw,390px);max-width:none}
.hero-reward-link{display:inline-block;margin-top:16px;color:var(--cyan);font:8px/1.7 SJPixel,monospace;border-bottom:2px solid var(--cyan);padding-bottom:3px}
.hero-reward-link:hover{color:var(--gold);border-color:var(--gold)}
@keyframes tv-light{
  0%,100%{opacity:.38}
  11%{opacity:.61}
  19%{opacity:.46}
  34%{opacity:.68}
  42%{opacity:.48}
  59%{opacity:.64}
  68%{opacity:.40}
  84%{opacity:.66}
  93%{opacity:.45}
}
@media(max-width:650px){
  .hero-stage{aspect-ratio:auto;display:flex;flex-direction:column-reverse}
  .hero-stage>img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
  .hero-brand{position:relative;left:auto;top:auto;gap:3px;width:100%;padding:13px 16px 5px;background:#130b2d}
  .hero-brand p{font-size:8px}
  .hero-brand>img{width:clamp(190px,58vw,260px);max-width:100%;margin-left:-4px}
  .hero-stage::before{background:radial-gradient(ellipse 27% 26% at 83% 73%,rgba(84,167,255,.21),transparent 85%),radial-gradient(ellipse 42% 32% at 72% 84%,rgba(75,150,255,.10),transparent 88%)}
}
@media(prefers-reduced-motion:reduce){.hero-stage::before{animation:none;opacity:.46}}
.sprite-run{width:100%;height:160px;overflow:hidden;position:relative;border-block:1px solid #334b78}
.sprite-run canvas{display:block;width:100%;height:100%;image-rendering:pixelated}
@media(max-width:650px){.sprite-run{height:112px}}
.hero-reward-link{display:table;width:max-content;max-width:100%}
.hero-visual{position:absolute;inset:0;overflow:hidden}
.hero-visual>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:translateY(var(--parallax-y,0px)) scale(1.08);transform-origin:center;will-change:transform}
.hero-stage::before{display:none}
.hero-visual::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 26% 38% at 83% 51%,rgba(84,167,255,.42),transparent 85%),radial-gradient(ellipse 39% 45% at 73% 70%,rgba(75,150,255,.18),transparent 88%);mix-blend-mode:screen;opacity:.50;animation:tv-light 9.7s ease-in-out infinite;transform:translateY(var(--parallax-y,0px)) scale(1.08);transform-origin:center;will-change:transform}
@media(max-width:650px){.hero-visual{position:relative;inset:auto;width:100%;aspect-ratio:1672/941}.hero-visual>img{position:absolute;inset:0}.hero-visual::before{background:radial-gradient(ellipse 27% 37% at 83% 51%,rgba(84,167,255,.42),transparent 85%),radial-gradient(ellipse 42% 45% at 72% 70%,rgba(75,150,255,.18),transparent 88%)}}
@media(prefers-reduced-motion:reduce){.hero-visual>img,.hero-visual::before{transform:none;will-change:auto}.hero-visual::before{animation:none;opacity:.50}}

/* The separate transparent mark floats over the room's purple wall. */
.hero-stage{aspect-ratio:1672/941;display:block}
.hero-visual{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.hero-brand{position:absolute;z-index:3;left:1.2%;top:2%;width:clamp(180px,29vw,420px);padding:0;background:none;gap:7px;align-items:center;text-align:center}
.hero-brand p{font-size:clamp(8px,.84vw,12px);white-space:nowrap}
.hero-brand>img{display:block;width:100%;max-width:100%;margin:0;filter:drop-shadow(3px 5px 2px #1a0b34)}
.hero-brand .cta{position:static;display:inline-flex;width:auto;min-height:44px;margin:0;padding:9px 13px;font-size:8px}
.headline-first{display:block;white-space:nowrap}
h1 em{display:block}
.hero-message h1 em{font-size:.76em;white-space:nowrap}
.hero-visual::before{background:radial-gradient(ellipse 22% 29% at 82% 52%,rgba(116,190,255,.76),transparent 88%),radial-gradient(ellipse 36% 39% at 75% 63%,rgba(71,155,255,.32),transparent 90%);opacity:.63;animation:tv-light-visible 8.3s ease-in-out infinite}
@keyframes tv-light-visible{0%,100%{opacity:.30}9%{opacity:.83}18%{opacity:.45}31%{opacity:.98}39%{opacity:.40}56%{opacity:.90}67%{opacity:.32}78%{opacity:.84}91%{opacity:.46}}
@media(max-width:650px){
  .hero-message h1{font-size:clamp(15px,3.85vw,25px);letter-spacing:-.7px;line-height:1.55}
  .hero-message h1 em{font-size:1em;white-space:normal}
  .hero-stage{aspect-ratio:auto;height:calc(29.6vw + 174px)}
  .hero-visual{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
  .hero-visual>img{object-position:left center}
  .hero-brand{left:2%;top:2%;width:clamp(126px,36vw,205px);gap:3px}
  .hero-brand p{font-size:6px;line-height:1.35}
  .hero-brand>img{width:100%;max-width:100%;margin:0}
  .hero-brand .cta{display:inline-flex;min-height:29px;padding:5px 7px;border-width:2px;box-shadow:3px 3px 0 var(--pink);font-size:6px}
  .hero-visual::before{background:radial-gradient(ellipse 65% 80% at 102% 54%,rgba(116,190,255,.92),transparent 78%),radial-gradient(ellipse 68% 85% at 94% 72%,rgba(71,155,255,.32),transparent 88%)}
}
@media(prefers-reduced-motion:reduce){.hero-visual::before{animation:none;opacity:.56}}

/* Review variant: preserve the entire room and let the blank purple wall taper
   into the original image on narrow screens. This is not the published layout. */
@media(max-width:650px){
  .hero-stage{--hero-top-space:max(0px, calc(225px - 34.6vw));height:calc(56.28vw + var(--hero-top-space));background:#2b1051}
  .hero-visual{background:linear-gradient(90deg,#301257 0%,rgba(48,18,87,.88) 36%,rgba(48,18,87,.06) 78%),url('/assets/season/hero-v5.png') left top/200% auto no-repeat}
  .hero-visual>img{top:auto;bottom:0;width:100%;height:calc(100% - var(--hero-top-space));object-fit:contain;object-position:center;transform:translateY(var(--parallax-y,0px));-webkit-mask-image:linear-gradient(to bottom,transparent,black 26px);mask-image:linear-gradient(to bottom,transparent,black 26px)}
  .hero-brand{width:clamp(176px,45vw,205px);top:2%;left:2%}
  .hero-visual::before{background:radial-gradient(ellipse 25% 36% at 82% calc(52% + var(--hero-top-space) * .48),rgba(116,190,255,.92),transparent 88%),radial-gradient(ellipse 40% 45% at 75% calc(62% + var(--hero-top-space) * .4),rgba(71,155,255,.32),transparent 90%)}
}
@media(max-width:360px){.hero-visual{background-size:auto,300% auto}}
@media(max-width:650px) and (prefers-reduced-motion:reduce){.hero-visual>img{transform:none}}

/* Irregular, bounded screen changes drive the nearby room light. */
.hero-visual::before{animation:none;opacity:var(--tv-level,.56);transition:opacity 110ms linear}
.hero-visual::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:#a5deff;mix-blend-mode:screen;clip-path:polygon(81% 20%,99% 13%,99% 69%,80% 70%);opacity:calc(var(--tv-level,.56) * .21);transition:opacity 110ms linear}
.hero-brand{left:.5%;top:1.5%;width:clamp(158px,24.5vw,350px)}
@media(max-width:650px){
  .hero-brand{left:2%;top:2%;width:clamp(160px,calc(201px - 6.4vw),176px)}
  .hero-visual::after{clip-path:polygon(77% calc(18% + var(--hero-top-space) * .7),99% calc(13% + var(--hero-top-space) * .7),99% 79%,77% 81%)}
}
@media(prefers-reduced-motion:reduce){.hero-visual::before,.hero-visual::after{transition:none;opacity:.56}.hero-visual::after{opacity:.12}}

/* Keep the two headline/action columns apart; stack before either can collide. */
.hero-message{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);column-gap:clamp(80px,7vw,120px)}
.hero-message>div:first-child{min-width:0;padding-right:20px}
.hero-message-action{min-width:0}
@media(max-width:1360px){.hero-message{grid-template-columns:1fr;gap:22px}.hero-message>div:first-child{padding-right:0}.hero-message-action{justify-self:start}}

/* Reward-only review alternative. The approved hero and motion rules above are unchanged. */
.reward{position:relative;overflow:hidden;background:radial-gradient(ellipse 70% 100% at 85% 45%,#3d215f 0%,#211746 58%,#141137 100%)}
.reward::before{content:"✦";position:absolute;right:5%;top:4%;font:clamp(90px,16vw,230px)/1 SJPixel,monospace;color:#7ee6de12;pointer-events:none}
.reward .feature-inner{position:relative;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,6vw,90px)}
.reward .feature-copy h2{font-size:clamp(25px,3.2vw,43px);line-height:1.36;text-shadow:4px 4px 0 #090822}
.reward .feature-copy h2 em{font-style:normal;color:var(--gold)}
.reward-lead{display:inline-block;margin:16px 0 17px!important;padding:12px 14px;color:var(--night)!important;background:var(--gold);box-shadow:5px 5px 0 var(--pink);font:clamp(10px,1.2vw,15px)/1.5 SJPixel,monospace}
.reward-subline{font-size:18px;color:var(--cream)!important}
.reward-ticket{position:relative;min-height:315px;width:min(100%,560px);justify-self:end;display:grid;grid-template-rows:auto 1fr auto;padding:18px 20px;background:var(--gold);border:6px solid var(--cream);color:var(--night);box-shadow:10px 10px 0 var(--pink),18px 18px 0 #090822;transform:rotate(3deg);clip-path:polygon(0 0,100% 0,100% 42%,97% 45%,97% 55%,100% 58%,100% 100%,0 100%,0 58%,3% 55%,3% 45%,0 42%)}
.ticket-top,.ticket-bottom{display:flex;justify-content:space-between;gap:12px;font:clamp(6px,.72vw,9px)/1.5 SJPixel,monospace;letter-spacing:.02em}
.ticket-top{padding-bottom:15px;border-bottom:4px dashed #7c3368}
.ticket-bottom{padding-top:15px;border-top:4px dashed #7c3368}
.ticket-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 0 24px}
.ticket-stars{font:14px SJPixel,monospace;color:var(--pink)}
.ticket-center strong{font:clamp(80px,11vw,142px)/1.1 SJPixel,monospace;text-shadow:5px 6px 0 #ed4c87}
.ticket-center>span:last-child{font:clamp(9px,1.1vw,14px)/1.6 SJPixel,monospace}
@media(max-width:800px){.reward .feature-inner{grid-template-columns:1fr}.reward-ticket{grid-row:1;justify-self:center}.reward .feature-copy{text-align:center}.reward .feature-copy p{margin-inline:auto}.reward .feature-copy h2{font-size:clamp(25px,5.5vw,38px)}}
@media(max-width:650px){.reward-ticket{min-height:230px;padding:12px 14px;border-width:4px;box-shadow:6px 6px 0 var(--pink),11px 11px 0 #090822}.ticket-center{padding:15px 0}.ticket-center strong{font-size:clamp(65px,18vw,100px)}.ticket-center>span:last-child{font-size:clamp(8px,2.4vw,11px)}.ticket-top,.ticket-bottom{font-size:clamp(5px,1.45vw,7px)}.reward .feature-copy h2{font-size:clamp(24px,7vw,31px)}.reward-lead{font-size:9px}.reward-subline{font-size:16px}}

/* Physical arcade coupon direction: warm printed stock, tear-off stub, soft age. */
.reward .ticket-paper{display:grid;grid-template-columns:minmax(0,1fr) 100px;min-height:298px;padding:0;border:0;clip-path:none;border-radius:3px;background:radial-gradient(circle at 22% 18%,#fff8e7,#f5e7ca 72%,#ead5ae);color:#291a49;box-shadow:2px 3px 0 #c0a987,10px 12px 0 #0908229e;transform:rotate(-2.5deg);filter:drop-shadow(1px 2px 0 #b6946e)}
.ticket-paper::before,.ticket-paper::after{content:"";position:absolute;z-index:3;top:0;width:12px;height:100%;pointer-events:none;background:radial-gradient(circle 8px at 0 15px,#211746 7.5px,transparent 8px) 0 0/12px 30px repeat-y}
.ticket-paper::before{left:0}.ticket-paper::after{right:0;transform:rotate(180deg)}
.ticket-main,.ticket-stub{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.ticket-main{padding:24px 12px 22px 26px;background-image:radial-gradient(#7c5d6d25 .7px,transparent 1px),linear-gradient(103deg,transparent 20%,#8f60730d 55%,transparent 57%);background-size:9px 11px,100% 100%}
.ticket-main::before,.ticket-main::after{content:"";position:absolute;left:17px;right:5px;height:2px;background:#8f5a7899;transform:rotate(-.4deg)}
.ticket-main::before{top:17px}.ticket-main::after{bottom:16px}
.ticket-issuer{font:clamp(6px,.8vw,9px)/1.5 SJPixel,monospace;color:#69395e;letter-spacing:.03em}
.ticket-main .ticket-stars{margin:12px 0 0;font:12px SJPixel,monospace;color:#b34f79}
.ticket-main strong{font:clamp(84px,10vw,138px)/1.02 SJPixel,monospace;color:#3a1a57;text-shadow:2px 2px 0 #bc6b85;letter-spacing:-.075em}
.ticket-offer{margin-top:9px;font:clamp(10px,1vw,13px)/1.55 SJPixel,monospace;color:#58275a}
.ticket-strap{margin-top:15px;font:clamp(6px,.72vw,9px)/1.5 SJPixel,monospace;color:#8e416b}
.ticket-stub{gap:18px;padding:14px 10px 14px 9px;border-left:3px dashed #ac7681;background:linear-gradient(92deg,#eee0c4,#f7ecd7 28%,#f6e9ce);font:8px/1.7 SJPixel,monospace;color:#633c64}
.ticket-stub::before,.ticket-stub::after{content:"";position:absolute;z-index:4;left:-10px;width:18px;height:18px;border-radius:50%;background:#211746}.ticket-stub::before{top:-9px}.ticket-stub::after{bottom:-9px}
.ticket-stub b{font:40px/1 Arial,sans-serif;color:#b5597d;text-shadow:1px 1px 0 #9e7280}
@media(max-width:650px){.reward .ticket-paper{grid-template-columns:minmax(0,1fr) 65px;min-height:221px}.ticket-main{padding:20px 5px 20px 19px}.ticket-main::before,.ticket-main::after{left:17px}.ticket-issuer{font-size:5px}.ticket-main strong{font-size:clamp(65px,17vw,92px)}.ticket-offer{font-size:clamp(6px,2vw,9px)}.ticket-strap{font-size:5px}.ticket-stub{gap:12px;font-size:5px}.ticket-stub b{font-size:28px}}

/* October hero review: use the open wall in the original full-width artwork. */
.hero-brand{left:1.1%;top:3%;width:min(29vw,485px);gap:10px}
.hero-brand p{font-size:clamp(10px,1.05vw,16px);line-height:1.5}
.hero-brand>img{width:100%;height:auto}
.hero-brand .cta{min-height:66px;padding:14px 20px;font-size:12px;border-width:3px;box-shadow:6px 6px 0 var(--pink)}
.hero-message .eyebrow{font-size:clamp(14px,1.15vw,18px);line-height:1.65;margin-bottom:20px}
.hero-message-action p{font-size:19px;line-height:1.55}

/* Diffuse light is centered on the TV and spills only onto its nearby furniture. */
.hero-visual::before{background:radial-gradient(ellipse 25% 35% at 84% 48%,rgba(129,185,255,.29),transparent 84%),radial-gradient(ellipse 31% 29% at 77% 65%,rgba(111,165,238,.16),transparent 87%);opacity:var(--tv-level,.55);transition:opacity 2.4s ease-in-out}
.hero-visual::after{background:#a9d9ff;clip-path:polygon(78% 21%,97% 15%,97% 66%,78% 68%);opacity:calc(var(--tv-level,.55) * .055);transition:opacity 2.4s ease-in-out}
@media(max-width:650px){
  .hero-stage{--hero-top-space:max(0px,calc(260px - 34.6vw))}
  .hero-visual{background:linear-gradient(180deg,#2d1051,#301354 55%,#301355)}
  .hero-brand{left:2%;top:2%;width:clamp(205px,54vw,270px);gap:5px}
  .hero-brand p{font-size:8px}
  .hero-brand .cta{min-height:43px;padding:9px 12px;font-size:8px;border-width:2px;box-shadow:4px 4px 0 var(--pink)}
  .hero-message .eyebrow{font-size:clamp(11px,3.1vw,14px);line-height:1.65}
  .hero-message-action p{font-size:16px}
  .hero-visual::before{background:radial-gradient(ellipse 24% 33% at 84% 64%,rgba(129,185,255,.29),transparent 84%),radial-gradient(ellipse 30% 28% at 78% 75%,rgba(111,165,238,.16),transparent 87%)}
  .hero-visual::after{clip-path:polygon(77% 45%,98% 39%,98% 82%,77% 83%)}
}
@media(prefers-reduced-motion:reduce){.hero-visual::before,.hero-visual::after{transition:none}}

/* Place the complete caption, mark, and action inside the marked wall area. */
@media(min-width:651px){
  .hero-stage{aspect-ratio:1672/900}
  .hero-visual>img{object-position:center 40%}
  .hero-brand{left:2.6%;top:3.7%;width:27%;gap:10px}
  .hero-brand p{width:100%;text-align:center}
}

/* A warm screen wash and a small bloom across the adjacent CRT casing. */
.hero-visual::before{
  background:radial-gradient(ellipse 24% 32% at 85% 45%,rgba(255,219,243,.46),transparent 82%),radial-gradient(ellipse 32% 31% at 83% 56%,rgba(235,91,184,.44),transparent 86%),radial-gradient(ellipse 37% 36% at 71% 67%,rgba(132,65,181,.21),transparent 88%);
  opacity:var(--tv-level,.55)
}
.hero-visual::after{
  background:radial-gradient(ellipse 20% 40% at 89% 44%,rgba(255,244,250,.94),rgba(255,174,224,.56) 62%,transparent 100%);
  mix-blend-mode:normal;
  clip-path:none;
  opacity:calc(var(--tv-level,.55) * 1.18)
}
@media(max-width:650px){
  .hero-visual::before{background:radial-gradient(ellipse 22% 31% at 86% 62%,rgba(255,219,243,.46),transparent 82%),radial-gradient(ellipse 29% 29% at 82% 71%,rgba(235,91,184,.44),transparent 86%),radial-gradient(ellipse 36% 30% at 72% 78%,rgba(132,65,181,.21),transparent 88%)}
  .hero-visual::after{background:radial-gradient(ellipse 16% 27% at 87% 64%,rgba(255,244,250,.94),rgba(255,174,224,.56) 62%,transparent 100%)}
}

/* Show the original TV and surrounding room directly from the hero artwork. */
.hero-visual::before,.hero-visual::after{content:none;display:none;animation:none;transition:none}

