/* Real Zoro Pages v32 — refinamento pontual sobre o visual v31.
   Sem modificações em Pix, verificações de email, catálogo ou reservas. */

/* As três telas de entrada usam uma proporção menor e mais equilibrada.
   Os preços precisam caber no primeiro viewport em desktop comum. */
body.page-home .home-hero{min-height:auto;padding-top:clamp(100px,11vh,123px);padding-bottom:65px}
.home-hero h1{font-size:clamp(2.75rem,4.25vw,4.65rem);line-height:1.055;letter-spacing:-.063em;max-width:680px}
.home-hero .hero-pill{margin-bottom:1.2rem}
.home-hero .hero-lead{line-height:1.7;margin-bottom:1.2rem}
.home-brand-visual.rz-solo-brand,.page-visual.rz-solo-brand{min-height:clamp(285px,27vw,400px)}
.home-brand-visual.rz-solo-brand .home-brand-logo{width:min(84%,320px);max-width:320px}
.lp-visual.rz-solo-brand img{width:min(84%,190px);max-width:190px;max-height:200px}
.page-hero{padding-top:clamp(98px,11vh,122px);padding-bottom:24px}
.page-hero h1{font-size:clamp(2.75rem,4.15vw,4.3rem);line-height:1.07;letter-spacing:-.06em}
.page-hero .rz-product-eyebrow{margin-bottom:1rem}
.page-hero p{line-height:1.68;margin:0 0 1.15rem}
.page-hero .page-actions{margin-top:.95rem}
.page-hero-grid{gap:clamp(1.1rem,3.1vw,3.5rem);align-items:center}
.lp-hero,.zp-hero{padding-bottom:28px}
.zp-visual.rz-solo-brand img{width:min(93%,395px);max-width:395px}

