[data-contest-banner][hidden], [data-contest-promo][hidden] { display:none !important; }
.contest-banner { position:relative; z-index:8; width:min(1240px,calc(100% - 32px)); margin:16px auto 18px; display:grid; grid-template-columns:168px minmax(0,1fr) 208px; align-items:center; gap:20px; padding:16px 44px 16px 16px; border-block:1px solid #81333d; border-left:4px solid #ed342f; background:#141014; color:#f6f3f6; font-size:13px; }
.contest-banner-art { position:relative; height:124px; width:168px; }
.contest-banner-art img { position:absolute; height:auto; object-fit:contain; }
.contest-banner-art .contest-banner-ps5 { width:140px; height:124px; left:0; top:0; }
.contest-banner-art .contest-banner-gta { width:90px; right:0; bottom:0; }
.contest-banner-eyebrow { display:block; color:#ff858d; font-size:10px; font-weight:800; margin-bottom:6px; }
.contest-banner-copy { min-width:0; }
.contest-banner-copy strong { display:block; font-family:var(--font-display),sans-serif; font-size:26px; line-height:1.18; font-weight:800; }
.contest-banner-copy strong span { color:#ff7b84; white-space:nowrap; }
.contest-banner-copy p { margin:8px 0; color:#e0dce0; line-height:1.45; }
.contest-banner-copy small { display:block; color:#bcb4bc; font-size:10px; line-height:1.5; }
.contest-banner-actions { display:flex; flex-direction:column; gap:10px; text-align:center; }
.contest-banner .contest-banner-cta { display:flex; min-height:46px; padding:10px 14px; justify-content:center; align-items:center; background:#e42112; border:1px solid #ff6b59; border-radius:6px; color:#fff; font-size:13px; }
.contest-banner .contest-banner-cta:hover { background:#ff3525; }
.contest-banner-actions [data-contest-countdown] { min-height:16px; font-size:11px; color:#d4cbd3; font-variant-numeric:tabular-nums; }
.contest-banner a,.contest-nav { color:#fff; text-decoration:none; font-weight:800; }
.contest-banner button { position:absolute; right:8px; top:8px; width:28px; height:28px; border:0; color:#fff; background:transparent; font-size:22px; cursor:pointer; }
.contest-nav { font-size:12px; white-space:nowrap; }
.contest-nav[data-open="true"]::after { content:""; display:inline-block; width:6px; height:6px; background:#f34379; border-radius:50%; margin-left:6px; }
.contest-promo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:center; position:relative; z-index:2; }
.contest-promo-visual { position:relative; min-width:0; aspect-ratio:1.3; }
.contest-promo-visual .contest-console { width:80%; height:100%; object-fit:contain; }
.contest-promo-visual .contest-logo { position:absolute; right:0; bottom:10%; width:48%; height:auto; object-fit:contain; filter:drop-shadow(0 0 18px #db268c66); }
.contest-promo h2 { font-size:36px; line-height:1.12; margin:10px 0 20px; }
.contest-promo p { color:#c6c4ca; line-height:1.65; }
.contest-promo .contest-cta { display:inline-block; padding:14px 22px; border-radius:6px; background:#e42112; color:white; text-decoration:none; font-weight:800; margin-block:16px; }
.contest-fine { font-size:12px; }
[data-contest-account] { overflow-wrap:anywhere; }
[data-contest-account] h2 { font-size:18px; line-height:1.3; }
[data-contest-account] a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
[data-contest-history] { max-height:390px; overflow:auto; font-size:13px; }
.contest-history-row { padding:12px 0; border-bottom:1px solid #ffffff20; }
.contest-history-row p { margin:4px 0; }
#ccAccess { font-size:13px; line-height:1.6; color:#e5dce0; }
#ccAccess a { color:#ff748a; }
#ccSubmit:disabled { opacity:.5; cursor:not-allowed; }
@media(max-width:900px) and (min-width:641px) {
  .contest-banner { grid-template-columns:120px minmax(0,1fr); gap:12px; }
  .contest-banner-art { width:120px; height:110px; grid-row:1 / 3; }
  .contest-banner-art .contest-banner-ps5 { width:110px; height:110px; }
  .contest-banner-art .contest-banner-gta { width:74px; }
  .contest-banner-actions { grid-column:2; flex-direction:row; align-items:center; flex-wrap:wrap; }
}
@media(max-width:640px) {
  .contest-banner { grid-template-columns:76px minmax(0,1fr); padding:16px 12px 12px; gap:10px; font-size:12px; }
  .contest-banner-art { width:76px; height:104px; }
  .contest-banner-art .contest-banner-ps5 { width:84px; height:104px; left:-8px; }
  .contest-banner-art .contest-banner-gta { width:60px; right:-3px; bottom:1px; }
  .contest-banner-copy { padding-right:12px; }
  .contest-banner-copy strong { font-size:20px; }
  .contest-banner-eyebrow { font-size:9px; }
  .contest-banner-copy p { font-size:11px; margin:6px 0; }
  .contest-banner-actions { grid-column:1 / -1; gap:6px; }
  .contest-promo { grid-template-columns:minmax(0,1fr); gap:10px; }
  .contest-promo-visual { width:min(320px,100%); margin:auto; }
  .contest-promo h2 { font-size:28px; }
  .contest-nav { font-size:10px; }
  .site-header .header-right { gap:8px; }
  .site-header:has(.contest-nav) { gap:8px; padding-inline:16px 10px; }
  .site-header:has(.contest-nav) .brand { font-size:16px; }
  .site-header:has(.contest-nav) .brand small { display:none; }
  .site-header .header-right .panel-link { font-size:0; width:32px; height:32px; min-height:32px; padding:0; gap:0; flex:0 0 32px; justify-content:center; }
  .site-header .header-right .panel-link svg { width:16px; height:16px; }
  .site-header .header-right .live-pill { width:26px; min-height:32px; flex:0 0 26px; margin:0; padding:0; justify-content:center; }
  .site-header .header-right .live-pill::before { content:none; }
  .site-header .header-right .lp-txt { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
}
