/* Dark public page. Artwork keeps its original colors and white backgrounds. */
.pp-landing{background:#000000!important;color:#ffffff!important}
.tela-autenticacao:has(.pp-landing){background:#000000}
.pp-landing .pp-header,.pp-landing .pp-footer{background:#000000;border-color:#111111}
.pp-landing .pp-brand>span,.pp-landing .pp-header nav,.pp-landing .pp-login{color:#ffffff}
.pp-landing .pp-brand small{color:#dedede}
.pp-landing .pp-hero-marquee{background:radial-gradient(ellipse at 50% 32%,#00000000,transparent 65%),#000000}
.pp-landing .pp-marquee-content h1{color:#ffffff}
.pp-landing .pp-marquee-content h1 em{color:#ff7459}
.pp-landing .pp-marquee-tag{background:#111111;border-color:#444444;color:#dedede}
.pp-landing .pp-marquee-description,.pp-landing .pp-marquee-proof,.pp-landing .pp-marquee-note{color:#dedede}
.pp-landing .pp-marquee-actions a{color:#ffffff}
.pp-landing .pp-marquee-heading{color:#dedede}
.pp-landing .pp-marquee-pause{background:#111111;border-color:#444444;color:#ffffff}
.pp-landing .pp-marquee-card{background:#111111;border-color:#444444;box-shadow:0 12px 28px #0003}
.pp-landing .pp-marquee-card>span{color:#ffffff}
.pp-landing .pp-marquee-card b{color:#dedede}
.pp-landing .pp-marquee-track{animation:pp-model-loop 40s linear infinite!important;animation-play-state:running!important;will-change:transform}
.pp-landing .pp-marquee-window[data-paused=true] .pp-marquee-track{animation-play-state:paused!important}
.pp-landing .pp-marquee-window{overflow:hidden}
.pp-landing .pp-marquee-group[aria-hidden=true]{display:flex!important}
.pp-landing .pp-feature{background:#111111;border-color:#444444}
.pp-landing .pp-feature-main{background:#111111}
.pp-landing .pp-feature p,.pp-landing .pp-steps p,.pp-landing .pp-gallery p{color:#dedede}
.pp-landing .pp-feature-icon{background:#111111;border-color:#444444;color:#dedede}
.pp-landing .pp-list-demo{background:#111111;border-color:#444444}
.pp-landing .pp-list-demo span{border-color:#111111}
.pp-landing .pp-list-demo small{color:#dedede}
.pp-landing #comoFuncionaLanding,.pp-landing #faqLanding{background:#111111;border-color:#444444}
.pp-landing .pp-eyebrow{color:#dedede}
.pp-landing .pp-steps article>span{color:#dedede;border-color:#444444}
.pp-landing .pp-gallery article>div{background:#111111;border:1px solid #444444}
.pp-landing .pp-gallery article:nth-child(3n+2)>div{background:#111111}
.pp-landing .pp-gallery article:nth-child(3n)>div{background:#111111}
.pp-landing .pp-gallery-bottom{border-color:#444444}
.pp-landing .pp-gallery-bottom p{color:#dedede}
.pp-landing .pp-showcase{background:#111111}
.pp-landing .plano-card{background:#111111!important;border-color:#444444!important;color:#ffffff!important}
.pp-landing .plano-card.recomendado{background:#111111!important;border-color:#dedede!important}
.pp-landing .plano-card h3,.pp-landing .plano-preco,.pp-landing .plano-preco .valor{color:#ffffff!important}
.pp-landing .plano-desc,.pp-landing .plano-recursos,.pp-landing .plano-preco .moeda,.pp-landing .plano-preco .periodo,.pp-landing .planos-mensagem{color:#dedede!important}
.pp-landing .faq-item{border-color:#444444!important}
.pp-landing .faq-item summary{color:#ffffff!important}
.pp-landing .faq-item summary:after{color:#dedede}
.pp-landing .faq-item p{color:#dedede!important}
.pp-landing .pp-final{background:#111111}
.pp-landing .pp-final p,.pp-landing .pp-footer p,.pp-landing .pp-footer small{color:#dedede}
.pp-landing .pp-footer small{border-color:#444444}
.pp-landing .pp-menu{border-color:#444444;color:#ffffff;background:#111111}
.pp-model-preview-panel{background:#111111}
.pp-model-preview header{color:#ffffff}
.pp-model-preview header button{background:#111111;color:#ffffff}

/* Pure black landing and readable labels. */
.pp-landing .pp-hero-marquee,.pp-landing .pp-section,.pp-landing .pp-showcase,.pp-landing .pp-final{background:#000!important;background-image:none!important}
.pp-landing h1,.pp-landing h2,.pp-landing h3,.pp-landing .pp-footer strong{color:#fff!important;font-weight:700}
.pp-landing .pp-marquee-content h1 em{color:#ff7459!important}
.pp-landing .pp-header nav a,.pp-landing .pp-footer nav a{color:#fff;font-weight:700}
.pp-landing .pp-brand small{font-size:10px;color:#dedede;font-weight:700}
.pp-landing .pp-eyebrow,.pp-landing .pp-marquee-heading{font-size:12px;color:#dedede;font-weight:700}
.pp-landing .pp-marquee-tag{font-size:14px;font-weight:700}
.pp-landing .pp-marquee-proof,.pp-landing .pp-marquee-note{font-size:14px;color:#dedede}
.pp-landing .pp-marquee-card>span{font-size:15px;color:#fff;font-weight:700}
.pp-landing .pp-marquee-card b{color:#fff;font-weight:700}
.pp-landing .pp-marquee-pause{font-size:13px;font-weight:700}
.pp-landing .pp-feature p,.pp-landing .pp-gallery p,.pp-landing .pp-steps p,.pp-landing .pp-showcase p,.pp-landing .pp-final p,.pp-landing .pp-footer p,.pp-landing .pp-footer small{color:#dedede}
.pp-landing .pp-gallery h3,.pp-landing .pp-feature h3{font-weight:700}
.pp-landing .pp-text-link{color:#fff;border-color:#666}
.pp-landing .pp-eyebrow i{background:#ff7459}
.pp-landing :is(button,a,summary):focus-visible{outline-color:#ff7459!important}
.pp-landing .pp-skip{background:#111;color:#fff}
.pp-landing .plano-card.recomendado{border-color:#ff7459!important}
@media(max-width:760px){.pp-landing .pp-header nav{background:#000;border-color:#444}}
/* Cover the old authentication background and keep one scroll surface. */
@media screen {
  html:has(#telaAutenticacao:not([hidden]) .pp-landing),
  html body:has(#telaAutenticacao:not([hidden]) .pp-landing){
    overflow:hidden!important;
    background:#000!important;
    height:100%;
  }
  html body #telaAutenticacao:not([hidden]):has(.pp-landing){
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    background:#000!important;
    background-image:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain;
    scrollbar-color:#555 #000;
    scrollbar-width:thin;
    box-sizing:border-box;
  }
  html body:has(#telaAutenticacao:not([hidden]) .pp-landing)::before,
  html body:has(#telaAutenticacao:not([hidden]) .pp-landing)::after{display:none!important}
}
/* Green action buttons with white labels on the black landing. */
.pp-landing .pp-button,
.pp-landing .btn-plano,
.pp-landing .pp-marquee-cta{
  background:#15803d!important;
  color:#fff!important;
  border-color:#15803d!important;
  box-shadow:none!important;
}
.pp-landing .pp-marquee-pause{
  background:#15803d!important;
  color:#fff!important;
  border-color:#15803d!important;
}
@media(hover:hover){
  .pp-landing .pp-button:hover,
  .pp-landing .btn-plano:hover,
  .pp-landing .pp-marquee-cta:hover,
  .pp-landing .pp-marquee-pause:hover{background:#166534!important;border-color:#166534!important}
}
.pp-landing .plano-card.recomendado{border-color:#22c55e!important}
.pp-landing :is(button,a,summary):focus-visible{outline-color:#4ade80!important}
/* Keep the complete hero title white; green belongs to action buttons. */
html body .pp-landing .pp-marquee-content h1 em{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important}

/* Larger, high-contrast pricing cards and illustrated benefits. */
.pp-landing #planosLanding .planos-grade{max-width:1080px;gap:28px}
.pp-landing #planosLanding .plano-card{padding:36px!important;border-radius:24px;overflow:hidden;background:#111!important;border-color:#444!important}
.pp-landing #planosLanding .plano-card.recomendado{border-color:#22c55e!important}
.pp-landing #planosLanding .plano-card.recomendado::before{content:none!important;display:none!important}
.pp-landing #planosLanding .plano-badge{display:flex!important;align-items:center;justify-content:center;position:static;transform:none;margin:0 0 24px;padding:12px 16px;border:1px solid #22c55e;background:#14532d!important;color:#fff!important;font-size:16px;font-weight:700;letter-spacing:.5px;border-radius:12px;line-height:1.4}
.pp-landing #planosLanding .pp-plan-brand{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.pp-landing #planosLanding .pp-plan-brand img{width:64px;height:64px;object-fit:contain;background:#000;border:1px solid #333;border-radius:16px;padding:6px}
.pp-landing #planosLanding .pp-plan-brand>span{color:#ddd;font-size:14px;font-weight:700;letter-spacing:1px}
.pp-landing #planosLanding .plano-card h3{display:flex;align-items:center;gap:12px;font-size:32px!important;letter-spacing:0;color:#fff!important;font-weight:700}
.pp-landing #planosLanding .plano-preco{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:24px 0 18px}
.pp-landing #planosLanding .plano-preco .valor{font-size:clamp(48px,4.7vw,64px)!important;line-height:1.1;letter-spacing:-2px}
.pp-landing #planosLanding .plano-preco .moeda,
.pp-landing #planosLanding .plano-preco .periodo{font-size:21px!important;color:#eee!important}
.pp-landing #planosLanding .plano-desc{font-size:20px!important;line-height:1.65;color:#eee!important;min-height:110px}
.pp-landing #planosLanding .plano-desc strong{display:block;color:#86efac;font-size:21px;margin-top:8px}
.pp-landing #planosLanding .plano-recursos{display:grid;gap:14px;margin:26px 0 32px;padding:0;line-height:1.5}
.pp-landing #planosLanding .plano-recursos li{display:flex;align-items:center;gap:14px;margin:0;padding:15px 14px;font-size:21px!important;line-height:1.45;font-weight:700;color:#fff!important;background:#191919;border:1px solid #343434;border-radius:14px;min-width:0}
.pp-landing #planosLanding .pp-plan-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;font-size:25px;background:#11321e;border-radius:12px}
.pp-landing #planosLanding .pp-plan-benefit{color:#fff!important;overflow-wrap:anywhere}
.pp-landing #planosLanding .btn-plano{min-height:60px;font-size:18px!important;letter-spacing:.3px;padding:18px 24px}
.pp-landing #planosLanding .planos-mensagem{font-size:19px!important;line-height:1.7;color:#eee!important;max-width:800px;margin:30px auto 0}
@media(max-width:760px){
.pp-landing #planosLanding .planos-grade{grid-template-columns:1fr}
.pp-landing #planosLanding .plano-card{padding:26px 22px!important}
.pp-landing #planosLanding .plano-desc{font-size:18px!important;min-height:0}
.pp-landing #planosLanding .plano-recursos li{font-size:19px!important;padding:13px 10px;gap:11px}
.pp-landing #planosLanding .plano-preco .valor{font-size:52px!important}
.pp-landing #planosLanding .plano-preco .moeda,.pp-landing #planosLanding .plano-preco .periodo{font-size:18px!important}
}
/* White logo tile keeps the black Preço lettering visible. */
.pp-landing #planosLanding .pp-plan-brand img{background:#fff!important;border-color:#ddd!important;width:76px;height:76px;padding:8px;border-radius:16px}

.pp-landing #planosLanding .planos-grade{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px;gap:20px}
.pp-landing #planosLanding .plano-card{padding:26px!important}
.pp-landing #planosLanding .plano-recursos li{font-size:19px!important}
.pp-landing #planosLanding .plano-preco .valor{font-size:52px!important}
.pp-landing .pp-marquee-description{max-width:760px}
.pp-radar-encarte{margin:0 0 22px;padding:16px;border:1px solid #22c55e;border-radius:14px;background:#10291b;color:#fff}
.pp-radar-encarte .radar-resumo-central{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0;color:#fff;background:transparent}
.pp-radar-encarte strong{display:block;color:#fff;font-size:19px}
.pp-radar-encarte small,.pp-radar-encarte p,.pp-radar-encarte time{color:#ddd}
.pp-radar-encarte button{background:#15803d;color:#fff;border:0;border-radius:8px;padding:10px 14px;cursor:pointer}
@media(max-width:1050px){.pp-landing #planosLanding .planos-grade{grid-template-columns:1fr;max-width:560px}}
@media print{.pp-radar-encarte{display:none!important}}