:root { --ease-saida: cubic-bezier(.16, 1, .3, 1); --ouro: #e8b84a; --prata: #b9c3d6; --bronze: #c98a4b; --premium: #f5c542; }
.sr-only { position: absolute !important; left: 0; top: 0; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.lp-num, .stat b, .rank-likes, .podium-likes, .velas b { font-variant-numeric: tabular-nums; }

.lp-nav { position: relative; z-index: 20; display: flex; align-items: center; gap: 20px; width: min(1200px, 100% - 40px); margin: 0 auto; padding: max(14px, env(safe-area-inset-top)) 0 10px; }
.lp-marca { display: inline-flex; align-items: center; gap: 10px; color: var(--text); font-size: 17px; font-weight: 800; letter-spacing: -.01em; text-decoration: none; border-radius: 10px; }
.lp-marca img { border-radius: 9px; box-shadow: 0 0 0 1px var(--line); }
.lp-links { display: flex; gap: 4px; margin-left: auto; }
.lp-links a { padding: 10px 12px; border-radius: 10px; color: var(--muted); font-size: 14px; font-weight: 600; text-decoration: none; transition: color .15s, background .15s; }
.lp-links a:hover { color: var(--text); background: var(--blue-soft); }
.lp-acoes { display: flex; align-items: center; gap: 8px; }
.lp-nav .theme-button { position: static; inset: auto; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 12px; background: var(--glass); color: var(--text); cursor: pointer; transition: background .15s, border-color .15s, transform .15s; }
.lp-nav .theme-button:hover { border-color: color-mix(in srgb, var(--blue) 45%, var(--line)); }
.lp-nav .theme-button:active { transform: scale(.94); }
.lp-nav .theme-button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.lp-nav .more { position: static; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 12px; background: var(--glass); }
:where(.lp-nav, .lp-hero, .lp-globo, .velas) :focus-visible { outline: 3px solid color-mix(in srgb, var(--blue) 70%, #fff); outline-offset: 3px; }

.lp-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); align-items: center; gap: clamp(24px, 4vw, 64px); width: min(1200px, 100% - 40px); min-height: min(760px, calc(100svh - 80px)); margin: 0 auto; padding: clamp(18px, 4vh, 48px) 0 clamp(28px, 5vh, 56px); }
.lp-copy { position: relative; z-index: 2; max-width: 600px; }
.lp-titulo { margin: 0; color: var(--text); font-size: clamp(36px, 4.4vw, 60px); font-weight: 800; line-height: 1.02; letter-spacing: -.035em; text-wrap: balance; }
.lp-linha { display: block; overflow: hidden; padding-bottom: .06em; margin-bottom: -.06em; }
.lp-titulo .lp-linha > span { display: inline-block; color: var(--text); background: none; -webkit-text-fill-color: currentColor; }
.lp-titulo .lp-linha-cor > span { color: var(--blue-hi); }
body.light .lp-titulo .lp-linha-cor > span { color: var(--blue); }
.lp-lead { max-width: 46ch; margin: 18px 0 0; color: var(--muted); font-size: clamp(16px, 1.35vw, 18px); line-height: 1.55; text-wrap: pretty; }
.lp-modos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 26px 0 0; }
.lp-modo { padding: 16px 16px 15px; border: 1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--screen) 70%, transparent); }
.lp-modo header { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
.lp-modo header b { color: var(--text); font-size: 16px; font-weight: 800; }
.lp-tag { color: var(--dim); font-size: 12px; font-weight: 600; white-space: nowrap; }
.lp-modo p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.45; }
.lp-modo strong { color: var(--text); font-weight: 800; }
.lp-modo-premium { border-color: color-mix(in srgb, var(--premium) 38%, var(--line)); background: linear-gradient(160deg, color-mix(in srgb, var(--premium) 9%, transparent), transparent 70%), color-mix(in srgb, var(--screen) 70%, transparent); }
.lp-modo-premium header b { color: color-mix(in srgb, var(--premium) 85%, var(--text)); }
body.light .lp-modo-premium header b { color: #9a6b00; }

.lp-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 0; }
.lp-ctas button { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 52px; padding: 0 22px; border-radius: 14px; font: inherit; font-size: 15.5px; font-weight: 700; cursor: pointer; transition: transform .15s var(--ease-saida), box-shadow .2s, background .2s, border-color .2s, color .2s; -webkit-tap-highlight-color: transparent; }
.lp-ctas button:active { transform: scale(.975); }
.lp-ctas .lp-google { min-width: 236px; border: 1px solid #dadce0; background: #fff; color: #1f1f1f; box-shadow: 0 1px 2px rgba(0,0,0,.18), 0 10px 26px -12px rgba(47,107,255,.65); }
.lp-ctas .lp-google:hover { background: #f8faff; box-shadow: 0 1px 3px rgba(0,0,0,.22), 0 14px 32px -12px rgba(47,107,255,.8); }
.lp-ctas .lp-google .g { display: grid; place-items: center; width: 22px; height: 22px; margin: 0; background: none; box-shadow: none; }
.lp-ctas .lp-google .g svg { width: 20px; height: 20px; }
.lp-ctas .lp-guest { border: 1.5px solid color-mix(in srgb, var(--blue) 55%, transparent); background: color-mix(in srgb, var(--blue) 8%, transparent); color: var(--text); }
.lp-ctas .lp-guest:hover { border-color: var(--blue); background: color-mix(in srgb, var(--blue) 14%, transparent); }
.lp-ctas .lp-guest svg { width: 19px; height: 19px; fill: currentColor; color: var(--blue-hi); }
body.light .lp-ctas .lp-guest { border-color: color-mix(in srgb, var(--blue) 60%, transparent); background: #fff; color: #0b1024; }
body.light .lp-ctas .lp-guest svg { color: var(--blue); }
.lp-ctas button.carregando { pointer-events: none; }
.lp-ctas button.carregando .lp-btn-txt { opacity: .55; }
.lp-ctas button.carregando::after { content: ""; position: absolute; right: 14px; width: 16px; height: 16px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: lpGira .7s linear infinite; }
.lp-ctas button.erro { animation: lpTreme .35s; border-color: #ef4444 !important; }
.lp-nota { max-width: 52ch; margin: 14px 0 0; color: var(--dim); font-size: 13px; line-height: 1.5; }
@keyframes lpGira { to { transform: rotate(360deg); } }
@keyframes lpTreme { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

.lp-palco { position: relative; display: grid; place-items: center; min-height: 600px; perspective: 1500px; perspective-origin: 50% 40%; }
.lp-palco .bubbles { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.lp-sombra { position: absolute; bottom: 4%; left: 50%; width: 62%; height: 46px; border-radius: 50%; background: radial-gradient(closest-side, rgba(0,0,0,.55), transparent); filter: blur(10px); transform: translateX(calc(-50% + var(--sx, 0px))) scaleX(var(--ss, 1)); opacity: .9; }
body.light .lp-sombra { background: radial-gradient(closest-side, rgba(20,30,70,.28), transparent); }
.fone { --rx: 5deg; --ry: -17deg; --gx: 0; --esc: 1; position: relative; z-index: 2; width: 292px; margin: 0; transform-style: preserve-3d; transform-origin: 50% 0; transform: scale(var(--esc)) rotateX(var(--rx)) rotateY(var(--ry)); }
.fone-corpo { position: relative; aspect-ratio: 292 / 590; padding: 11px; border-radius: 48px; transform-style: preserve-3d; background: linear-gradient(145deg, #1b2030, #0a0c14 55%, #151926); box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.09), inset 0 2px 1px rgba(255,255,255,.08), 0 0 0 1.6px #3b4459, 0 0 0 2.6px #11141d; }
.fone-borda, .fone-borda::before, .fone-borda::after { content: ""; position: absolute; inset: 0; border-radius: 48px; background: linear-gradient(90deg, #262c3c 0%, #596377 18%, #2a3041 45%, #4b5468 78%, #20252f 100%); }
.fone-borda { transform: translateZ(-14px); box-shadow: 0 30px 60px -20px rgba(0,0,0,.7); }
.fone-borda::before { transform: translateZ(4.5px); }
.fone-borda::after { transform: translateZ(9px); }
.fone-botao { position: absolute; width: 4px; border-radius: 3px; background: linear-gradient(90deg, #5d6679, #2a303d); transform: translateZ(-7px); }
.fone-botao-a { left: -3px; top: 21%; height: 7%; }
.fone-botao-b { left: -3px; top: 31%; height: 11%; }
.fone-botao-c { right: -3px; top: 27%; height: 14%; }
.fone-tela { position: relative; height: 100%; overflow: hidden; border-radius: 38px; transform: translateZ(.5px); }
.fone .phone-screen { width: 100%; max-width: none; box-shadow: none; }
.fone-reflexo { position: absolute; inset: 0; z-index: 5; pointer-events: none; border-radius: inherit; background: linear-gradient(118deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.05) 22%, transparent 38%, transparent 70%, rgba(255,255,255,.05) 100%); background-size: 160% 160%; background-position: calc(30% + var(--gx) * 40%) 0; mix-blend-mode: screen; }
body.light .fone-reflexo { opacity: .7; }
.p-online { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border-radius: 999px; background: rgba(52,211,153,.12); color: #34d399; font-size: 10.5px; font-weight: 800; }

@media (prefers-reduced-motion: no-preference) {
  .lp-linha > span { animation: lpLinha .8s var(--ease-saida) both; }
  .lp-linha:nth-child(2) > span { animation-delay: .08s; }
  .lp-linha:nth-child(3) > span { animation-delay: .16s; }
  .lp-lead, .lp-modos, .lp-ctas, .lp-nota { animation: lpSobe .7s var(--ease-saida) both; }
  .lp-lead { animation-delay: .22s; } .lp-modos { animation-delay: .3s; } .lp-ctas { animation-delay: .36s; } .lp-nota { animation-delay: .42s; }
  .fone { animation: lpFone 1.1s var(--ease-saida) .15s both; }
}
@keyframes lpLinha { from { transform: translateY(105%); } }
@keyframes lpSobe { from { opacity: 0; transform: translateY(12px); } }
@keyframes lpFone { from { opacity: 0; transform: translateY(36px) scale(var(--esc)) rotateX(10deg) rotateY(-34deg); } }
@keyframes lpFlutua { 50% { transform: translateY(-4px); } }

@media (max-width: 960px) {
  .lp-links { display: none; }
  .lp-acoes { margin-left: auto; }
  .lp-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-top: 8px; }
  .lp-copy { max-width: 640px; }
  .lp-palco { min-height: 0; height: 480px; overflow: visible; clip-path: inset(-80px 0 0 0); margin: 8px -20px 0; padding-top: 6px; -webkit-mask-image: linear-gradient(180deg, #000 80%, transparent); mask-image: linear-gradient(180deg, #000 80%, transparent); -webkit-mask-size: 100% calc(100% + 80px); mask-size: 100% calc(100% + 80px); -webkit-mask-position: 0 -80px; mask-position: 0 -80px; }
  .fone { --rx: 3deg; --ry: -11deg; --esc: .8; align-self: start; margin-top: 4px; }
  .lp-sombra { display: none; }
}
@media (max-width: 520px) {
  .lp-titulo { font-size: clamp(34px, 10vw, 44px); }
  .lp-modos { gap: 8px; }
  .lp-modo { padding: 13px 12px; border-radius: 14px; }
  .lp-modo header { flex-direction: column; gap: 2px; }
  .lp-modo p { font-size: 13px; }
  .lp-ctas { flex-direction: column; }
  .lp-ctas button { width: 100%; }
  .lp-palco { height: 440px; }
}

.lp-globo { display: flex; flex-direction: column; align-items: center; width: min(1100px, 100% - 40px); margin: 0 auto; text-align: center; }
.globo-cabeca { max-width: 620px; }
.globo-cabeca h2 { margin: 10px 0 0; color: var(--text); font-size: clamp(28px, 3.6vw, 44px); font-weight: 800; letter-spacing: -.025em; line-height: 1.08; text-wrap: balance; }
.globo-cabeca p { margin: 12px auto 0; color: var(--muted); font-size: 15.5px; line-height: 1.6; text-wrap: pretty; }
.globo-palco { display: flex; flex-direction: column; align-items: center; width: 100%; margin-top: clamp(18px, 3vw, 34px); }
.globo-cena { position: relative; width: min(100%, 600px); aspect-ratio: 1; }
.globo-sombra { position: absolute; left: 50%; bottom: 3%; width: 58%; height: 8%; border-radius: 50%; background: radial-gradient(closest-side, rgba(10,20,60,.55), transparent); transform: translateX(-50%); pointer-events: none; }
body.light .globo-sombra { background: radial-gradient(closest-side, rgba(30,50,120,.22), transparent); }
.globo-canvas { position: relative; display: block; width: 100%; height: 100%; touch-action: pan-y; cursor: grab; -webkit-tap-highlight-color: transparent; }
.globo-canvas:active { cursor: grabbing; }
.globo-cena.plano { aspect-ratio: 2 / 1; width: min(100%, 900px); }
.globo-cena.plano .globo-canvas { border-radius: 16px; cursor: pointer; }
.globo-cena.plano .globo-sombra { display: none; }
.globo-linha { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; opacity: 0; transition: opacity .2s; }
.globo-linha line { stroke: var(--blue-hi); stroke-width: 1.4; stroke-dasharray: 3 3; }
.globo-linha circle { fill: #fff; stroke: var(--blue-hi); stroke-width: 2.5; }
body.light .globo-linha line, body.light .globo-linha circle { stroke: var(--blue); }
.globo-card { position: absolute; left: 0; top: 0; z-index: 3; width: 214px; padding: 12px 14px 12px; border: 1px solid color-mix(in srgb, var(--blue) 30%, var(--line)); border-radius: 16px; background: color-mix(in srgb, var(--screen) 92%, transparent); text-align: left; box-shadow: 0 1px 0 rgba(255,255,255,.06) inset, 0 18px 40px -18px rgba(0,0,0,.65); transition: opacity .2s; will-change: transform; }
body.light .globo-card { background: #fff; box-shadow: 0 18px 40px -20px rgba(30,50,120,.35); }
.globo-card.entra { animation: lpCard .32s var(--ease-saida); }
@keyframes lpCard { from { opacity: 0; scale: .94; } }
.globo-card-nome { display: block; padding-right: 26px; color: var(--text); font-size: 15px; font-weight: 800; line-height: 1.25; }
.globo-card dl { display: grid; gap: 6px; margin: 9px 0 0; }
.globo-card dl > div { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.globo-card dt { color: var(--muted); font-size: 11.5px; font-weight: 600; white-space: nowrap; }
.globo-card dd { margin: 0; color: var(--text); font-size: 12.5px; font-weight: 800; text-align: right; }
.globo-card.sem-regiao [data-globo-regiao] { color: var(--muted); font-weight: 700; }
.globo-card-x { position: absolute; top: 6px; right: 6px; display: grid; place-items: center; width: 32px; height: 32px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); cursor: pointer; }
.globo-card-x:hover { background: var(--blue-soft); color: var(--text); }
.globo-card-x svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; }
.globo-carregando { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 10px; color: var(--muted); font-size: 14px; }
.globo-spin { width: 28px; height: 28px; border: 3px solid var(--line); border-top-color: var(--blue-hi); border-radius: 50%; animation: lpGira .8s linear infinite; }
.globo-erro { position: absolute; left: 12px; right: 12px; bottom: 12px; margin: 0; padding: 10px 12px; border-radius: 12px; background: var(--glass); color: var(--text); font-size: 13px; }
.globo-dica { display: inline-flex; align-items: center; gap: 8px; margin: 6px 0 0; color: var(--muted); font-size: 13px; font-weight: 600; }
.globo-dica svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.globo-rodape { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 22px; margin-top: 16px; }
.globo-busca { position: relative; width: min(280px, 100%); }
.globo-busca svg { position: absolute; left: 13px; top: 50%; width: 17px; height: 17px; transform: translateY(-50%); fill: none; stroke: var(--muted); stroke-width: 2.2; stroke-linecap: round; pointer-events: none; }
.globo-busca input { width: 100%; height: 44px; padding: 0 14px 0 38px; border: 1px solid var(--line); border-radius: 999px; background: color-mix(in srgb, var(--screen) 80%, transparent); color: var(--text); font: inherit; font-size: 16px; }
.globo-busca input:focus { outline: 3px solid color-mix(in srgb, var(--blue) 50%, transparent); outline-offset: 1px; border-color: var(--blue); }
.globo-legenda { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; padding: 0; list-style: none; color: var(--muted); font-size: 12.5px; }
.globo-legenda li { display: inline-flex; align-items: center; gap: 7px; }
.globo-legenda i { width: 10px; height: 10px; border-radius: 3px; }
.lg-assoc { background: #3d74ff; } .lg-sem { background: #5a6274; }
body.light .lg-assoc { background: #3b6bea; } body.light .lg-sem { background: #b7bfd2; }
.lp-kicker { display: inline-block; padding: 5px 11px; border: 1px solid color-mix(in srgb, var(--blue) 35%, var(--line)); border-radius: 999px; color: var(--blue-hi); font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
body.light .lp-kicker { color: var(--blue); }
@media (max-width: 520px) {
  .globo-card { width: 196px; padding: 11px 12px; }
  .globo-card-nome { font-size: 14px; }
}

.velas { width: 100%; padding: 18px; border: 1px solid var(--line); border-radius: 20px; background: color-mix(in srgb, var(--screen) 82%, transparent); }
.velas-topo { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.velas-topo h3 { margin: 0; color: var(--text); font-size: 16px; font-weight: 800; }
.velas-sub { margin: 3px 0 0; color: var(--muted); font-size: 12.5px; }
.velas-periodos { display: inline-flex; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 11px; }
.velas-periodos button { min-width: 44px; min-height: 36px; padding: 0 10px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.velas-periodos button[aria-pressed="true"] { background: var(--blue); color: #fff; }
.velas-area { position: relative; height: 250px; margin: 14px 0 0; touch-action: pan-y; }
.velas-area canvas { display: block; width: 100%; height: 100%; }
.velas-estado { position: absolute; inset: 0; display: grid; place-items: center; margin: 0; padding: 0 20px; color: var(--muted); font-size: 13.5px; text-align: center; pointer-events: none; }
.velas-estado:empty { display: none; }
.velas-tip { position: absolute; z-index: 2; min-width: 168px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--screen); color: var(--text); font-size: 12.5px; line-height: 1.55; box-shadow: 0 18px 40px -18px rgba(0,0,0,.6); pointer-events: none; font-variant-numeric: tabular-nums; }
.velas-tip b { display: block; margin-bottom: 2px; font-size: 12px; }
.velas-tip span { color: var(--muted); }
.velas-rodape { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin: 12px 0 0; }
.velas-metricas { display: flex; flex-wrap: wrap; gap: 6px 18px; color: var(--muted); font-size: 13px; }
.velas-metricas b { margin-left: 4px; color: var(--text); }
.velas-legenda { color: var(--muted); font-size: 12.5px; }
.velas-legenda summary { min-height: 32px; display: inline-flex; align-items: center; color: var(--blue-hi); font-weight: 700; cursor: pointer; }
.velas-legenda p { max-width: 62ch; margin: 6px 0 0; line-height: 1.55; }
#gratis .feature-visual { min-width: 0; }

.podium-slot.place-1 .podium-base { background: linear-gradient(180deg, color-mix(in srgb, var(--ouro) 40%, transparent), color-mix(in srgb, var(--ouro) 8%, transparent) 70%); border-color: color-mix(in srgb, var(--ouro) 55%, transparent); box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 18px 40px -22px var(--ouro); }
.podium-slot.place-2 .podium-base { background: linear-gradient(180deg, color-mix(in srgb, var(--prata) 34%, transparent), color-mix(in srgb, var(--prata) 6%, transparent) 70%); border-color: color-mix(in srgb, var(--prata) 50%, transparent); box-shadow: inset 0 1px 0 rgba(255,255,255,.35); }
.podium-slot.place-3 .podium-base { background: linear-gradient(180deg, color-mix(in srgb, var(--bronze) 36%, transparent), color-mix(in srgb, var(--bronze) 6%, transparent) 70%); border-color: color-mix(in srgb, var(--bronze) 50%, transparent); box-shadow: inset 0 1px 0 rgba(255,255,255,.3); }
.podium-slot.place-1 .podium-base span { color: var(--ouro); } .podium-slot.place-2 .podium-base span { color: var(--prata); } .podium-slot.place-3 .podium-base span { color: var(--bronze); }
.podium-slot.place-1 .avatar { box-shadow: 0 0 0 3px var(--ouro), 0 10px 28px -8px var(--ouro); }
.podium-slot.place-2 .avatar { box-shadow: 0 0 0 3px var(--prata); }
.podium-slot.place-3 .avatar { box-shadow: 0 0 0 3px var(--bronze); }
.podium-nick, .rank-who b { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.podium-slot { min-width: 0; }
.rank-row { will-change: transform; }
.rank-row.subiu { animation: lpSubiu 1.6s var(--ease-saida); }
@keyframes lpSubiu { 0%, 30% { background: color-mix(in srgb, #34d399 16%, transparent); box-shadow: inset 3px 0 0 #34d399; } }
.rank-likes { min-width: 7ch; text-align: right; }

@media (prefers-reduced-motion: reduce) {
  .lp-hero *, .fone, .fone-corpo, .rank-row, .globo-spin { animation: none !important; transition: none !important; }
}

.fone .p-feed { flex: 1; }
.fone .phone-screen { display: flex; flex-direction: column; height: 100%; }
.fone .p-tabs { margin-top: auto; }
.p-rank { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 8px 12px 0; padding: 10px 12px; border-radius: 14px; background: rgba(127,150,230,.08); font-size: 11px; color: var(--muted); }
.p-rank b { color: var(--text); font-size: 12px; }
.p-rank em { color: #34d399; font-style: normal; font-weight: 800; }

.rank-row { grid-template-columns: 26px 38px minmax(0, 1fr) minmax(24px, 90px) auto; }
.rank-who { min-width: 0; }
.rank-likes { min-width: 0; white-space: nowrap; }
@media (max-width: 640px) {
  .rank-row { grid-template-columns: 22px 32px minmax(0, 1fr) auto; }
  .rank-row .rank-bar { display: none; }
  .rank-likes { font-size: 13px; }
}
.podium-likes { max-width: 100%; overflow-wrap: anywhere; font-size: clamp(10.5px, 3.1vw, 13px); }

.fone .p-rank { align-self: stretch; }
@media (max-width: 380px) { .fone { --esc: .74; } }
.velas { position: relative; }

.lp-marca { gap: 11px; padding: 4px 6px 4px 0; }
.lp-marca img { width: 40px; height: 40px; border-radius: 11px; }
.lp-marca-txt { display: flex; flex-direction: column; line-height: 1.15; }
.lp-marca-txt b { color: var(--text); font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.lp-marca-txt em { color: var(--muted); font-size: 12px; font-style: normal; font-weight: 600; }
@media (max-width: 380px) { .lp-marca-txt em { font-size: 11px; } }

.lp-entrar { margin: 28px 0 0; }
.lp-entrar-titulo { margin: 0 0 10px; color: var(--muted); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.lp-entrar .lp-ctas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; }
.lp-entrar .lp-ctas button.lp-opcao { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 76px; width: 100%; padding: 14px 14px 14px 14px; border-radius: 16px; text-align: left; transform: perspective(700px) translateZ(0); transition: transform .2s var(--ease-saida), box-shadow .2s, border-color .2s, background .2s; }
.lp-opcao-ico { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; }
.lp-opcao-ico svg { width: 22px; height: 22px; }
.lp-opcao-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.lp-opcao-txt b { font-size: 15px; font-weight: 800; line-height: 1.2; }
.lp-opcao-txt em { font-size: 12.5px; font-style: normal; font-weight: 600; line-height: 1.3; opacity: .72; }
.lp-seta { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; opacity: .55; transition: transform .2s var(--ease-saida), opacity .2s; }
.lp-entrar .lp-ctas .lp-google { border: 1px solid #dadce0; background: #fff; color: #1f1f1f; box-shadow: 0 1px 2px rgba(0,0,0,.14), 0 14px 30px -16px rgba(47,107,255,.75); }
.lp-entrar .lp-ctas .lp-google .lp-opcao-ico { background: #f1f3f4; }
.lp-entrar .lp-ctas .lp-guest { border: 1px solid color-mix(in srgb, var(--blue) 45%, var(--line)); background: linear-gradient(160deg, color-mix(in srgb, var(--blue) 14%, transparent), color-mix(in srgb, var(--screen) 70%, transparent)); color: var(--text); }
.lp-opcao-ico-guest { background: color-mix(in srgb, var(--blue) 18%, transparent); color: var(--blue-hi); }
.lp-opcao-ico-guest svg { fill: currentColor; }
body.light .lp-entrar .lp-ctas .lp-guest { background: #fff; border-color: color-mix(in srgb, var(--blue) 40%, #dfe3ee); color: #0b1024; box-shadow: 0 10px 24px -18px rgba(30,50,120,.5); }
body.light .lp-opcao-ico-guest { color: var(--blue); background: rgba(36,87,230,.1); }
.lp-selo { position: absolute; top: -9px; right: 12px; padding: 3px 8px; border-radius: 999px; background: var(--blue); color: #fff; font-size: 10.5px; font-weight: 800; letter-spacing: .02em; box-shadow: 0 6px 14px -6px rgba(47,107,255,.9); }
@media (hover: hover) and (pointer: fine) {
  .lp-entrar .lp-ctas button.lp-opcao:hover { transform: perspective(700px) translateY(-3px) rotateX(3deg); }
  .lp-entrar .lp-ctas .lp-google:hover { box-shadow: 0 2px 4px rgba(0,0,0,.14), 0 22px 38px -16px rgba(47,107,255,.85); }
  .lp-entrar .lp-ctas .lp-guest:hover { border-color: var(--blue); }
  .lp-opcao:hover .lp-seta { transform: translateX(3px); opacity: .9; }
}
.lp-entrar .lp-ctas button.lp-opcao:active { transform: perspective(700px) scale(.98); }
.lp-entrar .lp-ctas button.carregando::after { right: 16px; }
.lp-entrar .lp-ctas button.carregando .lp-seta { opacity: 0; }
@media (max-width: 640px) {
  .lp-entrar .lp-ctas { grid-template-columns: minmax(0, 1fr); }
  .lp-entrar .lp-ctas button.lp-opcao { min-height: 70px; }
}

main > .section { padding-top: clamp(56px, 8vw, 104px); padding-bottom: clamp(24px, 4vw, 40px); }
@media (max-width: 960px) {
  .lp-hero { gap: 8px; padding-bottom: 8px; }
  .lp-lead { margin-top: 14px; }
  .lp-modos { margin-top: 20px; }
}
@media (prefers-reduced-motion: reduce) { .lp-opcao, .lp-seta, .globo-card { transition: none !important; animation: none !important; } }

.globo-card { width: 220px; }
.globo-card dl { grid-template-columns: 1fr auto; gap: 8px 14px; }
.globo-card dl > div { flex-direction: column; align-items: flex-start; gap: 1px; }
.globo-card dl > div:last-child { align-items: flex-end; }
.globo-card dd { text-align: left; font-size: 13px; }
.globo-card dl > div:last-child dd { text-align: right; }
@media (max-width: 520px) { .globo-card { width: 200px; } }
.globo-card dl { grid-template-columns: minmax(0, 1fr); gap: 7px; }
.globo-card dl > div, .globo-card dl > div:last-child { flex-direction: row; justify-content: space-between; align-items: baseline; gap: 12px; }
.globo-card dl > div:first-child { flex-direction: column; align-items: flex-start; gap: 1px; }
.globo-card dd, .globo-card dl > div:last-child dd { text-align: left; }
.globo-card { width: 232px; }
@media (max-width: 520px) { .globo-card { width: 210px; } }

.globo-cena { width: min(100%, 540px); }
.globo-canvas { touch-action: none; }
.globo-canvas:focus-visible { outline: 3px solid color-mix(in srgb, var(--blue) 60%, transparent); outline-offset: 6px; border-radius: 50%; }
@media (max-width: 640px) { .globo-cena { width: min(84vw, 360px); } }
.globo-dica { margin-top: 14px; padding: 8px 14px; border: 1px solid var(--line); border-radius: 999px; background: color-mix(in srgb, var(--screen) 70%, transparent); }
.globo-linha line { stroke: var(--gc, var(--blue-hi)); }
.globo-linha circle { stroke: var(--gc, var(--blue-hi)); }
.globo-card { --gc: #6f9bff; width: 248px; padding: 14px 14px 13px; border-color: color-mix(in srgb, var(--gc) 40%, var(--line)); background: linear-gradient(160deg, color-mix(in srgb, var(--gc) 16%, transparent), transparent 62%), color-mix(in srgb, var(--screen) 94%, transparent); box-shadow: 0 1px 0 rgba(255,255,255,.07) inset, 0 22px 44px -20px rgba(0,0,0,.7), 0 0 0 1px rgba(0,0,0,.08); transform-origin: 0 100%; }
body.light .globo-card { background: linear-gradient(160deg, color-mix(in srgb, var(--gc) 12%, #fff), #fff 62%); }
.globo-card.entra { animation: gcEntra .38s var(--ease-saida); }
@keyframes gcEntra { from { opacity: 0; transform-origin: 0 100%; rotate: x 18deg; scale: .96; } }
.gc-topo { display: flex; align-items: center; gap: 9px; padding-right: 28px; }
.gc-tag { flex: none; padding: 3px 8px; border-radius: 7px; background: var(--gc); color: #fff; font-size: 11px; font-weight: 900; letter-spacing: .06em; box-shadow: 0 6px 14px -6px var(--gc); }
.globo-card.sem-regiao .gc-tag { background: color-mix(in srgb, var(--gc) 60%, transparent); }
.globo-card .globo-card-nome { padding: 0; font-size: 15.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gc-linhas { display: flex; flex-direction: column; gap: 6px; margin-top: 11px; padding-top: 10px; border-top: 1px solid var(--line); }
.gc-linha { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.gc-linha span { color: var(--muted); font-size: 11.5px; font-weight: 600; }
.gc-linha b { color: var(--text); font-size: 12.5px; font-weight: 800; text-align: right; }
.globo-card.sem-regiao [data-globo-regiao] { color: var(--muted); }
.gc-uso { margin-top: 10px; padding: 10px; border-radius: 12px; background: color-mix(in srgb, var(--gc) 9%, transparent); }
.gc-uso[hidden] { display: none; }
.gc-bar { height: 6px; margin: 7px 0 6px; border-radius: 6px; background: rgba(127,150,230,.16); overflow: hidden; }
.gc-bar i { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(90deg, color-mix(in srgb, var(--gc) 65%, #fff), var(--gc)); transition: width .6s var(--ease-saida); }
.gc-uso em { color: var(--muted); font-size: 11px; font-style: normal; font-weight: 600; }
@media (max-width: 520px) { .globo-card { width: 224px; padding: 12px; } }

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .stat, .feature, .plan, .faq-item, .lp-modo { transition: transform .25s var(--ease-saida), box-shadow .25s, border-color .25s; }
  .stat:hover, .feature:hover, .lp-modo:hover { transform: perspective(800px) translateY(-4px) rotateX(2.5deg); box-shadow: 0 22px 40px -26px rgba(47,107,255,.7); }
  .plan:hover { transform: perspective(900px) translateY(-5px) rotateX(2deg); }
}

@media (max-width: 960px) {
  .lp-palco { height: auto !important; min-height: 0 !important; overflow: visible !important; clip-path: none !important; -webkit-mask-image: none !important; mask-image: none !important; margin: 10px auto 0 !important; padding: 8px 0 16px !important; }
  .fone { --rx: 0deg !important; --ry: 0deg !important; --esc: .82; align-self: center !important; margin-top: 0 !important; }
}
@media (max-width: 520px) { .lp-palco { height: auto !important; } .fone { --esc: .8; } }
@media (max-width: 380px) { .fone { --esc: .74; } }
.menu .menu-sub { margin-left: auto; color: var(--muted); font-size: 12px; font-weight: 700; }
.kicker.lp-k-ger { border-color: rgba(52,211,153,.35); background: rgba(52,211,153,.1); color: #34d399; }
.kicker.lp-k-craft { border-color: rgba(244,114,182,.35); background: rgba(244,114,182,.1); color: #f472b6; }
.kicker.lp-k-justo { border-color: rgba(52,211,153,.35); background: rgba(52,211,153,.1); color: #34d399; }
.feature-copy p b, .section-head p b { color: var(--text); }
.lp-craft-cta { align-self: flex-start; margin-top: 10px; padding: 12px 22px; border: 1px solid rgba(244,114,182,.45); border-radius: 999px; background: rgba(244,114,182,.12); color: #f9a8d4; font-weight: 800; }
.lp-ger, .lp-preco-card, .lp-formatos li, .lp-justo li { border: 1px solid var(--line); background: linear-gradient(160deg, color-mix(in srgb, var(--screen) 92%, #1d3a9a), var(--screen)); box-shadow: 0 30px 70px -40px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04); }
body.light .lp-ger, body.light .lp-preco-card, body.light .lp-formatos li, body.light .lp-justo li { background: #fff; box-shadow: 0 24px 60px -36px rgba(20,30,80,.35); }
.lp-ger { display: flex; flex-direction: column; gap: 16px; width: 100%; max-width: 520px; margin-inline: auto; padding: 24px; border-radius: 26px; border-color: rgba(52,211,153,.25); }
.lp-ger-topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lp-ger-modo { padding: 5px 11px; border-radius: 999px; background: rgba(167,139,250,.14); color: #c4b5fd; font-size: 12px; font-weight: 900; letter-spacing: .03em; text-transform: uppercase; }
.lp-ger-st { display: inline-flex; align-items: center; gap: 7px; color: #34d399; font-size: 13px; font-weight: 800; }
.lp-ger-num { display: flex; align-items: baseline; gap: 10px; }
.lp-ger-num b { font-size: clamp(34px, 5vw, 46px); font-weight: 900; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.lp-ger-num span { color: var(--muted); font-size: 14px; font-weight: 700; }
.lp-ger-num em { margin-left: auto; color: #34d399; font-size: 18px; font-style: normal; font-weight: 900; font-variant-numeric: tabular-nums; }
.lp-ger-barra { height: 10px; overflow: hidden; border-radius: 99px; background: rgba(127,140,190,.16); }
.lp-ger-barra i { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #34d399, #22d3ee, #a78bfa); box-shadow: 0 0 18px rgba(52,211,153,.5); transition: width .5s ease; }
.lp-ger-mini { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.lp-ger-mini span { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 14px; }
.lp-ger-mini em { color: var(--dim); font-size: 11px; font-style: normal; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.lp-ger-mini b { font-size: 14px; font-weight: 800; }
.lp-ger-arquivo { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: 14px; background: rgba(0,0,0,.35); overflow: hidden; }
body.light .lp-ger-arquivo { background: #0b1024; }
.lp-ger-arq-topo { display: flex; justify-content: space-between; margin-bottom: 4px; color: #c7cbe0; font-size: 12px; }
.lp-ger-arq-topo em { color: #6b7194; font-style: normal; }
.lp-ger-arquivo code { overflow: hidden; color: #6b7194; font: 600 12px/1.55 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: nowrap; text-overflow: ellipsis; }
.lp-ger-arquivo i { font-style: normal; }
.lp-ger-arquivo .c1 { color: #22d3ee; } .lp-ger-arquivo .c2 { color: #34d399; } .lp-ger-arquivo .c3 { color: #a78bfa; } .lp-ger-arquivo .c4 { color: #f5c542; } .lp-ger-arquivo .c5 { color: #fb923c; }
.lp-formatos { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.lp-formatos li { display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: 20px; }
.lp-formatos b { font-size: 16px; font-weight: 800; }
.lp-formatos code { padding: 9px 11px; border-radius: 10px; background: rgba(127,140,190,.1); color: #6ee7b7; font: 700 12px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; word-break: break-all; }
body.light .lp-formatos code { color: #047857; }
.lp-prints { position: relative; margin: 0; padding-bottom: 54px; }
.lp-print { display: block; width: 100%; height: auto; border: 1px solid rgba(244,114,182,.28); border-radius: 18px; box-shadow: 0 30px 70px -30px rgba(0,0,0,.9); }
.lp-print-a { position: relative; z-index: 1; width: 88%; }
.lp-print-b { position: absolute; z-index: 2; right: 0; bottom: 34px; width: 62%; transform: rotate(2.5deg); }
.lp-print-selo { position: absolute; z-index: 3; top: -14px; right: 6%; display: flex; flex-direction: column; padding: 10px 14px; border-radius: 16px; background: linear-gradient(145deg, #f5c542, #f59e0b); color: #2a1a00; box-shadow: 0 16px 34px -14px rgba(245,158,11,.7); }
.lp-print-selo b { font-size: 20px; font-weight: 900; line-height: 1; }
.lp-print-selo em { font-size: 11.5px; font-style: normal; font-weight: 800; }
.lp-prints figcaption { position: absolute; left: 0; bottom: 0; color: var(--dim); font-size: 12.5px; font-weight: 700; }
.lp-precos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.lp-preco-card { display: flex; flex-direction: column; gap: 14px; min-width: 0; padding: 24px; border-radius: 26px; }
.lp-pc-ger { border-color: rgba(52,211,153,.25); }
.lp-pc-craft { border-color: rgba(244,114,182,.25); }
.lp-preco-card > header { display: flex; align-items: center; gap: 12px; }
.lp-preco-card > header b { display: block; font-size: 18px; font-weight: 900; }
.lp-preco-card > header em { color: var(--muted); font-size: 13px; font-style: normal; font-weight: 700; }
.lp-pc-ico { flex: none; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: linear-gradient(145deg, #34d399, #10b981); }
.lp-pc-craft .lp-pc-ico { background: linear-gradient(145deg, #f472b6, #db2777); }
.lp-pc-ico svg { width: 22px; height: 22px; fill: #fff; }
.lp-tab-wrap { overflow-x: auto; }
.lp-tab { width: 100%; border-collapse: collapse; font-size: 14px; }
.lp-tab th { padding: 8px 10px; border-bottom: 1px solid var(--line); color: var(--dim); font-size: 11.5px; font-weight: 900; letter-spacing: .05em; text-align: left; text-transform: uppercase; }
.lp-tab th:last-child, .lp-tab td:last-child { text-align: right; }
.lp-tab td { padding: 12px 10px; border-bottom: 1px solid var(--line); vertical-align: top; font-weight: 700; white-space: nowrap; }
.lp-tab td:first-child { white-space: normal; border-left: 3px solid var(--c, #f472b6); }
.lp-tab td b { display: block; font-weight: 900; }
.lp-tab td em { display: block; margin-top: 2px; color: var(--muted); font-size: 12px; font-style: normal; font-weight: 600; }
.lp-tab tr:last-child td { border-bottom: 0; }
.lp-pc-sub { margin: 4px 0 0; color: var(--dim); font-size: 12px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.lp-ex { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.lp-ex li { display: flex; justify-content: space-between; gap: 8px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; font-size: 13px; font-weight: 700; }
.lp-ex li span { color: var(--muted); }
.lp-ex li b { font-weight: 900; font-variant-numeric: tabular-nums; }
.lp-pc-nota { margin: 0; color: var(--muted); font-size: 12.5px; font-weight: 600; }
.lp-justo { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 18px 0 0; padding: 0; list-style: none; }
.lp-justo li { display: flex; flex-direction: column; gap: 4px; padding: 18px; border-radius: 18px; }
.lp-justo-ico { width: 30px; height: 30px; display: grid; place-items: center; margin-bottom: 6px; border-radius: 10px; background: rgba(52,211,153,.14); }
.lp-justo-ico svg { width: 16px; height: 16px; fill: none; stroke: #34d399; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.lp-justo b { font-size: 15px; font-weight: 900; }
.lp-justo em { color: var(--muted); font-size: 13px; font-style: normal; font-weight: 600; line-height: 1.5; }
@media (max-width: 900px) {
  .lp-precos { grid-template-columns: 1fr; }
  .lp-justo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .lp-ger, .lp-preco-card { padding: 18px 16px; border-radius: 22px; }
  .lp-justo { grid-template-columns: 1fr; }
  .lp-tab td, .lp-tab th { padding-inline: 8px; }
  .lp-print-a { width: 92%; }
  .lp-print-b { width: 70%; }
  .lp-print-selo { top: -10px; right: 2%; }
}
.lp-progresso { position: fixed; inset: 0 0 auto; z-index: 60; height: 3px; pointer-events: none; }
.lp-progresso i { display: block; height: 100%; transform: scaleX(0); transform-origin: 0 50%; background: linear-gradient(90deg, #2f6bff, #22d3ee, #34d399, #f5c542); box-shadow: 0 0 12px rgba(34,211,238,.6); }
.danca-rolar { position: absolute; z-index: 5; left: 50%; bottom: -6px; display: inline-flex; flex-direction: column; align-items: center; gap: 6px; transform: translateX(-50%); color: var(--muted); font-size: 12px; font-weight: 800; letter-spacing: .04em; text-decoration: none; }
.danca-rolar i { width: 22px; height: 34px; border: 2px solid currentColor; border-radius: 12px; position: relative; }
.danca-rolar i::after { content: ""; position: absolute; left: 50%; top: 6px; width: 4px; height: 7px; margin-left: -2px; border-radius: 2px; background: currentColor; animation: dancaRoda 1.6s ease-in-out infinite; }
.danca-rolar:hover { color: var(--text); }
.lp-fone-secao { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 64px); }
.lp-fone-copy h2 { margin: 14px 0 12px; font-size: clamp(30px, 4vw, 48px); font-weight: 800; line-height: 1.05; letter-spacing: -.03em; }
.lp-fone-copy h2 span { color: var(--blue-hi); }
.lp-fone-copy p { color: var(--muted); font-size: 16px; line-height: 1.7; }
.lp-fone-palco { min-height: 640px; }
.lp-fone-secao .fone { opacity: 0; transform: translateY(60px) scale(var(--esc)) rotateX(var(--rx)) rotateY(var(--ry)); transition: opacity .9s ease, transform 1.1s cubic-bezier(.2,.8,.2,1); }
.lp-fone-secao.lp-fone-visto .fone { opacity: 1; transform: scale(var(--esc)) rotateX(var(--rx)) rotateY(var(--ry)); }
.lp-inclina { transform: perspective(900px) rotateX(var(--ix, 0deg)) rotateY(var(--iy, 0deg)); transition: transform .25s ease-out, box-shadow .25s; background-image: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(111,155,255,.12), transparent 45%); }
.tiles .tile:nth-child(2) { transition-delay: .04s; } .tiles .tile:nth-child(3) { transition-delay: .08s; } .tiles .tile:nth-child(4) { transition-delay: .12s; }
@keyframes dancaRoda { 0% { transform: translateY(0); opacity: 1; } 70% { transform: translateY(10px); opacity: 0; } 100% { transform: translateY(0); opacity: 0; } }
@media (max-width: 960px) {
  .lp-fone-secao { grid-template-columns: minmax(0, 1fr); }
  .lp-fone-palco { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .lp-fone-secao .fone { opacity: 1; transform: scale(var(--esc)) rotateX(var(--rx)) rotateY(var(--ry)); transition: none; }
}

.lp-danca-palco { --cw: clamp(300px, 36vw, 500px); --dh: calc(var(--cw) * .2); --ld: calc(var(--cw) * .06); --bb: 30px; --bw: calc(var(--cw) * .88); --m: calc(var(--bb) + var(--ld) + var(--dh) / 2 - var(--cw) * .05); position: relative; display: grid; place-items: end center; min-height: 600px; isolation: isolate; }
.lp-danca-palco .bubbles { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
.lp-danca-palco.sem-video { min-height: 0; }
.lp-danca-palco.sem-video > * { display: none !important; }
.palco-halo { position: absolute; z-index: 0; left: 50%; bottom: calc(var(--m) + var(--cw) * .5); width: calc(var(--cw) * 1.02); aspect-ratio: 1; transform: translate(-50%, 50%); border-radius: 50%; background: radial-gradient(circle, rgba(47,107,255,.32) 0%, rgba(99,74,255,.16) 38%, transparent 68%); pointer-events: none; }
.palco-halo::before { content: ""; position: absolute; inset: 9%; border-radius: 50%; border: 1px solid rgba(111,155,255,.16); box-shadow: inset 0 0 60px rgba(47,107,255,.12); }
.palco-halo i { position: absolute; inset: 3%; border-radius: 50%; background: conic-gradient(from 0deg, transparent 0deg, rgba(34,211,238,.85) 40deg, transparent 95deg, transparent 180deg, rgba(167,139,250,.85) 220deg, transparent 275deg); -webkit-mask: radial-gradient(circle, transparent 66%, #000 67.5%, #000 69%, transparent 70.5%); mask: radial-gradient(circle, transparent 66%, #000 67.5%, #000 69%, transparent 70.5%); filter: drop-shadow(0 0 8px rgba(34,211,238,.6)); animation: palcoGira 9s linear infinite; }
.palco-feixe { position: absolute; z-index: 1; top: -4%; width: calc(var(--cw) * .5); height: calc(100% - var(--bb) - var(--ld) + 4%); transform-origin: 50% 0; filter: blur(6px); mix-blend-mode: screen; pointer-events: none; opacity: .8; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 70%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 70%, transparent 100%); }
.palco-feixe::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(160,190,255,.42), rgba(111,155,255,.16) 60%, rgba(34,211,238,.06)); clip-path: polygon(47% 0, 53% 0, 100% 100%, 0 100%); }
.palco-feixe.f1 { left: calc(50% - var(--cw) * .78); animation: palcoFeixeA 7s ease-in-out infinite; }
.palco-feixe.f2 { right: calc(50% - var(--cw) * .78); animation: palcoFeixeB 7s ease-in-out infinite; }
.palco-feixe.f2::before { background: linear-gradient(180deg, rgba(200,170,255,.4), rgba(167,139,250,.15) 60%, rgba(167,139,250,.04)); }
.palco-base { position: absolute; z-index: 2; left: 50%; bottom: var(--bb); width: var(--bw); height: calc(var(--dh) + var(--ld)); transform: translateX(-50%); pointer-events: none; }
.palco-base i { position: absolute; left: 0; right: 0; top: 0; height: var(--dh); border-radius: 50%; }
.palco-lado { top: var(--ld) !important; background: radial-gradient(60% 120% at 50% 100%, rgba(34,211,238,.55), transparent 70%), repeating-linear-gradient(90deg, rgba(111,155,255,.22) 0 2px, transparent 2px 18px), linear-gradient(90deg, #04060f 0%, #0f1a4a 30%, #1a2a78 50%, #0f1a4a 70%, #04060f 100%); box-shadow: 0 18px 40px -10px rgba(34,211,238,.45), 0 30px 60px -20px rgba(0,0,0,.9); }
.palco-topo { background: radial-gradient(closest-side, rgba(34,211,238,.22), transparent 70%), repeating-radial-gradient(ellipse at 50% 50%, rgba(111,155,255,.0) 0 9px, rgba(111,155,255,.14) 9px 10px), radial-gradient(ellipse at 50% 35%, #1b2d78 0%, #0e1645 55%, #070b22 100%); box-shadow: inset 0 -6px 18px rgba(0,0,0,.5), inset 0 4px 14px rgba(160,190,255,.2); }
.palco-aro { background: transparent; box-shadow: 0 0 0 2px rgba(120,200,255,.85), 0 0 18px 3px rgba(34,211,238,.5), inset 0 0 22px rgba(34,211,238,.35); animation: palcoBatida 1.25s ease-in-out infinite; }
.palco-sombra { left: 28% !important; right: 28% !important; top: 22% !important; height: calc(var(--dh) * .5) !important; background: radial-gradient(closest-side, rgba(0,0,0,.6), transparent); }
.palco-onda { border: 2px solid rgba(34,211,238,.7); opacity: 0; animation: palcoOnda 2.5s cubic-bezier(.2,.7,.3,1) infinite; }
.palco-onda.o2 { animation-delay: 1.25s; border-color: rgba(167,139,250,.7); }
.danca-cena { position: relative; z-index: 4; width: var(--cw); margin-bottom: var(--m); opacity: 0; transform: translateY(18px) scale(.97); transition: opacity .5s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.lp-danca-palco.pronta .danca-cena { opacity: 1; transform: none; }
.danca-canvas, .danca-poster { display: block; width: 100%; height: auto; aspect-ratio: 806 / 800; filter: drop-shadow(0 22px 26px rgba(0,0,0,.55)) drop-shadow(0 0 24px rgba(111,155,255,.28)); }
.danca-poster { position: absolute; inset: 0; z-index: 1; height: 100%; object-fit: contain; transition: opacity .35s ease; pointer-events: none; }
.danca-poster.some { opacity: 0; }
.danca-video { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.danca-particulas { position: absolute; z-index: 3; left: 50%; bottom: calc(var(--bb) + var(--ld)); width: var(--bw); height: calc(var(--cw) * 1.05); transform: translateX(-50%); pointer-events: none; }
.danca-particulas i { position: absolute; bottom: calc(var(--dh) * .35); opacity: 0; animation: palcoSobe 5.4s ease-in infinite; }
.danca-particulas i.h { width: 16px; height: 16px; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fb7185'%3E%3Cpath d='M12 21.35 10.55 20C5.4 15.36 2 12.28 2 8.5A5.5 5.5 0 0 1 7.5 3c1.74 0 3.41.81 4.5 2.09A6 6 0 0 1 16.5 3 5.5 5.5 0 0 1 22 8.5c0 3.78-3.4 6.86-8.55 11.54z'/%3E%3C/svg%3E"); filter: drop-shadow(0 0 6px rgba(251,113,133,.7)); }
.danca-particulas i.q { width: 7px; height: 7px; border-radius: 1px; background: #22d3ee; box-shadow: 0 0 10px rgba(34,211,238,.9); }
.danca-particulas i:nth-child(1) { left: 4%; animation-delay: 0s; }
.danca-particulas i:nth-child(2) { left: 14%; animation-delay: -.7s; background: #a78bfa; box-shadow: 0 0 10px rgba(167,139,250,.9); }
.danca-particulas i:nth-child(3) { left: 24%; animation-delay: -3.1s; width: 12px; height: 12px; }
.danca-particulas i:nth-child(4) { left: 33%; animation-delay: -1.9s; }
.danca-particulas i:nth-child(5) { left: 70%; animation-delay: -1.2s; width: 20px; height: 20px; }
.danca-particulas i:nth-child(6) { left: 78%; animation-delay: -4.2s; background: #6f9bff; box-shadow: 0 0 10px rgba(111,155,255,.9); }
.danca-particulas i:nth-child(7) { left: 88%; animation-delay: -2.5s; width: 13px; height: 13px; }
.danca-particulas i:nth-child(8) { left: 95%; animation-delay: -3.7s; width: 5px; height: 5px; }
.danca-particulas i:nth-child(9) { left: 58%; animation-delay: -4.8s; width: 14px; height: 14px; }
.danca-particulas i:nth-child(10) { left: 44%; animation-delay: -2.9s; background: #a78bfa; box-shadow: 0 0 10px rgba(167,139,250,.9); }
.danca-rolar { bottom: -42px; z-index: 6; }
body.light .palco-halo { background: radial-gradient(circle, rgba(47,107,255,.18) 0%, rgba(99,74,255,.08) 40%, transparent 68%); }
body.light .palco-feixe { mix-blend-mode: normal; opacity: .45; }
body.light .palco-topo { background: radial-gradient(closest-side, rgba(34,211,238,.25), transparent 70%), repeating-radial-gradient(ellipse at 50% 50%, transparent 0 9px, rgba(36,87,230,.12) 9px 10px), radial-gradient(ellipse at 50% 35%, #e8eeff 0%, #c9d6fb 60%, #a9bcf3 100%); }
body.light .palco-lado { background: radial-gradient(60% 120% at 50% 100%, rgba(34,211,238,.4), transparent 70%), repeating-linear-gradient(90deg, rgba(36,87,230,.18) 0 2px, transparent 2px 18px), linear-gradient(90deg, #7d93d6 0%, #3d5fd0 50%, #7d93d6 100%); box-shadow: 0 16px 34px -14px rgba(36,87,230,.5); }
@keyframes palcoGira { to { transform: rotate(360deg); } }
@keyframes palcoFeixeA { 0%, 100% { transform: rotate(-24deg); } 50% { transform: rotate(-10deg); } }
@keyframes palcoFeixeB { 0%, 100% { transform: rotate(24deg); } 50% { transform: rotate(10deg); } }
@keyframes palcoBatida { 0%, 100% { box-shadow: 0 0 0 2px rgba(120,200,255,.7), 0 0 14px 2px rgba(34,211,238,.35), inset 0 0 18px rgba(34,211,238,.25); } 50% { box-shadow: 0 0 0 2px rgba(170,225,255,1), 0 0 30px 6px rgba(34,211,238,.65), inset 0 0 30px rgba(34,211,238,.5); } }
@keyframes palcoOnda { 0% { opacity: .9; transform: scale(1); } 100% { opacity: 0; transform: scale(1.75, 1.9); } }
@keyframes palcoSobe { 0% { opacity: 0; transform: translateY(0) scale(.6) rotate(0deg); } 12% { opacity: 1; } 80% { opacity: .7; } 100% { opacity: 0; transform: translateY(calc(var(--cw) * -.85)) translateX(14px) scale(1.05) rotate(40deg); } }
@media (max-width: 960px) {
  .lp-danca-palco { --cw: min(340px, 78vw); --bb: 14px; order: -1; min-height: 0; margin: -6px -20px 0; padding-top: 18px; }
  .danca-rolar { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .palco-halo i, .palco-feixe, .palco-onda, .palco-aro, .danca-particulas i, .danca-rolar i::after { animation: none !important; }
  .palco-onda { display: none; }
}
