/* ================================================
   ALTA PERFORMANCE POSTURAL — home.css v3.0
   Fontes: Anton (títulos) + Figtree (corpo)
   ================================================ */

:root {
  --az: #2aa8e8;
  --azd: #1e8dd3;
  --esc: #04080f;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }

body {
  font-family:'Figtree',system-ui,sans-serif;
  background:var(--esc);
  color:#f0f4f8;
  overflow-x:hidden;
  cursor:none;
}

/* CURSOR — z-index abaixo do Bootstrap Modal (1055) */
.cur-dot {
  width:8px; height:8px; background:var(--az); border-radius:50%;
  position:fixed; pointer-events:none; z-index:1049;
  transform:translate(-50%,-50%);
  transition:width .2s,height .2s,background .2s;
}
.cur-dot.big { width:4px; height:4px; }

/* PARTÍCULAS */
#ptc { position:fixed; inset:0; z-index:0; pointer-events:none; }

/* NAV */
#main-nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  padding:18px 60px; display:flex; justify-content:space-between; align-items:center;
  transition:all .5s;
}
#main-nav.solid {
  background:rgba(4,8,15,.95); backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(42,168,232,.08); padding:13px 60px;
}
.nav-logo { display:flex; align-items:center; gap:12px; text-decoration:none; }
.nav-logo img { height:32px; width:auto; }
.nav-logo-txt {
  font-family:'Figtree',sans-serif; font-size:10px; font-weight:800;
  letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.7); line-height:1.4;
}
.nav-logo-txt span { color:var(--az); display:block; }
.nav-links { display:flex; gap:32px; list-style:none; }
.nav-links a {
  font-size:11px; color:rgba(255,255,255,.4); text-decoration:none;
  letter-spacing:.12em; text-transform:uppercase; transition:color .3s; position:relative;
}
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:1px; background:var(--az); transition:width .3s; }
.nav-links a:hover { color:white; }
.nav-links a:hover::after { width:100%; }
.btn-nav {
  font-family:'Figtree',sans-serif; font-size:11px; font-weight:700;
  color:var(--az); border:1px solid var(--az); padding:10px 24px;
  letter-spacing:.12em; text-transform:uppercase; background:transparent; cursor:pointer;
  transition:all .3s; clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
}
.btn-nav:hover { background:var(--az); color:white; }
.nav-ham { display:none; width:38px; height:38px; border:1px solid rgba(255,255,255,.15); border-radius:50%; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; }
.nav-ham span { display:block; width:15px; height:1.5px; background:white; }

/* MOBILE MENU */
.nav-mobile-menu {
  position:fixed; top:0; left:0; right:0; bottom:0; z-index:190;
  background:rgba(4,8,15,.98); display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:28px;
  transform:translateX(100%); transition:transform .4s ease;
}
.nav-mobile-menu.open { transform:translateX(0); }
.nav-mobile-menu a { font-family:'Anton',sans-serif; font-size:2.5rem; font-weight:400; letter-spacing:.05em; text-transform:uppercase; color:rgba(255,255,255,.7); text-decoration:none; transition:color .3s; }
.nav-mobile-menu a:hover { color:var(--az); }
.nav-mobile-btn { background:var(--az) !important; color:white !important; padding:12px 40px; font-size:1.2rem !important; clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); }

