/* Camada de movimento e navegação responsiva — Compro Lote */
:root { --motion-accent: #73f5cb; }

.site-header { transition: background .32s ease, box-shadow .32s ease, backdrop-filter .32s ease; }
.site-header.is-scrolled { background: rgba(3,29,45,.88); box-shadow: 0 10px 32px rgba(1,25,40,.23); backdrop-filter: blur(16px); position: fixed; }
.site-header.is-scrolled .header-inner { height: 78px; }
.hero { isolation:isolate; }
.hero:after { content:""; pointer-events:none; z-index:0; position:absolute; inset:-16%; background:radial-gradient(circle at 22% 62%,rgba(115,245,203,.25),transparent 23%),radial-gradient(circle at 80% 22%,rgba(255,255,255,.12),transparent 20%),radial-gradient(circle at 58% 76%,rgba(11,192,221,.18),transparent 27%); will-change:transform,opacity; animation:hero-aurora 16s ease-in-out infinite; }
.hero-grid { z-index: 3; }
.hero-shape { will-change:transform; }
.hero-shape-one { animation:ring-drift-one 15s ease-in-out infinite; }
.hero-shape-two { animation:ring-drift-two 18s ease-in-out infinite; }
.hero-visual { isolation:isolate; position:relative; }
.hero-visual:before { content:""; z-index:-1; pointer-events:none; background:radial-gradient(circle,rgba(115,245,203,.27),transparent 65%); border-radius:50%; width:390px; height:390px; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) scale(.92); will-change:transform,opacity; animation:visual-halo 6s ease-in-out infinite; }
.hero-visual:after { content:""; z-index:-1; pointer-events:none; border:1px solid rgba(167,255,231,.35); border-radius:50%; width:350px; height:350px; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) scale(.72); will-change:transform,opacity; animation:visual-ring 5.2s cubic-bezier(.18,.78,.26,1) infinite; }
.device-art { transform:translateZ(0); will-change:transform; transition:transform .34s cubic-bezier(.2,.75,.22,1); }
.art-coin { animation: coin-bob 4.2s ease-in-out infinite; }
.art-tower { animation: tower-bob 5.5s ease-in-out infinite; }
.art-mini { animation: mini-bob 4.8s ease-in-out infinite; }
.art-screen:after { content:""; pointer-events:none; opacity:.7; background:linear-gradient(90deg,transparent,rgba(115,245,203,.5),transparent); width:42%; height:115%; position:absolute; top:-8%; left:-48%; transform:skewX(-20deg); will-change:transform; animation:screen-scan 5.5s ease-in-out infinite; }
.hero-payment { color:#fff; background:rgba(3,35,47,.28); border:1px solid rgba(255,255,255,.24); border-radius:14px; align-items:center; gap:11px; width:max-content; max-width:100%; margin:-6px 0 24px; padding:9px 14px 9px 9px; display:flex; box-shadow:0 12px 28px rgba(1,30,43,.16); backdrop-filter:blur(10px); }
.hero-payment-icon { color:#063b5a; background:#73f5cb; border-radius:10px 10px 10px 3px; place-items:center; flex:0 0 38px; width:38px; height:38px; font-size:20px; font-weight:900; display:grid; box-shadow:0 7px 16px rgba(0,20,33,.2); }
.hero-payment strong, .hero-payment small { display:block; }
.hero-payment strong { font-size:13px; line-height:1.15; }
.hero-payment small { color:rgba(255,255,255,.76); margin-top:3px; font-size:10px; line-height:1.25; }
.feature-grid article, .equipment-card, .audience-card, .step, .impact-list article, .trust-card, .map-panel { will-change: transform; }
.feature-grid article:before { content:""; position:absolute; left:28px; right:28px; bottom:0; height:3px; background:linear-gradient(90deg,var(--blue),var(--green)); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.feature-grid article:hover:before { transform:scaleX(1); }
.equipment-card:before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(125deg,transparent 31%,rgba(255,255,255,.13) 47%,transparent 64%); transform:translateX(-120%); transition:transform .7s ease; }
.equipment-card:hover:before { transform:translateX(120%); }
.floating-whatsapp { animation: whatsapp-pulse 2.8s ease-in-out infinite; }
.scroll-progress { height:3px; width:var(--scroll-progress,0%); position:fixed; z-index:80; left:0; top:0; background:linear-gradient(90deg,#73f5cb,#fff); box-shadow:0 0 12px rgba(115,245,203,.8); transition:width .08s linear; }

.menu-toggle, .mobile-menu { display:none; }

.motion-ready .reveal { opacity:0; transform:translateY(28px); transition:opacity .72s ease, transform .72s cubic-bezier(.2,.72,.25,1); }
.motion-ready .reveal.revealed { opacity:1; transform:translateY(0); }
.motion-ready .equipment-card.reveal:nth-child(2), .motion-ready .impact-list article.reveal:nth-child(2) { transition-delay:.12s; }
.motion-ready .equipment-card.reveal:nth-child(3), .motion-ready .impact-list article.reveal:nth-child(3) { transition-delay:.2s; }
.motion-ready .equipment-card.reveal:nth-child(4) { transition-delay:.08s; }
.motion-ready .equipment-card.reveal:nth-child(5) { transition-delay:.16s; }
.motion-ready .equipment-card.reveal:nth-child(6) { transition-delay:.24s; }

@keyframes hero-aurora { 0%,100% { opacity:.34; transform:translate3d(-2%,-1%,0) rotate(-3deg); } 50% { opacity:.75; transform:translate3d(3%,2%,0) rotate(3deg); } }
@keyframes ring-drift-one { 0%,100% { transform:translate3d(0,0,0) rotate(0); } 50% { transform:translate3d(28px,18px,0) rotate(14deg); } }
@keyframes ring-drift-two { 0%,100% { transform:translate3d(0,0,0) rotate(0); } 50% { transform:translate3d(-24px,-16px,0) rotate(-16deg); } }
@keyframes visual-halo { 0%,100% { opacity:.42; transform:translate(-50%,-50%) scale(.92); } 50% { opacity:.8; transform:translate(-50%,-50%) scale(1.11); } }
@keyframes visual-ring { 0% { opacity:.7; transform:translate(-50%,-50%) scale(.72); } 72%,100% { opacity:0; transform:translate(-50%,-50%) scale(1.35); } }
@keyframes screen-scan { 0%,18% { transform:translateX(0) skewX(-20deg); } 62%,100% { transform:translateX(430%) skewX(-20deg); } }
@keyframes coin-bob { 0%,100% { transform:rotate(9deg) translateY(0); } 50% { transform:rotate(4deg) translateY(-13px); } }
@keyframes tower-bob { 0%,100% { transform:rotate(4deg) translateY(0); } 50% { transform:rotate(6deg) translateY(-9px); } }
@keyframes mini-bob { 0%,100% { transform:rotate(-7deg) translateY(0); } 50% { transform:rotate(-4deg) translateY(-10px); } }
@keyframes whatsapp-pulse { 0%,100% { box-shadow:0 15px 38px #0e194240,0 0 0 0 rgba(50,223,159,.3); } 48% { box-shadow:0 15px 38px #0e194240,0 0 0 13px rgba(50,223,159,0); } }

@media (width <= 1020px) {
  .header-inner { gap: 14px; }
  .menu-toggle { color:var(--white); cursor:pointer; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.3); border-radius:50%; width:43px; height:43px; padding:0; place-items:center; display:grid; }
  .menu-toggle span, .menu-toggle:before, .menu-toggle:after { content:""; background:currentColor; border-radius:2px; width:18px; height:2px; display:block; transition:transform .22s ease, opacity .22s ease; }
  .menu-toggle span { margin:4px 0; }
  .menu-toggle[aria-expanded="true"]:before { transform:translateY(6px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span { opacity:0; }
  .menu-toggle[aria-expanded="true"]:after { transform:translateY(-6px) rotate(-45deg); }
  .mobile-menu { color:var(--white); opacity:0; pointer-events:none; background:rgba(3,29,45,.96); border-top:1px solid rgba(255,255,255,.14); padding:22px 0 28px; transition:opacity .22s ease; position:fixed; z-index:18; inset:78px 0 auto; display:block; backdrop-filter:blur(18px); }
  .mobile-menu.is-open { opacity:1; pointer-events:auto; }
  .mobile-menu .container { display:grid; gap:3px; }
  .mobile-menu a { border-bottom:1px solid rgba(255,255,255,.1); padding:15px 4px; font-weight:750; }
  .mobile-menu a:last-child { color:#082a20; background:#73f5cb; border:0; border-radius:99px; text-align:center; margin-top:12px; padding:14px 18px; }
}

@media (width <= 720px) {
  .header-cta { display:none; }
  .header-inner { justify-content:space-between; }
  .hero:after { inset:-28%; animation-duration:19s; }
  .hero-copy { position:relative; z-index:2; }
  .hero-payment { text-align:left; margin-left:auto; margin-right:auto; }
  .hero-visual { filter:drop-shadow(0 15px 28px rgba(1,30,43,.22)); }
  .feature-grid article:before { left:12px; right:12px; }
  .floating-whatsapp { animation-duration:3.4s; }
}

@media (prefers-reduced-motion: reduce) {
  .hero:after, .hero-shape, .hero-visual:before, .hero-visual:after, .art-screen:after, .art-coin, .art-tower, .art-mini, .floating-whatsapp { animation:none; }
  .motion-ready .reveal { opacity:1; transform:none; transition:none; }
}

/* Cena de pagamento: movimento curto, com composição na GPU para não pesar o site. */
.payment-spotlight { color:var(--white); background:linear-gradient(120deg,#031d2d 0%,#063b5a 48%,#075f6b 100%); padding:116px 0; position:relative; overflow:hidden; }
.payment-spotlight:before { content:""; pointer-events:none; background:radial-gradient(circle at 20% 80%,rgba(115,245,203,.2),transparent 20%),radial-gradient(circle at 86% 20%,rgba(27,188,198,.22),transparent 27%); position:absolute; inset:0; }
.payment-spotlight-grid { grid-template-columns:.9fr 1.1fr; align-items:center; gap:72px; display:grid; position:relative; }
.payment-copy { max-width:530px; }
.payment-copy h2 { letter-spacing:-.05em; margin:0 0 25px; font-size:clamp(40px,4.5vw,60px); line-height:1.04; }
.payment-copy h2 em { color:#73f5cb; font-style:normal; }
.payment-copy>p { color:rgba(255,255,255,.72); max-width:480px; margin:0 0 28px; font-size:16px; line-height:1.8; }
.payment-points { color:#d8fff0; flex-wrap:wrap; gap:10px; margin:0 0 31px; display:flex; }
.payment-points span { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); border-radius:99px; padding:9px 12px; font-size:11px; font-weight:750; }
.payment-scene { isolation:isolate; aspect-ratio:16/9; width:min(100%,620px); margin:0 0 0 auto; position:relative; }
.payment-scene:before { content:""; z-index:-2; background:linear-gradient(145deg,rgba(115,245,203,.42),rgba(10,166,184,.06) 58%,transparent); border-radius:28px; position:absolute; inset:16px -12px -12px 28px; transform:rotate(2deg); }
.payment-scene img { z-index:1; object-fit:cover; border:1px solid rgba(255,255,255,.17); border-radius:24px; width:100%; height:100%; position:absolute; inset:0; box-shadow:0 30px 70px rgba(0,16,29,.38); }
.payment-glow { pointer-events:none; z-index:2; filter:blur(10px); opacity:.7; background:radial-gradient(circle,rgba(115,245,203,.62),rgba(115,245,203,0) 68%); border-radius:50%; width:160px; height:160px; position:absolute; top:39%; left:43%; will-change:transform,opacity; animation:payment-glow 6.2s ease-in-out infinite; }
.payment-orbit { pointer-events:none; z-index:2; border:1px solid rgba(115,245,203,.35); border-radius:50%; width:240px; height:240px; position:absolute; top:18%; left:35%; will-change:transform; animation:payment-orbit 13s linear infinite; }
.cash-trail { z-index:4; pointer-events:none; opacity:0; background:linear-gradient(90deg,transparent,#fff4ad,#73f5cb,transparent); border-radius:99px; width:150px; height:3px; position:absolute; top:55%; left:36%; transform-origin:right; will-change:transform,opacity; animation:cash-trail 6.2s cubic-bezier(.2,.75,.25,1) infinite; }
.cash-glint { z-index:5; color:#fff4ad; opacity:0; position:absolute; top:48%; left:49%; font-size:31px; will-change:transform,opacity; animation:cash-glint 6.2s ease-out infinite; }
.payment-spark { z-index:4; color:#d5fff0; opacity:0; position:absolute; font-size:23px; will-change:transform,opacity; animation:payment-spark 6.2s ease-out infinite; }
.spark-a { top:28%; left:43%; }
.spark-b { top:61%; left:56%; animation-delay:.26s; }
@keyframes payment-glow { 0%,14%,100% { opacity:.16; transform:scale(.72); } 42%,64% { opacity:.78; transform:scale(1.16); } }
@keyframes payment-orbit { to { transform:rotate(360deg); } }
@keyframes cash-trail { 0%,18% { opacity:0; transform:translate3d(120px,0,0) scaleX(.15); } 29%,57% { opacity:1; transform:translate3d(-15px,0,0) scaleX(1); } 78%,100% { opacity:0; transform:translate3d(-45px,0,0) scaleX(.6); } }
@keyframes cash-glint { 0%,37% { opacity:0; transform:scale(.3) rotate(0); } 49%,64% { opacity:1; transform:scale(1.16) rotate(22deg); } 80%,100% { opacity:0; transform:scale(.58) rotate(70deg); } }
@keyframes payment-spark { 0%,39% { opacity:0; transform:scale(.35) rotate(0); } 48%,64% { opacity:1; transform:scale(1.12) rotate(24deg); } 82%,100% { opacity:0; transform:scale(.6) rotate(70deg); } }
@media (width <= 1020px) { .payment-spotlight-grid { grid-template-columns:1fr; gap:48px; } .payment-scene { margin:0; } }
@media (width <= 720px) { .payment-spotlight { padding:82px 0; } .payment-copy h2 { font-size:38px; } .payment-scene { width:100%; } .payment-points { gap:8px; } .payment-points span { padding:8px 10px; font-size:10px; } .payment-orbit { width:170px; height:170px; top:16%; left:36%; } .payment-glow { width:110px; height:110px; left:42%; } .cash-trail { width:108px; top:56%; } }
@media (prefers-reduced-motion: reduce) { .payment-glow, .payment-orbit, .cash-trail, .cash-glint, .payment-spark { animation:none; } }

/* Hero calmo: evita múltiplos loops simultâneos no primeiro viewport. */
.hero:after { inset:0; opacity:.52; transform:none; background:radial-gradient(circle at 17% 72%,rgba(115,245,203,.18),transparent 27%),radial-gradient(circle at 82% 22%,rgba(255,255,255,.09),transparent 25%); animation:none; }
.hero-shape, .hero-visual:before, .hero-visual:after, .art-screen:after, .art-coin, .art-tower, .art-mini, .hero .orbit-two, .hero .spark { animation:none !important; }
.hero-visual:before { opacity:.48; transform:translate(-50%,-50%) scale(.96); }
.hero-visual:after { opacity:.4; transform:translate(-50%,-50%) scale(.9); }
.art-screen:after { display:none; }
.device-art { transition:none; }

.contact-email { border-top:1px solid var(--line); margin:22px 0 0; padding-top:20px; }
.contact-email small { color:var(--purple); letter-spacing:.14em; margin-bottom:7px; font-size:10px; font-weight:900; display:block; }
.contact-email a { color:var(--blue); font-size:15px; font-weight:800; }
.contact-email a:hover { color:var(--purple); text-decoration:underline; }
