/* Cenário original MachineCuts: cidade litorânea, anoitecer e reflexos.
   Sem fontes, imagens ou arte de jogos. SVG externo cacheável, sem canvas ou vídeo. */
.abertura { isolation:isolate; background:#140C26; }
.abertura .ceu {
  background-color:#140C26;
  background-image:linear-gradient(90deg,rgba(15,7,31,.96) 0%,rgba(15,7,31,.9) 32%,rgba(15,7,31,.55) 57%,rgba(15,7,31,.06) 100%),url('imagens/cidade-noturna.svg');
  background-size:100% 100%,auto 1100px;
  background-position:center,right top;
  background-repeat:no-repeat;
}
.abertura .sol,.abertura .horizonte { display:none; }
.abertura::after { content:''; position:absolute; inset:auto 0 0; height:110px; pointer-events:none; background:linear-gradient(transparent,#140C26); z-index:0; }
.abertura-texto { text-shadow:0 2px 3px rgba(10,5,22,.8); }
.abertura-texto :is(.btn,.selo-temporada) { text-shadow:none; }
.abertura .sub,.abertura .miudo-claro { color:#FFF4E2; opacity:1; }
.abertura .contagem > div { background:#1B1030; border-color:#A58BAD; }
.abertura .selo-onda { box-shadow:6px 7px 0 #10091F,0 0 35px rgba(255,177,106,.12); }
.abertura .maq-gigante { box-shadow:0 13px 0 #10091F,0 0 75px rgba(242,110,169,.2); }
.topo { background:rgba(16,8,29,.95); border-bottom:1px solid rgba(225,155,205,.2); }
.selo-pagamento { flex-wrap:wrap; max-width:100%; min-width:0; }
.vitrine-produto { background-color:#170C2A; background-image:radial-gradient(ellipse at 100% 0,rgba(137,52,139,.2),transparent 50%),radial-gradient(ellipse at 0 100%,rgba(58,63,124,.22),transparent 55%); }
.parceria { background-color:#211032; background-image:radial-gradient(ellipse at 100% 0,rgba(186,67,142,.17),transparent 56%),linear-gradient(125deg,#160C29,#321443); }
.comparativo { background-color:#100B1B; background-image:radial-gradient(ellipse at 85% 0,rgba(97,49,122,.19),transparent 55%); }
.pagamentos-founder { background-color:#21102F; background-image:radial-gradient(ellipse at 0 70%,rgba(183,69,111,.13),transparent 60%); }
.temporada { isolation:isolate; background:#1E0D30; }
.temporada::before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(20,8,37,.35),rgba(20,8,37,.92) 60%),url('imagens/cidade-noturna.svg') center 48% / cover no-repeat; }
.temporada > * { position:relative; }
.duvidas { background-color:#140B25; background-image:radial-gradient(ellipse at 0 0,rgba(72,37,105,.2),transparent 60%); }
.final { background-color:#321237; background-image:linear-gradient(180deg,rgba(31,11,46,.12),rgba(15,7,29,.96) 78%),url('imagens/cidade-noturna.svg'); background-size:100% 100%,cover; background-position:center,center 54%; color:var(--areia); }
.final h2,.final > p { text-shadow:0 2px 8px #12091E; }
.final .passe { text-shadow:none; }
@media(min-width:1600px) { .abertura .ceu { background-size:100% 100%,cover; background-position:center,center 43%; } }
@media(max-width:860px) {
  .abertura .ceu { background-image:linear-gradient(90deg,rgba(15,7,31,.91),rgba(15,7,31,.62) 65%,rgba(15,7,31,.12)),linear-gradient(180deg,transparent 550px,#140C26 1100px),url('imagens/cidade-noturna.svg'); background-size:100% 100%,100% 100%,auto 1050px; background-position:center,center,64% top; }
  .abertura-lado { isolation:isolate; }
  .abertura-lado::before { content:''; position:absolute; z-index:-1; inset:-45px -24px -60px; border-radius:28px; background:linear-gradient(180deg,#140C26,transparent 25%,rgba(20,12,38,.3) 80%,#140C26),url('imagens/cidade-noturna.svg') 74% center / auto 100% no-repeat; opacity:.85; pointer-events:none; }
  .temporada::before { background-image:linear-gradient(180deg,rgba(20,8,37,.26),rgba(20,8,37,.95) 62%),url('imagens/cidade-noturna.svg'); background-position:center,center; }
}
@media(max-width:480px) { .abertura .ceu { background-image:linear-gradient(90deg,rgba(15,7,31,.88),rgba(15,7,31,.7)),linear-gradient(180deg,transparent 550px,#140C26 1100px),url('imagens/cidade-noturna.svg'); background-size:100% 100%,100% 100%,auto 850px; background-position:center,center,65% top; } .abertura-lado::before { inset:-30px -18px -45px; } }
@media(max-width:359px) {
  .topo { gap:8px; padding-inline:12px; }
  .topo .marca { font-size:16px; gap:6px; }
  .topo .marca img { width:28px; height:28px; }
  .topo-contagem small { font-size:10px; }
  .topo-contagem b { font-size:17px; }
  .pagamentos-grade article { min-width:0; }
  .pagamentos-grade article strong { font-size:36px; overflow-wrap:anywhere; }
}