/* MESSAGES */
.messages-wrap { position:fixed; top:90px; right:20px; z-index:9999; max-width:400px; display:flex; flex-direction:column; gap:10px; }
.msg { padding:14px 20px; border-radius:12px; font-size:14px; display:flex; justify-content:space-between; align-items:center; gap:12px; animation:slideIn .4s ease; }
.msg button { background:none; border:none; cursor:pointer; font-size:18px; color:inherit; opacity:.7; }
.msg-success { background:#d4edda; color:#155724; }
.msg-danger { background:#f8d7da; color:#721c24; }
.msg-info { background:#d1ecf1; color:#0c5460; }
@keyframes slideIn { from { opacity:0; transform:translateX(60px); } to { opacity:1; transform:translateX(0); } }

/* MAIN */
main { position:relative; z-index:2; }

/* HERO */
.hero {
  position:relative; height:100vh; min-height:700px;
  display:flex; align-items:center; overflow:hidden;
}
.hero-photo {
  position:absolute; inset:0;
  background:url('/static/images/hero.jpg') center 50%/cover no-repeat;
  opacity:.42; z-index:0;
}
.hero-logo-shirt {
  position:absolute; right:18%; bottom:28%; width:110px; height:auto;
  z-index:3; opacity:.48;
  filter:drop-shadow(0 0 18px rgba(42,168,232,.7)) brightness(1.5);
  pointer-events:none;
}
.hero-overlay {
  position:absolute; inset:0; z-index:2;
  background:linear-gradient(180deg,rgba(4,8,15,.35) 0%,rgba(4,8,15,.55) 45%,rgba(4,8,15,.97) 100%);
}
.hero-grid {
  position:absolute; inset:0; z-index:2;
  background-image:linear-gradient(rgba(42,168,232,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(42,168,232,.025) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%);
}
.hero-ring { position:absolute; border-radius:50%; border:1px solid rgba(42,168,232,.1); animation:spin 22s linear infinite; z-index:2; }
.ring1 { width:600px; height:600px; top:-100px; right:-120px; }
.ring2 { width:400px; height:400px; top:-20px; right:-40px; border-color:rgba(42,168,232,.05); animation-direction:reverse; animation-duration:15s; }
@keyframes spin { to { transform:rotate(360deg); } }

.hero-content { position:relative; z-index:4; padding:0 60px; max-width:660px; }

.hero-tag {
  display:inline-flex; align-items:center; gap:10px;
  font-size:10px; font-weight:700; letter-spacing:.3em; text-transform:uppercase;
  color:var(--az); margin-bottom:28px; opacity:0; transform:translateY(20px);
  animation:fadeUp .8s ease .3s forwards;
}
.hero-tag::before { content:''; width:32px; height:1px; background:var(--az); }

.hero-title {
  font-family:'Anton',sans-serif; font-size:clamp(4rem,8vw,7rem);
  font-weight:400; line-height:.95; letter-spacing:.01em; text-transform:uppercase;
  margin-bottom:28px; overflow:hidden;
}
.hero-title .line { display:block; opacity:0; transform:translateY(100%); animation:slideUp .9s cubic-bezier(.16,1,.3,1) forwards; }
.hero-title .line:nth-child(1) { animation-delay:.5s; }
.hero-title .line:nth-child(2) { animation-delay:.65s; }
.hero-title .line:nth-child(3) { animation-delay:.8s; color:var(--az); }

@keyframes slideUp { to { opacity:1; transform:translateY(0); } }
@keyframes fadeUp { to { opacity:1; transform:translateY(0); } }

.hero-sub {
  font-size:16px; color:rgba(255,255,255,.4); max-width:500px; line-height:1.8;
  margin-bottom:44px; opacity:0; animation:fadeUp .8s ease 1s forwards;
}
.hero-btns { display:flex; gap:16px; align-items:center; flex-wrap:wrap; opacity:0; animation:fadeUp .8s ease 1.1s forwards; }

.btn-hero-main {
  background:var(--az); color:white; border:none; padding:18px 36px;
  font-family:'Figtree',sans-serif; font-size:12px; font-weight:700;
  letter-spacing:.15em; text-transform:uppercase; cursor:pointer;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); transition:all .3s;
}
.btn-hero-main:hover { background:var(--azd); transform:translateY(-2px); }

.btn-hero-login {
  font-size:11px; font-weight:700; color:var(--az);
  border:1px solid var(--az); padding:14px 24px;
  letter-spacing:.12em; text-transform:uppercase;
  background:transparent; cursor:pointer; text-decoration:none;
  transition:all .3s;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  display:inline-flex; align-items:center;
}
.btn-hero-login:hover { background:var(--az); color:white; }

.btn-hero-ghost {
  font-size:14px; color:rgba(255,255,255,.4); border:none; background:none;
  cursor:pointer; display:flex; align-items:center; gap:10px; transition:color .3s; text-decoration:none;
}
.btn-hero-ghost:hover { color:white; }
.btn-hero-ghost .arrow {
  width:36px; height:36px; border:1px solid rgba(42,168,232,.3); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:16px; transition:all .3s;
}
.btn-hero-ghost:hover .arrow { border-color:var(--az); background:var(--az); color:white; }

.hero-floats {
  position:absolute; right:60px; top:50%; transform:translateY(-50%);
  z-index:4; display:flex; flex-direction:column; gap:14px;
  opacity:0; animation:fadeUp .8s ease 1.3s forwards;
}
.hero-float {
  background:rgba(255,255,255,.04); border:1px solid rgba(42,168,232,.18);
  backdrop-filter:blur(12px); padding:18px 22px; position:relative; min-width:180px;
}
.hero-float::before { content:''; position:absolute; top:0; left:0; width:3px; height:100%; background:var(--az); }
.hf-num { font-family:'Anton',sans-serif; font-size:2.2rem; font-weight:400; color:white; letter-spacing:.02em; line-height:1; }
.hf-num span { color:var(--az); }
.hf-lbl { font-size:9px; color:rgba(255,255,255,.35); letter-spacing:.15em; text-transform:uppercase; margin-top:4px; }

.scroll-ind {
  position:absolute; bottom:36px; left:60px; display:flex; align-items:center; gap:12px;
  z-index:4; opacity:0; animation:fadeUp .8s ease 1.4s forwards;
}
.scroll-line { width:40px; height:1px; background:rgba(42,168,232,.3); position:relative; overflow:hidden; }
.scroll-line::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:var(--az); animation:scrollLine 2s ease-in-out infinite; }
@keyframes scrollLine { 0%{left:-100%} 50%{left:0%} 100%{left:100%} }
.scroll-ind span { font-size:9px; letter-spacing:.2em; color:rgba(255,255,255,.25); text-transform:uppercase; }

/* STATS TICKER */
.stats-ticker {
  position:relative; z-index:2;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
  overflow:hidden; background:rgba(4,8,15,.6);
}
.ticker-track { display:flex; transition:transform .6s cubic-bezier(.25,.46,.45,.94); will-change:transform; }
.ticker-item { min-width:100%; padding:40px 60px; display:flex; align-items:center; gap:32px; opacity:0; transition:opacity .4s ease; }
.ticker-item.active { opacity:1; }
.ti-icon { font-size:3.5rem; flex-shrink:0; animation:iconPulse 2s ease-in-out infinite; }
@keyframes iconPulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.08)} }
.ti-num { font-family:'Anton',sans-serif; font-size:5rem; font-weight:400; letter-spacing:.01em; line-height:1; color:white; flex-shrink:0; min-width:200px; }
.ti-num .ac { color:var(--az); }
.ti-lbl { font-family:'Anton',sans-serif; font-size:1.8rem; font-weight:400; text-transform:uppercase; letter-spacing:.03em; color:white; margin-bottom:8px; line-height:1.1; }
.ti-desc { font-size:14px; color:rgba(255,255,255,.38); line-height:1.6; max-width:500px; }
.ticker-dots { position:absolute; bottom:16px; left:50%; transform:translateX(-50%); display:flex; gap:8px; }
.tk-dot { width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.2); transition:all .3s; cursor:pointer; }
.tk-dot.active { background:var(--az); width:20px; border-radius:3px; }
.ticker-nav { position:absolute; right:60px; top:50%; transform:translateY(-50%); display:flex; gap:10px; }
.tk-btn { width:40px; height:40px; border:1px solid rgba(42,168,232,.3); border-radius:50%; background:transparent; color:var(--az); font-size:16px; cursor:pointer; transition:all .3s; display:flex; align-items:center; justify-content:center; }
.tk-btn:hover { background:var(--az); color:white; }