/* Make ZPack prices fully legible, including the cents at narrower desktop widths. */
.rz-price-quicklook{margin-top:1.05rem;padding-top:1rem}
.rz-price-quicklook-label{margin-bottom:.55rem}
.rz-zpack-prices{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
.rz-zpack-prices .rz-price-quick{min-height:105px;padding:.76rem .92rem;gap:.18rem}
.rz-zpack-prices .rz-price-quick strong{font-size:clamp(1.25rem,1.75vw,1.68rem);white-space:nowrap;letter-spacing:-.045em;line-height:1.15;font-variant-numeric:tabular-nums}
.rz-zpack-prices .rz-price-quick>span{padding-right:1.3rem}
.rz-zpack-prices .rz-price-quick small{font-size:.65rem}
/* The full plan cards remain in place below the hero. */
.page-zpack .sec-optimization{padding-top:42px}

/* Shield: true 3-axis sphere traversal with gentle ring gimbal; original shield stays. */
.shield-wrap .shield .ring{
 transform:rotateX(var(--orbit-pitch,63deg)) rotateY(var(--orbit-yaw,0deg)) rotateZ(var(--orbit-roll,0deg));
 transition:none!important;
}
.shield-wrap .shield .orbit-dot{will-change:transform,opacity;transition:none!important}
.shield-wrap .shield{touch-action:none}

@media (min-width:861px) and (max-height:810px){
  .page-hero{padding-top:92px;padding-bottom:18px}
  .page-hero .page-visual.rz-solo-brand{min-height:290px}
  .page-hero h1{font-size:clamp(2.5rem,3.65vw,3.8rem)}
  .rz-price-quicklook{margin-top:.8rem;padding-top:.8rem}
  .rz-price-quicklook-label{margin-bottom:.42rem}
  .rz-zpack-prices .rz-price-quick{min-height:99px}
}
@media (max-width:860px){
  .page-hero{padding-top:96px}
  .page-hero h1{font-size:clamp(2.5rem,7.7vw,4.1rem)}
  .rz-price-quicklook{margin-top:1rem}
  .zp-visual.rz-solo-brand img{width:min(90vw,340px);max-width:340px}
  .lp-visual.rz-solo-brand img{width:min(55vw,190px);max-width:190px}
}
@media (max-width:600px){
  body.page-home .home-hero{padding-top:104px;padding-bottom:55px}
  .home-hero h1{font-size:clamp(2.5rem,10vw,3.55rem)}
  .page-hero h1{font-size:clamp(2.4rem,9.6vw,3.45rem)}
  .page-hero{padding-top:103px}
  .page-visual.rz-solo-brand{min-height:210px}
  /* The floating mobile buybar covered the last plan cards in v31. */
  .page-zpack .mobile-buybar,.page-limpador .mobile-buybar{display:none!important}
  .page-zpack .page-actions,.page-limpador .page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .page-zpack .page-actions>a,.page-limpador .page-actions>a{width:auto;min-width:0;padding:.83rem .4rem;font-size:.8rem;text-align:center;white-space:nowrap}
  .lp-hero .rz-price-quicklook-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .lp-hero .rz-price-quicklook-grid>.rz-price-quick:last-child{grid-column:1/-1}
  .lp-hero .rz-price-quicklook-grid .rz-price-quick{min-height:105px;padding:.84rem .8rem}
  .lp-hero .rz-price-quicklook-grid .rz-price-quick strong{font-size:clamp(1.22rem,5vw,1.55rem)}
  .rz-zpack-prices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rz-zpack-prices .rz-price-quick{min-height:104px;padding:.8rem .78rem}
  .rz-zpack-prices .rz-price-quick strong{font-size:clamp(1.18rem,4.6vw,1.62rem)}
  .rz-price-quicklook-label{flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){
 .shield-wrap .shield .ring{transition:none!important}
}

/* v33: manter a próxima seção fora da primeira tela, sem ocultá-la ao rolar.
   No início, alinhar o conteúdo ao topo preserva suas posições atuais. */
body.page-home .home-hero{min-height:100vh;min-height:100svh;align-items:flex-start}
body.page-limpador .page-hero,body.page-zpack .page-hero{min-height:100vh;min-height:100svh}


/* v34 — refinamento solicitado: centralização real, menos espaço vazio,
   âncoras mais justas, preços mais organizados e seção ZPack mais limpa. */
html{scroll-padding-top:74px}
#projetos,#confianca,#interface,#recursos,#novidades,#preco,#otimizacoes,#planos-zpack,#termos-zpack,#faq{scroll-margin-top:74px}

body.page-home .home-hero,
body.page-limpador .page-hero,
body.page-zpack .page-hero{
  min-height:calc(100svh - 8px);
  display:flex;
  align-items:center;
}
body.page-home .home-hero{padding-top:118px;padding-bottom:38px}
body.page-limpador .page-hero,
body.page-zpack .page-hero{padding-top:112px;padding-bottom:32px}
body.page-home .home-hero>.wrap,
.page-hero>.wrap{width:100%}
.home-hero-grid,.page-hero-grid{align-items:center}

/* Evita a sensação de “buraco” ao entrar nas seções pelos links do topo. */
.home-solutions,.home-trust{padding-top:54px}
.page-zpack .sec-optimization,
#interface,#recursos,#novidades,#preco,.sec-security,.sec-compare,.sec-faq{padding-top:54px}
.page-zpack .sec-optimization{padding-bottom:44px}

/* Quick prices: mais alinhados, compactos e legíveis. */
.rz-price-quicklook{margin-top:1.15rem;padding-top:1rem}
.rz-price-quicklook-grid{align-items:stretch;gap:.8rem}
.rz-price-quick{
  min-height:116px;
  justify-content:flex-start;
  gap:.25rem;
  padding:1rem 1.05rem;
  border-radius:18px;
}
.rz-price-quick>span{font-size:.62rem;letter-spacing:.085em}
.rz-price-quick strong{font-size:clamp(1.45rem,2.1vw,1.95rem);line-height:1.06}
.rz-price-quick small{font-size:.69rem;line-height:1.45}
.rz-zpack-prices{grid-template-columns:repeat(4,minmax(0,1fr));gap:.72rem}
.rz-zpack-prices .rz-price-quick{min-height:112px;padding:.95rem .98rem}
.rz-zpack-prices .rz-price-quick strong{font-size:clamp(1.38rem,1.95vw,1.82rem)}

/* Melhor equilíbrio visual dos heróis dos produtos. */
.lp-hero .page-hero-grid,.zp-hero .page-hero-grid{margin-bottom:.3rem}
.lp-hero .page-visual.rz-solo-brand,.zp-hero .page-visual.rz-solo-brand{align-self:center}
.lp-hero .rz-price-quicklook,.zp-hero .rz-price-quicklook{max-width:100%}

/* Organização da área explicativa do ZPack. */
.page-zpack .sec-optimization .sec-head{max-width:860px;margin:0 auto 1.55rem;text-align:center}
.page-zpack .sec-optimization .sec-title{max-width:900px;margin-left:auto;margin-right:auto;line-height:1.08}
.page-zpack .sec-optimization .sec-desc{max-width:720px;margin:.8rem auto 0;line-height:1.72}
.zpack-levels-intro{
  max-width:880px;
  margin:0 auto 1rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:.8rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  border:1px solid rgba(52,211,153,.12);
  background:linear-gradient(135deg,rgba(52,211,153,.045),rgba(255,255,255,.012));
  text-align:left;
}
.zpack-levels-intro > span{
  display:grid;place-items:center;
  width:34px;height:34px;border-radius:999px;
  color:#bbf7d0;background:rgba(52,211,153,.09);border:1px solid rgba(52,211,153,.18);
  font-weight:800
}
.zpack-levels-intro strong{display:block;color:#eefcf4;margin-bottom:.2rem}
.zpack-levels-intro p{margin:0;color:var(--text-secondary);font-size:.84rem;line-height:1.65}
.zpack-inline-note{display:inline-block;margin-left:.35rem;color:#d8ffe6}
.zpack-info-strip{
  max-width:1220px;
  margin:0 auto 1.4rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
  padding:1rem 1.1rem;
  border:1px solid rgba(116,230,178,.18);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(61,162,108,.065),rgba(255,255,255,.01));
}
.zpack-info-copy{flex:1;min-width:260px}
.zpack-info-copy strong{display:block;color:#dffdec;font-size:.98rem;margin-bottom:.18rem}
.zpack-info-copy p{margin:0;color:#b9d8c6;font-size:.82rem;line-height:1.58}
.zpack-info-link{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:.82rem 1rem;border-radius:14px;
  border:1px solid rgba(116,230,178,.26);
  background:rgba(100,226,157,.10);color:#d2ffe7;font-weight:800;text-decoration:none;
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.zpack-info-link:hover{transform:translateY(-2px);background:rgba(100,226,157,.14);border-color:rgba(116,230,178,.42)}

@media (max-width:980px){
  html{scroll-padding-top:70px}
  #projetos,#confianca,#interface,#recursos,#novidades,#preco,#otimizacoes,#planos-zpack,#termos-zpack,#faq{scroll-margin-top:70px}
  body.page-home .home-hero,body.page-limpador .page-hero,body.page-zpack .page-hero{min-height:auto}
  body.page-home .home-hero{padding-top:108px;padding-bottom:34px}
  body.page-limpador .page-hero,body.page-zpack .page-hero{padding-top:104px;padding-bottom:28px}
  .home-solutions,.home-trust,.page-zpack .sec-optimization,#interface,#recursos,#novidades,#preco,.sec-security,.sec-compare,.sec-faq{padding-top:48px}
  .rz-price-quicklook-grid{gap:.65rem}
  .rz-zpack-prices{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  html{scroll-padding-top:66px}
  #projetos,#confianca,#interface,#recursos,#novidades,#preco,#otimizacoes,#planos-zpack,#termos-zpack,#faq{scroll-margin-top:66px}
  .rz-price-quick{min-height:108px;padding:.92rem .82rem}
  .rz-price-quick strong{font-size:clamp(1.26rem,6vw,1.7rem)}
  .zpack-levels-intro{grid-template-columns:1fr;text-align:center}
  .zpack-levels-intro > span{margin:0 auto}
  .zpack-inline-note{display:block;margin:.35rem 0 0}
  .zpack-info-strip{padding:.95rem 1rem}
  .zpack-info-link{width:100%}
}


/* v35 — ajustes finos pedidos: âncoras mais no topo e remoção de rótulos extras. */
html{scroll-padding-top:60px}
#projetos,#interface,#preco,#planos-zpack{scroll-margin-top:60px}

/* Subir mais os blocos ao navegar pelas âncoras. */
.home-solutions{padding-top:20px!important}
#interface,#preco{padding-top:26px!important}
.page-zpack .sec-optimization{padding-top:30px!important}

/* Evitar sobra visual acima dos títulos ao abrir seções específicas. */
#projetos .sec-head,
#interface .sec-head,
#preco .sec-head,
.page-zpack .sec-optimization .sec-head{margin-top:0!important}

/* Sem os rótulos pequenos do topo, o hero mantém o alinhamento limpo. */
.page-hero h1{margin-top:0}

@media (max-width:980px){
  html{scroll-padding-top:58px}
  #projetos,#interface,#preco,#planos-zpack{scroll-margin-top:58px}
  .home-solutions{padding-top:18px!important}
  #interface,#preco{padding-top:24px!important}
  .page-zpack .sec-optimization{padding-top:28px!important}
}
@media (max-width:600px){
  html{scroll-padding-top:56px}
  #projetos,#interface,#preco,#planos-zpack{scroll-margin-top:56px}
}


/* v36 — home hero e cards de projetos: visual mais limpo, logos sem moldura,
   headline nova e prova de confiança próxima aos CTAs. */
.page-home .hero-pill{display:none!important}
.page-home .home-hero h1{max-width:610px}
.page-home .hero-lead{max-width:650px}
.page-home .hero-trust-note{
  display:flex;
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
  margin-top:1rem;
  color:#bfc3cc;
  font-size:.88rem;
  line-height:1.5;
}
.page-home .hero-trust-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:.38rem .82rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  color:#fff;
  font-weight:800;
  letter-spacing:-.01em;
}
.page-home .hero-trust-copy{color:#9ea3af}

/* Cards de projetos sem o quadrado em volta das logos e com melhor leitura visual. */
.home-solution-head{align-items:flex-start}
.home-solution-icon,
.home-solution.zpack .home-solution-icon{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:block!important;
}
.home-solution-icon::before,
.home-solution-icon::after,
.home-solution.zpack .home-solution-icon::before,
.home-solution.zpack .home-solution-icon::after{display:none!important;content:none!important}
.home-solution:not(.zpack) .home-solution-icon img{
  max-width:90px!important;
  max-height:90px!important;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.38))!important;
}
.home-solution.zpack .home-solution-logo{
  width:188px!important;
  max-width:188px!important;
  max-height:90px!important;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.38))!important;
}

@media (max-width:768px){
  .page-home .hero-trust-note{margin-top:.9rem;font-size:.83rem}
  .home-solution:not(.zpack) .home-solution-icon img{max-width:76px!important;max-height:76px!important}
  .home-solution.zpack .home-solution-logo{width:156px!important;max-width:156px!important;max-height:76px!important}
}


/* v38 — home alignment, hero logo cleanup, Pix badges and ZPack cleanup */
.page-home .hero-actions{
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
}
.page-home .hero-actions .btn-main,
.page-home .hero-actions .btn-ghost{
  min-width:170px;
  justify-content:center;
  text-align:center;
}
.page-home .hero-inline-proof{
  display:inline-block;
  margin-left:.15rem;
  color:#f0f3f8;
  font-size:.96rem;
  font-weight:800;
  letter-spacing:-.01em;
  white-space:nowrap;
}
.page-home .hero-trust-note,.page-home .hero-trust-count,.page-home .hero-trust-copy{display:none!important}

/* Remove o círculo/placa do Z da home e destaca a logo. */
.page-home .home-brand-visual{
  min-height:430px;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
.page-home .home-brand-visual::before,
.page-home .home-brand-visual::after{display:none!important;content:none!important}
.page-home .home-brand-logo{
  width:clamp(250px,23vw,330px);
  height:auto;
  filter:drop-shadow(0 24px 50px rgba(0,0,0,.44));
}
.page-home .home-brand-visual:hover{transform:none!important}
.page-home .home-brand-visual:hover .home-brand-logo{transform:none!important;filter:drop-shadow(0 24px 50px rgba(0,0,0,.44))}

/* Badges Pix nos cards iniciais */
.rz-price-quick{position:relative}
.rz-quick-pix{
  position:absolute;
  top:2.15rem;
  right:2.9rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:.12rem .48rem;
  border-radius:999px;
  border:1px solid rgba(67,196,143,.26);
  background:rgba(67,196,143,.11);
  color:#7fffc8;
  font-size:.62rem;
  font-style:normal;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rz-price-quick strong{padding-right:3.2rem}

/* ZPack simplificado */
.zpack-game-note{
  max-width:420px;
  margin:0 auto 1.2rem;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:.82rem 1rem;
  border-radius:999px;
  border:1px solid rgba(52,211,153,.18);
  background:rgba(52,211,153,.06);
  color:#d8ffe8;
  font-weight:700;
  text-align:center;
}
.page-zpack .zpack-levels-intro,
.page-zpack .zpack-info-strip,
.page-zpack .rz24-plan-preview-link{display:none!important}

@media (max-width:980px){
  .page-home .hero-actions .btn-main,
  .page-home .hero-actions .btn-ghost{min-width:162px}
  .page-home .hero-inline-proof{width:100%;margin-left:0;margin-top:.1rem}
  .page-home .home-brand-logo{width:clamp(220px,44vw,290px)}
}
@media (max-width:768px){
  .page-home .hero-actions .btn-main,
  .page-home .hero-actions .btn-ghost{width:auto;flex:1 1 calc(50% - .35rem);min-width:0}
  .page-home .hero-inline-proof{font-size:.9rem}
  .rz-quick-pix{top:2.08rem;right:2.55rem}
}
@media (max-width:600px){
  .page-home .hero-inline-proof{width:100%}
  .page-home .home-brand-visual{min-height:260px}
  .page-home .home-brand-logo{width:min(62vw,250px)}
  .rz-quick-pix{top:2rem;right:2.35rem;font-size:.58rem}
}