@media (max-width:768px) {
  .ticker-item { padding:32px 20px; gap:16px; }
  .ti-icon { font-size:2.5rem; }
  .ti-num { font-size:3.5rem; min-width:140px; }
  .ti-lbl { font-size:1.3rem; }
  .ti-desc { font-size:12px; }
  .ticker-nav { right:20px; }
  .tk-btn { width:34px; height:34px; font-size:14px; }
}

/* SECTIONS */
.sec { padding:120px 60px; position:relative; z-index:2; }
.eyebrow { font-size:10px; font-weight:700; letter-spacing:.3em; text-transform:uppercase; color:var(--az); display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.eyebrow::before { content:''; width:24px; height:1px; background:var(--az); }
.sec-h2 { font-family:'Anton',sans-serif; font-size:clamp(2.8rem,5vw,4.5rem); font-weight:400; letter-spacing:.02em; text-transform:uppercase; line-height:1.05; margin-bottom:48px; }
.sec-h2 em { font-style:normal; color:var(--az); }
.sec-intro { font-size:16px; color:rgba(255,255,255,.35); line-height:1.8; margin-bottom:40px; max-width:700px; }
.sim-note { font-size:11px; color:rgba(255,255,255,.18); margin-top:20px; line-height:1.6; }

/* PROBLEMA */
.flow { display:grid; grid-template-columns:repeat(4,1fr); }
.flow-item { padding:36px 28px; border:1px solid rgba(255,255,255,.06); border-right:none; position:relative; transition:all .4s; overflow:hidden; }
.flow-item:last-child { border-right:1px solid rgba(255,255,255,.06); }
.flow-item:hover { border-color:rgba(42,168,232,.25); background:rgba(42,168,232,.03); }
.flow-arr { position:absolute; right:-13px; top:50%; transform:translateY(-50%); width:26px; height:26px; background:var(--esc); border:1px solid rgba(42,168,232,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; color:var(--az); z-index:1; }
.flow-icon { font-size:2rem; margin-bottom:16px; display:block; }
.flow-n { font-size:9px; font-weight:700; color:rgba(42,168,232,.5); letter-spacing:.2em; margin-bottom:10px; }
.flow-title { font-size:18px; font-weight:700; margin-bottom:8px; }
.flow-desc { font-size:13px; color:rgba(255,255,255,.35); line-height:1.6; }

/* SETORES */
.setores { border-top:1px solid rgba(255,255,255,.04); }
.setores-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.setores-sub { font-size:15px; color:rgba(255,255,255,.3); line-height:1.7; margin-bottom:28px; }
.stack-wrap { position:relative; height:480px; cursor:pointer; user-select:none; }
.s-card { position:absolute; inset:0; border-radius:8px; overflow:hidden; will-change:transform; transition:transform .55s cubic-bezier(.25,.46,.45,.94),opacity .5s ease; }
.s-foto { position:absolute; inset:0; background-size:cover; background-position:center; opacity:.62; transition:transform .6s ease; }
.s-card:hover .s-foto { transform:scale(1.04); }
.s-grad { position:absolute; inset:0; background:linear-gradient(to top,rgba(4,8,15,.97) 32%,rgba(4,8,15,.4) 65%,rgba(4,8,15,.03) 100%); }
.s-badge { position:absolute; top:20px; right:20px; width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:20px; backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.15); }
.s-info { position:absolute; bottom:0; left:0; right:0; padding:32px; }
.s-num { font-size:9px; font-weight:700; letter-spacing:.2em; margin-bottom:8px; }
.s-title { font-family:'Anton',sans-serif; font-size:26px; font-weight:400; letter-spacing:.02em; text-transform:uppercase; margin-bottom:8px; }
.s-desc { font-size:13px; color:rgba(255,255,255,.42); line-height:1.6; }
.stack-nav { display:flex; align-items:center; gap:16px; margin-top:20px; }
.stack-dots { display:flex; gap:6px; }
.sdot { width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.15); transition:all .3s; cursor:pointer; }
.sdot.active { width:20px; border-radius:3px; }
.stack-hint { font-size:10px; color:rgba(255,255,255,.2); letter-spacing:.1em; text-transform:uppercase; }

/* SIMULADOR */
.simulador { border-top:1px solid rgba(255,255,255,.04); }
.sim-card { background:rgba(255,255,255,.02); border:1px solid rgba(42,168,232,.15); padding:44px; position:relative; overflow:hidden; }
.sim-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,var(--az),transparent); }
.sim-eye { font-size:9px; font-weight:700; letter-spacing:.25em; color:var(--az); text-transform:uppercase; margin-bottom:6px; }
.sim-title { font-family:'Anton',sans-serif; font-size:26px; font-weight:400; letter-spacing:.02em; text-transform:uppercase; margin-bottom:36px; line-height:1.2; }
.sim-title em { font-style:normal; color:var(--az); }
.slider-row { margin-bottom:24px; }
.slider-top { display:flex; justify-content:space-between; margin-bottom:10px; }
.sl-name { font-size:12px; color:rgba(255,255,255,.4); }
.sl-val { font-family:'Anton',sans-serif; font-size:20px; font-weight:400; letter-spacing:.02em; color:white; }
input[type=range] { -webkit-appearance:none; appearance:none; width:100%; height:3px; background:rgba(255,255,255,.08); border-radius:2px; outline:none; cursor:pointer; }
input[type=range]::-webkit-slider-thumb { -webkit-appearance:none; width:20px; height:20px; border-radius:50%; background:var(--az); border:3px solid var(--esc); box-shadow:0 0 0 2px var(--az); cursor:pointer; }
.sim-div { height:1px; background:rgba(255,255,255,.05); margin:28px 0; }
.res-box { background:rgba(42,168,232,.05); border:1px solid rgba(42,168,232,.15); padding:24px; }
.res-lbl { font-size:9px; color:rgba(255,255,255,.3); letter-spacing:.18em; text-transform:uppercase; margin-bottom:8px; }
.res-val { font-family:'Anton',sans-serif; font-size:3.2rem; font-weight:400; letter-spacing:.01em; color:var(--az); line-height:1; }
.res-sub { font-size:11px; color:rgba(255,255,255,.25); margin-top:8px; line-height:1.5; }
.sim-btn { width:100%; margin-top:20px; background:var(--az); color:white; border:none; padding:16px; font-family:'Figtree',sans-serif; font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; cursor:pointer; clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); transition:all .3s; }
.sim-btn:hover { background:var(--azd); }

/* COMO */
.como { border-top:1px solid rgba(255,255,255,.04); }
.passos { display:grid; grid-template-columns:repeat(4,1fr); margin-top:60px; border:1px solid rgba(255,255,255,.06); }
.passo { padding:40px 28px; border-right:1px solid rgba(255,255,255,.06); transition:background .4s; }
.passo:last-child { border-right:none; }
.passo:hover { background:rgba(42,168,232,.04); }
.p-num { font-family:'Anton',sans-serif; font-size:4.5rem; font-weight:400; color:rgba(42,168,232,.1); line-height:1; margin-bottom:20px; letter-spacing:.02em; }
.p-line { width:28px; height:2px; background:var(--az); margin-bottom:16px; }
.p-title { font-size:18px; font-weight:700; margin-bottom:10px; }
.p-desc { font-size:13px; color:rgba(255,255,255,.35); line-height:1.7; }

/* CONTATO */
.contato { border-top:1px solid rgba(255,255,255,.04); }
.cont-info { display:flex; gap:32px; flex-wrap:wrap; margin-bottom:36px; }
.ci { display:flex; align-items:center; gap:12px; }
.ci-icon { width:40px; height:40px; border:1px solid rgba(42,168,232,.2); display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }
.ci-txt { font-size:13px; color:rgba(255,255,255,.4); }
.ci-txt strong { color:white; display:block; font-size:14px; }
.form-card { background:rgba(255,255,255,.06); border:1px solid rgba(42,168,232,.2); padding:44px; position:relative; }
.form-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,var(--az),transparent); }
.form-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.fg { margin-bottom:16px; }
.fl { display:block; font-size:9px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:rgba(255,255,255,.7); margin-bottom:8px; }
.fi { width:100%; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); color:white; padding:14px 16px; font-size:13px; font-family:'Figtree',inherit; outline:none; transition:border-color .3s, background .3s; border-radius:2px; }
.fi:focus { border-color:rgba(42,168,232,.7); background:rgba(255,255,255,.14); }
.fi::placeholder { color:rgba(255,255,255,.45); }
select.fi { cursor:pointer; }
select.fi option { background:#0a1220; color:white; }
textarea.fi { resize:vertical; min-height:120px; }
.f-submit { width:100%; background:var(--az); color:white; border:none; padding:16px; font-family:'Figtree',sans-serif; font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; cursor:pointer; clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%); transition:all .3s; margin-top:8px; }
.f-submit:hover { background:var(--azd); }
.f-wpp { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; background:transparent; border:1px solid rgba(255,255,255,.2); color:rgba(255,255,255,.65); padding:14px; font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:all .3s; margin-top:10px; text-decoration:none; }
.f-wpp:hover { border-color:#25D366; color:#25D366; }

/* CTA FINAL */
.cta-final { padding:160px 60px; text-align:center; position:relative; overflow:hidden; z-index:2; }
.cta-glow { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:600px; height:600px; background:radial-gradient(circle,rgba(42,168,232,.07) 0%,transparent 70%); pointer-events:none; }
.cta-tag { font-size:10px; font-weight:700; letter-spacing:.3em; color:var(--az); text-transform:uppercase; margin-bottom:24px; position:relative; z-index:2; }
.cta-h2 { font-family:'Anton',sans-serif; font-size:clamp(3rem,7vw,6rem); font-weight:400; letter-spacing:.01em; text-transform:uppercase; line-height:.95; margin-bottom:24px; position:relative; z-index:2; }
.cta-h2 em { font-style:normal; color:var(--az); }
.cta-sub { font-size:16px; color:rgba(255,255,255,.3); max-width:460px; margin:0 auto 40px; line-height:1.7; position:relative; z-index:2; }
.cta-btns { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; position:relative; z-index:2; }
.cta-main { background:var(--az); color:white; border:none; padding:18px 44px; font-family:'Figtree',sans-serif; font-size:12px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; cursor:pointer; clip-path:polygon(12px 0%,100% 0%,calc(100% - 12px) 100%,0% 100%); transition:all .3s; }
.cta-main:hover { background:var(--azd); transform:translateY(-2px); }
.cta-ghost { border:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.5); background:transparent; padding:18px 44px; font-family:'Figtree',sans-serif; font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:all .3s; text-decoration:none; display:inline-flex; align-items:center; gap:8px; }
.cta-ghost:hover { border-color:#25D366; color:#25D366; }

/* REDES SOCIAIS */
.social-sec { padding:48px 60px; text-align:center; border-top:1px solid rgba(255,255,255,.05); position:relative; z-index:2; }
.social-sec p { font-size:12px; color:rgba(255,255,255,.3); letter-spacing:.15em; text-transform:uppercase; margin-bottom:20px; }
.social-links { display:flex; gap:14px; justify-content:center; }
.social-links a { width:50px; height:50px; border:1px solid rgba(255,255,255,.1); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.4rem; color:rgba(255,255,255,.3); text-decoration:none; transition:all .3s; }
.social-links a:hover { border-color:var(--az); color:var(--az); transform:translateY(-4px); }

/* FOOTER */
.site-footer { background:rgba(4,8,15,.98); border-top:1px solid rgba(255,255,255,.05); padding:32px 60px; position:relative; z-index:2; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.footer-links { display:flex; gap:24px; flex-wrap:wrap; }
.footer-links a { font-size:11px; color:rgba(255,255,255,.3); text-decoration:none; transition:color .3s; }
.footer-links a:hover { color:var(--az); }
.footer-copy { font-size:11px; color:rgba(255,255,255,.2); letter-spacing:.05em; }

/* REVEAL */
.rv { opacity:0; transform:translateY(32px); transition:opacity .75s ease,transform .75s ease; }
.rv.in { opacity:1; transform:translateY(0); }
.d1 { transition-delay:.12s; }
.d2 { transition-delay:.24s; }
.d3 { transition-delay:.36s; }
.d4 { transition-delay:.48s; }

/* ===== MOBILE ===== */
@media (max-width:768px) {
  body { cursor:auto; }
  .cur-dot { display:none; }
  #main-nav, #main-nav.solid { padding:14px 20px; }
  .nav-links, .btn-nav { display:none; }
  .nav-ham { display:flex; }
  .hero-content { padding:0 20px; }
  .hero-title { font-size:clamp(3.2rem,14vw,4.8rem); }
  .hero-sub { font-size:14px; }
  .hero-floats { display:none; }
  .hero-logo-shirt { width:75px; right:8%; bottom:26%; }
  .scroll-ind { left:20px; }
  .stats-bar { grid-template-columns:repeat(2,1fr); }
  .stat-item { padding:20px 16px; }
  .stat-num { font-size:2rem; }
  .sec { padding:72px 20px; }
  .sec-h2 { font-size:clamp(2.2rem,10vw,3rem); }
  .sec-intro { font-size:14px; }
  .flow { grid-template-columns:1fr; }
  .flow-item { border-right:1px solid rgba(255,255,255,.06); padding:24px 20px; }
  .flow-arr { display:none; }
  .setores { padding:72px 0; }
  .setores-grid { grid-template-columns:1fr; gap:0; }
  .setores-left { padding:0 20px 28px; }
  .stack-wrap { height:400px; margin:0 20px; }
  .s-title { font-size:22px; }
  .stack-nav { padding:16px 20px 0; }
  .sim-card { padding:24px 20px; }
  .sim-title { font-size:20px; }
  .res-val { font-size:2.4rem; }
  .passos { grid-template-columns:1fr; margin-top:32px; }
  .passo { border-right:none; border-bottom:1px solid rgba(255,255,255,.06); padding:28px 20px; }
  .passo:last-child { border-bottom:none; }
  .p-num { font-size:3.5rem; }
  .cont-info { flex-direction:column; gap:16px; margin-bottom:28px; }
  .form-card { padding:24px 20px; }
  .form-row-2 { grid-template-columns:1fr; gap:0; }
  .cta-final { padding:90px 20px 72px; }
  .cta-h2 { font-size:clamp(2.8rem,12vw,3.8rem); }
  .cta-btns { flex-direction:column; }
  .cta-ghost { justify-content:center; padding:16px 20px; }
  .social-sec { padding:40px 20px; }
  .site-footer { padding:24px 20px; }
  .footer-inner { flex-direction:column; align-items:center; text-align:center; }
  .footer-links { justify-content:center; gap:16px; }
}

@media (max-width:480px) {
  .hero-title { font-size:clamp(2.8rem,13vw,3.8rem); }
  .stat-num { font-size:1.7rem; }
}