/* KriaZen — tema dark neon glassmorphism */
:root {
  /* Paleta oficial KriaZen — azuis do logotipo */
  --bg: #060c1c;
  --roxo: #2f6bee;   /* azul royal do logo */
  --ciano: #4da3f5;  /* azul claro do logo */
  --rosa: #8ec8ff;   /* azul gelo (detalhes) */
  --verde: #3dff9a;
  --texto: #ecf1fb;
  --suave: #9fb0d0;
  --vidro: rgba(255, 255, 255, 0.055);
  --borda: rgba(255, 255, 255, 0.12);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  background: var(--bg);
  color: var(--texto);
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
  min-height: 100vh;
  overflow-x: hidden;
}

/* ===== FUNDO ANIMADO — "lençol de luz" ===== */
.lencol {
  position: fixed; inset: 0; z-index: -2; overflow: hidden; background: var(--bg);
}
.lencol .blob {
  position: absolute; border-radius: 50%; filter: blur(90px); opacity: .5;
  animation: flutuar 26s ease-in-out infinite alternate;
}
.lencol .b1 { width: 55vw; height: 55vw; background: radial-gradient(circle, #2f6bee7d, transparent 65%); top: -18%; left: -12%; }
.lencol .b2 { width: 45vw; height: 45vw; background: radial-gradient(circle, #4da3f555, transparent 65%); bottom: -15%; right: -10%; animation-duration: 32s; animation-delay: -8s; }
.lencol .b3 { width: 38vw; height: 38vw; background: radial-gradient(circle, #8ec8ff33, transparent 65%); top: 35%; left: 55%; animation-duration: 38s; animation-delay: -15s; }
@keyframes flutuar {
  0%   { transform: translate(0, 0) scale(1); }
  50%  { transform: translate(6vw, -5vh) scale(1.12); }
  100% { transform: translate(-5vw, 6vh) scale(.95); }
}
/* varredura suave de luz na tela */
.lencol::after {
  content: ''; position: absolute; inset: -50%;
  background: linear-gradient(115deg, transparent 42%, rgba(160, 200, 255, 0.05) 50%, transparent 58%);
  animation: varrer 14s linear infinite;
}
@keyframes varrer { from { transform: translateX(-45%); } to { transform: translateX(45%); } }
/* grade sutil */
.lencol::before {
  content: ''; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
                    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse at 50% 30%, black 30%, transparent 75%);
}

/* ===== componentes ===== */
.wrap { max-width: 1120px; margin: 0 auto; padding: 0 22px; }
.vidro {
  background: var(--vidro); border: 1px solid var(--borda); border-radius: 18px;
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.btn {
  display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
  padding: 13px 26px; border-radius: 999px; border: none; font-size: 1rem; font-weight: 700;
  text-decoration: none; transition: transform .2s, box-shadow .2s;
  position: relative; overflow: hidden;
}
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: scale(.97); }
/* brilho passando no hover */
.btn::after {
  content: ''; position: absolute; top: 0; left: -80%; width: 45%; height: 100%;
  background: linear-gradient(115deg, transparent, rgba(255,255,255,.35), transparent);
  transform: skewX(-20deg); transition: left .55s ease; pointer-events: none;
}
.btn:hover::after { left: 135%; }
.btn-neon { background: linear-gradient(90deg, var(--roxo), var(--ciano)); color: #fff; box-shadow: 0 0 24px #2f6bee66; }
.btn-neon:hover { box-shadow: 0 0 38px #4da3f588; }
.btn-zap { background: #1fbe5f; color: #fff; box-shadow: 0 0 20px #1fbe5f55; }
.btn-borda { background: transparent; color: var(--texto); border: 1px solid var(--borda); }
.btn-mini { padding: 7px 14px; font-size: .85rem; }

nav.topo {
  position: sticky; top: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between;
  padding: 14px 26px; background: rgba(6,12,28,.65); backdrop-filter: blur(16px); border-bottom: 1px solid var(--borda);
}
.logo { display: inline-flex; align-items: center; gap: 10px; font-size: 1.35rem; font-weight: 800; text-decoration: none; color: var(--texto); letter-spacing: .3px; text-transform: lowercase; }
.logo svg { display: block; }

/* ===== logo animada (3 frames em loop: fade + zoom) ===== */
.kriazen-logo-anim {
  position: relative; width: 190px; height: 50px;
  display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.kriazen-logo-anim .frame {
  position: absolute; max-width: 100%; max-height: 100%; object-fit: contain;
  opacity: 0; transform: scale(.96);
  animation: logoCycle 9s infinite;
  filter: drop-shadow(0 0 10px rgba(0, 140, 255, .35));
}
.kriazen-logo-anim .frame1 { animation-delay: 0s; }
.kriazen-logo-anim .frame2 { animation-delay: 3s; }
.kriazen-logo-anim .frame3 { animation-delay: 6s; }
@keyframes logoCycle {
  0%   { opacity: 0; transform: scale(.96); }
  8%   { opacity: 1; transform: scale(1); }
  25%  { opacity: 1; transform: scale(1.03); }
  33%  { opacity: 0; transform: scale(1.06); }
  100% { opacity: 0; transform: scale(1.06); }
}
.logo span { background: linear-gradient(90deg, var(--roxo), var(--ciano)); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* menu do topo */
.menu-links { display: flex; gap: 26px; }
.menu-links a { color: var(--suave); text-decoration: none; font-size: .92rem; font-weight: 600; transition: color .2s; }
.menu-links a:hover { color: var(--texto); }
@media (max-width: 860px) { .menu-links { display: none; } }

/* hero em duas colunas */
.hero2 { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: center; padding: 72px 0 46px; }
@media (max-width: 960px) { .hero2 { grid-template-columns: 1fr; text-align: center; } .hero2 .confianca { justify-content: center; } .hero2 .cta { justify-content: center; } }
.hero2 h1 { font-size: clamp(1.9rem, 4vw, 3rem); line-height: 1.14; font-weight: 900; margin: 18px 0; }
.hero2 .sub { color: var(--suave); font-size: 1.08rem; line-height: 1.6; margin-bottom: 28px; max-width: 560px; }
.hero2 .cta { display: flex; gap: 14px; flex-wrap: wrap; }
.confianca { display: flex; gap: 22px; flex-wrap: wrap; margin-top: 30px; }
.confianca span { color: var(--suave); font-size: .82rem; display: flex; align-items: center; gap: 6px; }

/* mockup de dashboard do hero */
.mock {
  padding: 16px; border-radius: 20px; box-shadow: 0 30px 80px rgba(0,0,0,.5), 0 0 60px #2f6bee22;
  display: flex; gap: 12px;
  transition: transform .6s cubic-bezier(.2,.8,.3,1), box-shadow .6s;
}
.mock:hover { transform: perspective(1000px) rotateY(-4deg) rotateX(2deg) translateY(-4px); box-shadow: 0 40px 100px rgba(0,0,0,.6), 0 0 90px #2f6bee44; }
.mlat { display: flex; flex-direction: column; gap: 16px; align-items: center; padding: 8px 10px 8px 4px; border-right: 1px solid var(--borda); }
.mlat span { opacity: .5; font-size: .95rem; }
.mlat span.on { opacity: 1; background: #2f6bee33; border-radius: 9px; padding: 5px 7px; box-shadow: 0 0 12px #2f6bee44; }
.mlat .mini-k { opacity: 1; margin-bottom: 4px; }
.mcorpo { flex: 1; min-width: 0; transition: opacity .45s ease, filter .45s ease; }
.mcorpo.trocando { opacity: .1; filter: brightness(.5) blur(2px); }
.barra .fill { transition: width .9s cubic-bezier(.2,.8,.3,1); }
@media (max-width: 500px) { .mlat { display: none; } }
.mock .cab { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.mock .cab b { font-size: .95rem; }
.mock .cab small { color: var(--suave); font-size: .7rem; }
.mock .chip-data { font-size: .68rem; color: var(--suave); border: 1px solid var(--borda); border-radius: 8px; padding: 4px 8px; }
.mock .tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 12px; }
@media (max-width: 500px) { .mock .tiles { grid-template-columns: repeat(2, 1fr); } }
.mtile { border: 1px solid var(--borda); border-radius: 12px; padding: 10px; background: rgba(255,255,255,.03); }
.mtile small { color: var(--suave); font-size: .62rem; display: block; }
.mtile b { font-size: 1.02rem; }
.mtile .up { color: var(--verde); font-size: .6rem; }
.mtile svg { display: block; margin-top: 6px; }
.mock .baixo { display: grid; grid-template-columns: 1.15fr .85fr; gap: 10px; }
@media (max-width: 500px) { .mock .baixo { grid-template-columns: 1fr; } }
.mcard { border: 1px solid var(--borda); border-radius: 12px; padding: 12px; background: rgba(255,255,255,.03); }
.mcard h4 { font-size: .72rem; color: var(--suave); margin-bottom: 10px; font-weight: 600; }
.ativ { display: flex; gap: 8px; align-items: center; margin-bottom: 9px; }
.ativ .ico { width: 26px; height: 26px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: .8rem; background: #2f6bee33; }
.ativ div b { font-size: .7rem; display: block; }
.ativ div small { font-size: .6rem; color: var(--suave); }
.donut { width: 92px; height: 92px; border-radius: 50%; background: conic-gradient(var(--ciano) 0 78%, rgba(255,255,255,.08) 78% 100%); display: flex; align-items: center; justify-content: center; margin: 0 auto 10px; }
.donut > div { width: 66px; height: 66px; border-radius: 50%; background: #0a1226; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.donut b { font-size: .95rem; }
.donut small { font-size: .55rem; color: var(--suave); }
.barra { margin-bottom: 7px; }
.barra small { display: flex; justify-content: space-between; color: var(--suave); font-size: .62rem; margin-bottom: 3px; }
.barra .trilha { height: 5px; border-radius: 99px; background: rgba(255,255,255,.08); overflow: hidden; }
.barra .fill { height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--roxo), var(--ciano)); }

/* rótulo de seção (eyebrow) */
.olho { color: var(--ciano); font-size: .82rem; font-weight: 700; letter-spacing: .4px; }

/* ecossistema */
.ecos { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 16px; margin-top: 26px; }
.ecos .no-ecos { text-align: center; padding: 22px 14px; }
.ecos .ico-g { width: 54px; height: 54px; margin: 0 auto 12px; border-radius: 15px; background: linear-gradient(135deg, #2f6bee44, #4da3f522); border: 1px solid #4da3f544; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; }
.ecos b { display: block; font-size: .92rem; margin-bottom: 5px; }
.ecos small { color: var(--suave); font-size: .78rem; }
.num-grandes { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin-top: 26px; }
.num-grandes .ng { text-align: center; padding: 20px 10px; }
.num-grandes b { font-size: 1.7rem; color: var(--ciano); display: block; }
.num-grandes small { color: var(--suave); font-size: .78rem; }

/* rodapé em colunas */
.rod-col { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 30px; text-align: left; max-width: 1120px; margin: 0 auto; padding: 0 22px 30px; }
@media (max-width: 800px) { .rod-col { grid-template-columns: 1fr 1fr; } }
.rod-col h5 { color: var(--texto); font-size: .85rem; margin-bottom: 12px; }
.rod-col a, .rod-col p { display: block; color: var(--suave); text-decoration: none; font-size: .82rem; margin-bottom: 8px; }
.rod-col a:hover { color: var(--ciano); }
.social { display: flex; gap: 10px; margin-top: 6px; }
.social a {
  width: 38px; height: 38px; border-radius: 10px; display: flex; align-items: center; justify-content: center;
  border: 1px solid var(--borda); background: rgba(255,255,255,.04); transition: transform .2s, border-color .2s, box-shadow .2s;
}
.social a:hover { transform: translateY(-3px); border-color: var(--ciano); box-shadow: 0 0 18px #4da3f544; }
.social svg { width: 18px; height: 18px; fill: var(--suave); }
.social a:hover svg { fill: var(--ciano); }

/* hero (antigo, mantido p/ compat) */
.hero { text-align: center; padding: 96px 20px 70px; }
.hero h1 { font-size: clamp(2.1rem, 5.5vw, 4rem); line-height: 1.12; font-weight: 900; }
.grad { background: linear-gradient(90deg, var(--roxo), var(--ciano), var(--rosa)); background-size: 200%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: brilhar 6s linear infinite; }
@keyframes brilhar { to { background-position: 200%; } }
.hero p.sub { color: var(--suave); font-size: 1.2rem; max-width: 640px; margin: 20px auto 34px; }
.selo { display: inline-block; padding: 7px 18px; border-radius: 999px; border: 1px solid var(--borda); color: var(--ciano); font-size: .85rem; margin-bottom: 22px; background: rgba(56,232,255,.06); }

/* aparecer ao rolar */
.surgir { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s ease; }
.surgir.visivel { opacity: 1; transform: none; }

/* grades */
.grade { display: grid; gap: 18px; }
.g3 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.g4 { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.cartao { padding: 26px 22px; transition: transform .25s, border-color .25s, box-shadow .25s; }
.cartao:hover { transform: translateY(-5px); border-color: #4da3f588; box-shadow: 0 14px 40px rgba(0,0,0,.35), 0 0 26px #2f6bee2c; }
.cartao .ic {
  font-size: 1.35rem; width: 52px; height: 52px; border-radius: 14px;
  background: linear-gradient(135deg, #2f6bee44, #4da3f522); border: 1px solid #4da3f544;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 0 16px #2f6bee33; transition: transform .3s;
}
.cartao:hover .ic { transform: scale(1.12) rotate(-4deg); }
.cartao h3 { margin: 10px 0 6px; font-size: 1.05rem; }
.cartao p { color: var(--suave); font-size: .92rem; line-height: 1.5; }

h2.secao { text-align: center; font-size: clamp(1.5rem, 3.4vw, 2.2rem); margin: 90px 0 12px; font-weight: 900; }
p.secao-sub { text-align: center; color: var(--suave); margin-bottom: 36px; }

/* preço */
.preco { text-align: center; padding: 34px 24px; position: relative; overflow: hidden; }
.preco .valor { font-size: 2.6rem; font-weight: 900; color: var(--verde); margin: 12px 0; }
.preco .antes { color: var(--suave); text-decoration: line-through; font-size: .95rem; }
.faixa-teste { position: absolute; top: 14px; right: -38px; transform: rotate(38deg); background: var(--roxo); color: #fff; font-size: .7rem; font-weight: 800; padding: 4px 44px; }

/* carrossel infinito */



@keyframes rolar { to { transform: translateX(-50%); } }






/* faixa de estatísticas do hero */
.stats-hero { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin-top: 40px; }
.stats-hero .sh { padding: 14px 26px; text-align: center; }
.stats-hero .sh b { display: block; font-size: 1.45rem; color: var(--ciano); }
.stats-hero .sh small { color: var(--suave); font-size: .78rem; }



/* rodapé + flutuante */
footer { border-top: 1px solid var(--borda); margin-top: 100px; padding: 34px 0 90px; text-align: center; color: var(--suave); font-size: .9rem; }
.zap-flutua { position: fixed; right: 22px; bottom: 22px; z-index: 60; width: 60px; height: 60px; border-radius: 50%; background: #1fbe5f; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; text-decoration: none; box-shadow: 0 6px 26px #1fbe5f88; animation: pulsar 2.4s infinite; }
@keyframes pulsar { 0%,100% { transform: scale(1); } 50% { transform: scale(1.08); } }

/* cookies */
.cookies { position: fixed; left: 50%; transform: translateX(-50%) translateY(140%); bottom: 18px; z-index: 70; width: min(560px, 92vw); padding: 18px 20px; display: flex; gap: 14px; align-items: center; transition: transform .6s cubic-bezier(.2,.9,.3,1.2); }
.cookies.mostrar { transform: translateX(-50%) translateY(0); }
.cookies p { font-size: .85rem; color: var(--suave); flex: 1; }

/* ===== painéis ===== */
.painel { padding: 34px 0 70px; }
.painel h1 { font-size: 1.7rem; margin-bottom: 4px; }
.painel .sub { color: var(--suave); margin-bottom: 26px; }
.stat { padding: 20px; text-align: center; }
.stat .num { font-size: 1.9rem; font-weight: 900; color: var(--ciano); }
.stat .rot { color: var(--suave); font-size: .82rem; margin-top: 4px; }
table.tab { width: 100%; border-collapse: collapse; font-size: .9rem; }
.tab th, .tab td { padding: 11px 12px; text-align: left; border-bottom: 1px solid var(--borda); }
.tab th { color: var(--suave); font-weight: 600; font-size: .78rem; text-transform: uppercase; letter-spacing: .6px; }
.pill { padding: 4px 12px; border-radius: 999px; font-size: .75rem; font-weight: 700; }
.pill.ativo { background: #3dff9a22; color: var(--verde); }
.pill.pendente { background: #ffd23d22; color: #ffd23d; }
.pill.atrasado { background: #ff5c5c22; color: #ff7b7b; }
.pill.pago { background: #3dff9a22; color: var(--verde); }
.bloco { padding: 24px; margin-bottom: 22px; }
.bloco h2 { font-size: 1.15rem; margin-bottom: 16px; }
input, select, textarea {
  width: 100%; padding: 11px 14px; border-radius: 10px; border: 1px solid var(--borda);
  background: rgba(255,255,255,.05); color: var(--texto); font-size: .95rem; margin-bottom: 10px;
}
input:focus { outline: none; border-color: var(--roxo); }
label { font-size: .8rem; color: var(--suave); }
.form-linha { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 10px; }

/* diagrama de serviços do cliente */
.diagrama { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 14px; }
.no { padding: 18px 14px; text-align: center; border-radius: 14px; position: relative; transition: transform .2s; }
.no:hover { transform: translateY(-3px); }
.no.on { border: 1px solid #3dff9a77; box-shadow: 0 0 18px #3dff9a33; background: rgba(61,255,154,.06); }
.no.off { border: 1px dashed var(--borda); opacity: .65; }
.no .ic { font-size: 1.7rem; }
.no b { display: block; font-size: .88rem; margin: 8px 0 4px; }
.no small { color: var(--suave); font-size: .74rem; }
.no .cadeado { position: absolute; top: 8px; right: 10px; }
.msg-box { background: rgba(255,255,255,.04); border-left: 3px solid var(--ciano); padding: 12px 14px; border-radius: 8px; font-size: .88rem; margin-bottom: 8px; }

.login-caixa { max-width: 400px; margin: 90px auto; padding: 38px 32px; text-align: center; }
.aviso-erro { background: #ff5c5c22; color: #ff8b8b; padding: 10px; border-radius: 10px; font-size: .88rem; margin-bottom: 12px; }

/* ===== notificação (toast) ===== */
.toast {
  position: fixed; top: 18px; right: 18px; z-index: 200; max-width: min(360px, 86vw);
  padding: 14px 22px; border-radius: 14px; font-weight: 700; font-size: .92rem;
  transform: translateX(130%); transition: transform .45s cubic-bezier(.2,.9,.3,1.15);
  backdrop-filter: blur(10px);
}
.toast.show { transform: none; }
.toast.ok { background: rgba(13,58,34,.92); border: 1px solid #3dff9a88; color: #3dff9a; box-shadow: 0 6px 30px #3dff9a33; }
.toast.erro { background: rgba(66,14,14,.92); border: 1px solid #ff5c5c88; color: #ff8b8b; box-shadow: 0 6px 30px #ff5c5c33; }

/* ===== dropzone (arrastar foto) ===== */
.dropzone {
  border: 2px dashed var(--borda); border-radius: 14px; padding: 20px; text-align: center;
  color: var(--suave); cursor: pointer; transition: border-color .2s, background .2s; margin-bottom: 10px; font-size: .88rem;
}
.dropzone.ativo { border-color: var(--ciano); background: rgba(77,163,245,.08); color: var(--ciano); }
.dropzone.enviando { opacity: .6; pointer-events: none; }
.dropzone input[type=file] { display: none; }

/* ===== avatar de pessoa ===== */
.avatar {
  width: 48px; height: 48px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, var(--roxo), var(--ciano));
  display: flex; align-items: center; justify-content: center;
  font-weight: 800; color: #fff; font-size: 1.05rem; box-shadow: 0 0 16px #2f6bee55;
}
.avatar.grande { width: 62px; height: 62px; font-size: 1.3rem; }
.pessoa { display: flex; gap: 12px; align-items: center; }
.pessoa b { display: block; font-size: .92rem; }
.pessoa small { color: var(--suave); font-size: .78rem; }
.depo { padding: 26px 22px; }
.depo .fala { color: var(--suave); font-size: .93rem; line-height: 1.6; font-style: italic; }
.depo .estrelas { color: #ffd23d; margin-bottom: 10px; letter-spacing: 2px; }
.depo .pessoa { margin-top: 16px; }

/* ===== robô vendedor flutuante (site público) ===== */
.bot-flutua {
  position: fixed; right: 22px; bottom: 94px; z-index: 60; width: 60px; height: 60px;
  border-radius: 50%; border: 1px solid #4da3f566; cursor: pointer; font-size: 1.7rem;
  background: linear-gradient(135deg, var(--roxo), var(--ciano));
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 26px #2f6bee88; transition: transform .2s;
}
.bot-flutua:hover { transform: scale(1.1); }
.cb-panel {
  position: fixed; right: 22px; bottom: 166px; z-index: 65; width: min(350px, 90vw);
  padding: 16px; display: none; flex-direction: column;
  box-shadow: 0 20px 60px rgba(0,0,0,.55);
}
.cb-panel.aberto { display: flex; animation: subirCb .3s ease; }
@keyframes subirCb { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@media (max-width: 640px) { .bot-flutua { bottom: 80px; right: 14px; width: 52px; height: 52px; font-size: 1.4rem; } .cb-panel { bottom: 142px; right: 14px; } }

/* duas colunas que viram uma no celular */
.duas-col { display: grid; grid-template-columns: 1fr 1.1fr; gap: 18px; margin-bottom: 22px; }
@media (max-width: 860px) { .duas-col { grid-template-columns: 1fr; } }

/* ===== chat da IA ===== */
.chat-msgs {
  flex: 1; min-height: 200px; max-height: 280px; overflow-y: auto;
  display: flex; flex-direction: column; gap: 8px; padding: 4px;
}
.msg { padding: 10px 14px; border-radius: 14px; max-width: 88%; font-size: .88rem; line-height: 1.5; }
.msg.eu { background: linear-gradient(90deg, var(--roxo), #3b82f6); color: #fff; margin-left: auto; border-bottom-right-radius: 4px; }
.msg.ia { background: rgba(255,255,255,.06); border: 1px solid var(--borda); border-bottom-left-radius: 4px; }
.msg.digitando { color: var(--suave); font-style: italic; animation: pulsar 1.2s infinite; }

/* ===== responsivo (celular) ===== */
@media (max-width: 640px) {
  .hero { padding-top: 60px; }
  nav.topo { padding: 10px 14px; }
  .kriazen-logo-anim { width: 150px; height: 42px; }
  .wrap { padding: 0 14px; }
  .hero2 { padding: 40px 0 30px; gap: 28px; }
  .hero2 .cta .btn { width: 100%; justify-content: center; }
  .stats-hero .sh { padding: 10px 16px; }
  .bloco { padding: 16px; }
  .tab th, .tab td { padding: 8px 8px; font-size: .8rem; }
  .painel h1 { font-size: 1.35rem; }
  .cookies { flex-direction: column; text-align: center; }
  .zap-flutua { width: 52px; height: 52px; font-size: 1.5rem; right: 14px; bottom: 14px; }
  .toast { top: auto; bottom: 16px; right: 14px; }
  .rod-col { grid-template-columns: 1fr; text-align: center; }
  .rod-col .logo { justify-content: center; width: 100%; }
}

/* ============================================================
   KriaZenDashboardPreview  (dashboard SaaS premium)
   ============================================================ */
.kz-dash{
  width:100%;
  max-width:600px;
  min-width:0;
  margin-left:auto;
  padding:16px;
  border-radius:22px;
  display:flex;
  gap:14px;
  box-shadow:0 30px 80px rgba(0,0,0,.55), 0 0 60px #2f6bee22;
  color:var(--texto);
}
/* menu lateral interno */
.kz-dash .kz-nav{
  flex:0 0 54px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  padding:14px 0;
  border-radius:16px;
  background:rgba(10,18,38,.55);
  border:1px solid var(--borda);
}
.kz-dash .kz-k{
  width:34px;height:34px;border-radius:11px;
  display:grid;place-items:center;
  font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--roxo),var(--ciano));
  box-shadow:0 6px 18px #2f6bee66;
  margin-bottom:6px;
}
.kz-dash .kz-ico{
  width:34px;height:34px;border-radius:10px;
  display:grid;place-items:center;
  font-size:1rem;line-height:1;
  color:var(--suave);cursor:default;
  transition:background .2s,color .2s;
}
.kz-dash .kz-ico:hover{color:var(--texto);background:rgba(255,255,255,.06);}
.kz-dash .kz-ico.on{
  color:#fff;background:rgba(77,163,245,.18);
  box-shadow:inset 0 0 0 1px #4da3f555;
}
/* corpo */
.kz-dash .kz-corpo{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:14px;}
/* cabecalho */
.kz-dash .kz-cab{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.kz-dash .kz-pessoa{display:flex;align-items:center;gap:10px;min-width:0;}
.kz-dash .kz-avatar{
  width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;font-weight:800;color:#fff;
  background:linear-gradient(135deg,#8ec8ff,#2f6bee);
  box-shadow:0 4px 14px #2f6bee66;flex:0 0 auto;
}
.kz-dash .kz-avatar img{width:100%;height:100%;border-radius:50%;display:block;object-fit:cover;}
.kz-dash .kz-quem{min-width:0;}
.kz-dash .kz-quem b{display:block;font-size:.95rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kz-dash .kz-quem small{display:block;font-size:.72rem;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kz-dash .kz-vivo{
  display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;
  font-size:.7rem;font-weight:700;color:#3dff9a;
  padding:5px 10px;border-radius:999px;
  background:rgba(61,255,154,.1);border:1px solid rgba(61,255,154,.3);
}
.kz-dash .kz-vivo i{width:7px;height:7px;border-radius:50%;background:#3dff9a;box-shadow:0 0 8px #3dff9a;animation:kzBlink 1.4s infinite;}
@keyframes kzBlink{0%,100%{opacity:1}50%{opacity:.25}}
/* metricas topo */
.kz-dash .kz-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.kz-dash .kz-tile{
  position:relative;overflow:hidden;
  padding:10px 11px;border-radius:14px;
  background:rgba(255,255,255,.045);border:1px solid var(--borda);
}
.kz-dash .kz-tile small{display:block;font-size:.66rem;color:var(--suave);}
.kz-dash .kz-tile b{display:block;font-size:1.05rem;color:#fff;margin-top:2px;}
.kz-dash .kz-tile .kz-up{font-size:.66rem;font-weight:700;color:#3dff9a;}
.kz-dash .kz-tile svg{position:absolute;right:0;bottom:0;width:60%;height:22px;opacity:.85;}
.kz-dash .kz-tile svg polyline{fill:none;stroke:#4da3f5;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
/* corpo inferior: atividades + desempenho */
.kz-dash .kz-body{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;align-items:stretch;}
.kz-dash .kz-body h4{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--suave);margin:0 0 8px;}
.kz-dash .kz-ativ,.kz-dash .kz-perf{
  padding:12px;border-radius:14px;
  background:rgba(255,255,255,.04);border:1px solid var(--borda);
}
.kz-dash .kz-ativ ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.kz-dash .kz-ativ li{display:flex;align-items:center;gap:9px;}
.kz-dash .kz-ativ li div{flex:1 1 auto;min-width:0;}
.kz-dash .kz-ativ li b{display:block;font-size:.78rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kz-dash .kz-ativ li small{display:block;font-size:.68rem;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kz-dash .kz-ativ time{font-size:.64rem;color:var(--suave);flex:0 0 auto;}
.kz-dash .kz-ai{
  width:30px;height:30px;flex:0 0 auto;border-radius:9px;
  display:grid;place-items:center;font-size:.9rem;
}
.kz-dash .kz-ai-a{background:rgba(77,163,245,.18);}
.kz-dash .kz-ai-b{background:rgba(61,255,154,.16);}
.kz-dash .kz-ai-c{background:rgba(255,206,84,.18);}
.kz-dash .kz-ai-d{background:rgba(142,200,255,.18);}
/* desempenho */
.kz-dash .kz-perf{display:flex;flex-direction:column;align-items:center;}
.kz-dash .kz-ring-wrap{position:relative;display:grid;place-items:center;margin:2px 0 12px;}
.kz-dash .kz-ring-wrap::after{
  content:"";position:absolute;width:132px;height:132px;border-radius:50%;
  border:2px solid transparent;border-top-color:#4da3f5;border-right-color:#8ec8ff55;
  animation:kzSpin 3.4s linear infinite;
}
@keyframes kzSpin{to{transform:rotate(360deg)}}
/* barras */
.kz-dash .kz-bars{width:100%;display:flex;flex-direction:column;gap:8px;}
.kz-dash .kz-bar{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:8px;}
.kz-dash .kz-bar small{font-size:.68rem;color:var(--suave);}
.kz-dash .kz-bar em{font-size:.68rem;font-style:normal;color:#fff;}
.kz-dash .kz-bar i{
  position:relative;height:6px;border-radius:999px;
  background:rgba(255,255,255,.08);display:block;overflow:hidden;
}
.kz-dash .kz-bar i::after{
  content:"";position:absolute;inset:0;width:var(--v,0%);
  border-radius:999px;background:linear-gradient(90deg,#2f6bee,#4da3f5);
  box-shadow:0 0 10px #4da3f588;
  animation:kzFill 1.4s cubic-bezier(.2,.8,.3,1) both;
}
@keyframes kzFill{from{width:0}}

/* ===== bolinha azul de performance (conic-gradient) ===== */
.performance-ring{
  width:116px;height:116px;border-radius:50%;
  background:conic-gradient(from 0deg,#38bdf8 0 94%,rgba(30,41,59,.9) 94% 100%);
  display:grid;place-items:center;position:relative;
  box-shadow:0 0 35px rgba(56,189,248,.35);
  animation:ringPulse 2.8s ease-in-out infinite;
}
.performance-ring::before{
  content:"";position:absolute;inset:12px;border-radius:50%;
  background:#0f172a;box-shadow:inset 0 0 18px rgba(56,189,248,.16);
}
.performance-ring-content{position:relative;z-index:2;text-align:center;}
.performance-ring strong{font-size:26px;color:#fff;display:block;line-height:1;}
.performance-ring span{font-size:11px;color:#93c5fd;}
@keyframes ringPulse{
  0%,100%{transform:scale(1);filter:drop-shadow(0 0 8px rgba(56,189,248,.25));}
  50%{transform:scale(1.035);filter:drop-shadow(0 0 18px rgba(56,189,248,.55));}
}

/* ===== responsivo do dashboard ===== */
@media (max-width:768px){
  .hero2{grid-template-columns:1fr;}
  .kz-dash{max-width:100%;margin:32px 0 0;}
  .kz-dash .kz-metrics{grid-template-columns:repeat(2,1fr);}
  .kz-dash .kz-body{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .kz-dash{transform:none;border-radius:20px;padding:12px;gap:10px;}
  .kz-dash .kz-metrics{grid-template-columns:1fr;}
  .kz-dash .kz-nav{flex-basis:42px;gap:10px;}
  .kz-dash .kz-nav .kz-k,.kz-dash .kz-nav .kz-ico{width:28px;height:28px;}
}

/* ===== ajustes finos do dashboard (harmonizar com hero <=960px) ===== */
@media (min-width:961px){
  .kz-dash{min-width:520px;}
}
@media (max-width:960px){
  .kz-dash{max-width:640px;margin:28px auto 0;text-align:left;}
  .kz-dash .kz-metrics{grid-template-columns:repeat(4,1fr);}
}
@media (max-width:768px){
  .kz-dash{max-width:100%;margin:28px 0 0;}
}

/* ===== logo nova (imagem unica) ===== */
.logo 
.logo:hover 
@media (max-width:640px){ .logo  }

/* KZ-LOGO-START */
.logo-img{
  height:56px;
  width:auto;
  display:block;
  filter:drop-shadow(0 0 6px rgba(47,107,238,.45));
  animation:kzLogoFloat 4s ease-in-out infinite, kzLogoGlow 3.2s ease-in-out infinite;
  transform-origin:center;
  transition:transform .25s ease;
}
.logo:hover .logo-img{ transform:scale(1.05); }
@keyframes kzLogoFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-3px); }
}
@keyframes kzLogoGlow{
  0%,100%{ filter:drop-shadow(0 0 4px rgba(47,107,238,.30)); }
  50%{ filter:drop-shadow(0 0 12px rgba(77,163,245,.65)); }
}
@media (max-width:640px){
  .logo-img{ height:42px; }
}
/* KZ-LOGO-END */

/* KZ-PROJ-START */
.projects-section{ padding:56px 0 10px; }
.section-head{ margin-bottom:18px; }
.projects-shell{ position:relative; }
.projects-carousel{ display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; padding:10px 4px 22px; cursor:grab; }
.projects-carousel.dragging{ cursor:grabbing; scroll-behavior:auto; }
.projects-carousel::-webkit-scrollbar{ display:none; }
.projects-carousel{ scrollbar-width:none; -ms-overflow-style:none; }
.project-card{ flex:0 0 330px; scroll-snap-align:start; border-radius:24px; padding:14px; background:linear-gradient(180deg, rgba(15,23,42,.86), rgba(15,23,42,.55)); border:1px solid rgba(59,130,246,.22); box-shadow:0 20px 60px rgba(0,0,0,.28); transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.project-card:hover{ transform:translateY(-6px); border-color:rgba(56,189,248,.48); box-shadow:0 24px 80px rgba(37,99,235,.20); }
.project-card .pc-img{ width:100%; height:190px; border-radius:16px; overflow:hidden; }
.project-card .pc-img img{ width:100%; height:100%; object-fit:cover; object-position:center; display:block; transition:transform .35s ease; }
.project-card:hover .pc-img img{ transform:scale(1.05); }
.project-card .pc-cat{ display:inline-block; margin-top:14px; font-size:11px; letter-spacing:.5px; text-transform:uppercase; color:#7dd3fc; background:rgba(56,189,248,.10); border:1px solid rgba(56,189,248,.25); padding:3px 10px; border-radius:999px; }
.project-card h3{ margin-top:10px; font-size:18px; color:#f8fafc; }
.project-card p{ margin-top:4px; color:#94a3b8; font-size:14px; }
.project-card .pc-btn{ display:inline-block; margin-top:12px; font-size:13px; font-weight:600; color:#60a5fa; text-decoration:none; transition:color .2s; }
.project-card .pc-btn:hover{ color:#93c5fd; }
.carousel-btn{ position:absolute; top:42%; transform:translateY(-50%); z-index:5; width:44px; height:44px; border-radius:50%; border:1px solid rgba(59,130,246,.35); background:rgba(15,23,42,.85); color:#e2e8f0; font-size:26px; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; backdrop-filter:blur(6px); transition:background .2s, border-color .2s; }
.carousel-btn:hover{ background:rgba(37,99,235,.35); border-color:rgba(56,189,248,.6); }
.carousel-btn.prev{ left:-10px; }
.carousel-btn.next{ right:-10px; }
@media (max-width:768px){
  .project-card{ flex:0 0 82vw; }
  .project-card .pc-img{ height:210px; }
  .carousel-btn{ display:none; }
  .projects-carousel{ gap:16px; padding:8px 2px 18px; scroll-padding-left:16px; }
}
/* KZ-PROJ-END */


/* ===== Simulador de Impacto + 4 Pilares + CTA Final ===== */
.impacto-grade{ display:grid; grid-template-columns:1.05fr 1fr; gap:24px; margin-top:34px; }
.impacto-card{ border-radius:24px; padding:28px; }
.impacto-card h3{ font-size:1.3rem; margin-bottom:20px; color:#fff; }
.impacto-campo{ margin-bottom:24px; }
.impacto-campo label{ display:block; color:var(--suave); margin-bottom:8px; font-size:.92rem; }
.impacto-campo input[type="range"]{ width:100%; accent-color:var(--ciano); }
.impacto-valor{ margin-top:8px; color:var(--ciano); font-weight:700; }
.impacto-resultados{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.impacto-box{ padding:16px; border-radius:16px; background:rgba(255,255,255,.04); border:1px solid var(--borda); }
.impacto-box strong{ display:block; font-size:1.4rem; color:#fff; margin-bottom:4px; }
.impacto-box span{ color:var(--suave); font-size:.82rem; }
.cta-final{ text-align:center; padding:56px 32px; border-radius:28px; }
.cta-final .secao-sub{ max-width:640px; margin-left:auto; margin-right:auto; }
.cta-final-acoes{ display:flex; gap:14px; justify-content:center; margin-top:22px; flex-wrap:wrap; }
@media (max-width:860px){ .impacto-grade{ grid-template-columns:1fr; } }
@media (max-width:640px){ .impacto-resultados{ grid-template-columns:1fr; } .cta-final-acoes{ flex-direction:column; } .cta-final-acoes .btn{ width:100%; text-align:center; justify-content:center; } }

/* rotacao painel hero (Ana/Joao/Maria) */
.kz-dash{transition:opacity .4s ease}
.kz-dash.trocando{opacity:.35}

/* ===== CTA final com K 3D holografico ===== */
.kz-final-cta{position:relative;padding:110px 24px 90px;overflow:hidden;border-top:1px solid rgba(59,130,246,.16);
  background:radial-gradient(circle at 72% 48%, rgba(37,99,235,.24), transparent 36%),
             radial-gradient(circle at 20% 40%, rgba(14,165,233,.12), transparent 34%),
             linear-gradient(180deg, rgba(2,6,23,.2), rgba(2,6,23,.92));}
.kz-final-inner{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.kz-final-copy{position:relative;z-index:2;}
.kz-final-kicker{display:inline-flex;align-items:center;padding:8px 14px;margin-bottom:18px;border-radius:999px;color:#7dd3fc;background:rgba(37,99,235,.12);border:1px solid rgba(56,189,248,.2);font-size:13px;font-weight:700;}
.kz-final-copy h2{max-width:660px;font-size:clamp(34px,4.6vw,62px);line-height:1.03;letter-spacing:-.04em;color:#f8fafc;margin:0 0 20px;}
.kz-final-copy h2 strong{display:block;color:#60a5fa;text-shadow:0 0 28px rgba(59,130,246,.35);}
.kz-final-copy p{max-width:560px;color:#94a3b8;font-size:18px;line-height:1.7;margin:0 0 30px;}
.kz-final-actions{display:flex;gap:16px;flex-wrap:wrap;}
.kz-btn-primary,.kz-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:800;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.kz-btn-primary{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 18px 50px rgba(34,197,94,.22);}
.kz-btn-secondary{color:#e0f2fe;border:1px solid rgba(96,165,250,.25);background:rgba(15,23,42,.58);}
.kz-btn-primary:hover,.kz-btn-secondary:hover{transform:translateY(-3px);}
.kz-final-visual{position:relative;min-height:380px;display:grid;place-items:center;isolation:isolate;}
.kz-k-orb{position:absolute;width:420px;height:420px;border-radius:999px;background:radial-gradient(circle, rgba(59,130,246,.35), transparent 62%);filter:blur(22px);opacity:.8;animation:kzOrbPulse 4s ease-in-out infinite;}
.kz-k-3d{position:relative;z-index:3;width:min(340px,72vw);height:auto;object-fit:contain;filter:drop-shadow(0 0 18px rgba(56,189,248,.65)) drop-shadow(0 0 48px rgba(37,99,235,.45));animation:kzFloatK 4.2s ease-in-out infinite;}
.kz-k-platform,.kz-k-platform-2,.kz-k-platform-3{position:absolute;z-index:1;bottom:54px;width:330px;height:80px;border-radius:50%;border:1px solid rgba(96,165,250,.42);background:radial-gradient(ellipse at center, rgba(59,130,246,.18), transparent 66%);box-shadow:0 0 30px rgba(37,99,235,.28), inset 0 0 30px rgba(56,189,248,.12);animation:kzPlatformSpin 7s linear infinite;}
.kz-k-platform-2{width:250px;height:58px;bottom:66px;opacity:.72;animation-duration:9s;animation-direction:reverse;}
.kz-k-platform-3{width:410px;height:96px;bottom:42px;opacity:.35;animation-duration:12s;}
@keyframes kzFloatK{0%,100%{transform:translateY(0) scale(1);}50%{transform:translateY(-18px) scale(1.025);}}
@keyframes kzOrbPulse{0%,100%{opacity:.58;transform:scale(.94);}50%{opacity:.95;transform:scale(1.08);}}
@keyframes kzPlatformSpin{0%{transform:rotate(0deg) scaleX(1);}100%{transform:rotate(360deg) scaleX(1);}}
@media (max-width:900px){
  .kz-final-inner{grid-template-columns:1fr;text-align:center;gap:28px;}
  .kz-final-copy p,.kz-final-copy h2{margin-left:auto;margin-right:auto;}
  .kz-final-actions{justify-content:center;}
  .kz-final-visual{min-height:300px;}
  .kz-k-3d{width:min(260px,76vw);}
  .kz-k-platform{width:270px;bottom:38px;}
  .kz-k-platform-2{width:210px;bottom:48px;}
  .kz-k-platform-3{width:320px;bottom:32px;}
}

/* K 3D CTA - centralizacao + gelo holografico (patch) */
.krz-final-visual {
  position: relative;
  min-height: 430px;
  display: grid;
  place-items: center;
  align-items: center;
  justify-items: center;
}
.krz-k-stage {
  position: relative;
  width: 100%;
  max-width: 520px;
  height: 420px;
  display: grid;
  place-items: center;
  align-items: center;
  justify-items: center;
  margin: 0 auto;
}
.krz-k-stage::before {
  content: "";
  position: absolute;
  inset: 18% 28% 30% 28%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(191,229,255,.22), rgba(96,165,250,.10), transparent 72%);
  filter: blur(28px);
  z-index: 1;
}
.krz-k-glow {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(96,165,250,.30), rgba(59,130,246,.12), transparent 70%);
  filter: blur(30px);
  opacity: .95;
  pointer-events: none;
}
.krz-k-logo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -58%);
  z-index: 5;
  width: 260px;
  max-width: 80%;
  height: auto;
  object-fit: contain;
  filter:
    drop-shadow(0 0 14px rgba(180, 230, 255, 0.55))
    drop-shadow(0 0 34px rgba(96, 165, 250, 0.38))
    drop-shadow(0 0 70px rgba(37, 99, 235, 0.22));
  animation: krzFloatCentered 4.5s ease-in-out infinite;
}
.krz-orbit {
  position: absolute;
  left: 50%;
  bottom: 72px;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid rgba(96,165,250,.30);
  background: radial-gradient(ellipse at center, rgba(59,130,246,.10), transparent 70%);
  box-shadow:
    0 0 18px rgba(59,130,246,.18),
    inset 0 0 16px rgba(96,165,250,.10);
}
.krz-orbit-1 {
  width: 290px;
  height: 82px;
  animation: krzSpin 10s linear infinite;
}
.krz-orbit-2 {
  width: 220px;
  height: 62px;
  bottom: 84px;
  opacity: .8;
  animation: krzSpinReverse 8s linear infinite;
}
.krz-orbit-3 {
  width: 360px;
  height: 98px;
  bottom: 60px;
  opacity: .45;
  animation: krzSpin 14s linear infinite;
}
@keyframes krzFloatCentered {
  0%, 100% { transform: translate(-50%, -58%); }
  50% { transform: translate(-50%, -62%); }
}
@keyframes krzSpin {
  from { transform: translateX(-50%) rotate(0deg); }
  to { transform: translateX(-50%) rotate(360deg); }
}
@keyframes krzSpinReverse {
  from { transform: translateX(-50%) rotate(360deg); }
  to { transform: translateX(-50%) rotate(0deg); }
}
@media (max-width: 980px) {
  .krz-final-visual { min-height: 340px; }
  .krz-k-stage { height: 320px; }
  .krz-k-logo { width: 200px; transform: translate(-50%, -56%); }
  .krz-orbit-1 { width: 220px; height: 62px; bottom: 58px; }
  .krz-orbit-2 { width: 170px; height: 48px; bottom: 68px; }
  .krz-orbit-3 { width: 280px; height: 78px; bottom: 46px; }
}

/* K 3D refinamento - extrusao real + tilt 3D */
.krz-k-stage {
  perspective: 1100px;
}
.krz-k-logo {
  transform-style: preserve-3d;
  animation: krzFloat3D 6s ease-in-out infinite;
}
.krz-k-shine {
  animation: krzShinePulse 3.2s ease-in-out infinite;
}
@keyframes krzFloat3D {
  0% { transform: translate(-50%, -58%) rotateY(-12deg) rotateX(6deg); }
  50% { transform: translate(-50%, -63%) rotateY(12deg) rotateX(-6deg); }
  100% { transform: translate(-50%, -58%) rotateY(-12deg) rotateX(6deg); }
}
@keyframes krzShinePulse {
  0%, 100% { opacity: .35; }
  50% { opacity: .7; }
}

/* Bloco final CTA - Protecao continua + lista de beneficios animada (Parte 1) */
.krz-secure-cta {
  position: relative;
  padding: 100px 24px;
  overflow: hidden;
  border-top: 1px solid rgba(96, 165, 250, 0.12);
  background:
    radial-gradient(circle at 74% 42%, rgba(59,130,246,.22), transparent 32%),
    radial-gradient(circle at 18% 38%, rgba(14,165,233,.12), transparent 30%),
    linear-gradient(180deg, rgba(2,6,23,.18), rgba(2,6,23,.92));
}
.krz-secure-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(96,165,250,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(96,165,250,.035) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, transparent, black 18%, black 82%, transparent);
  pointer-events: none;
}
.krz-secure-inner {
  position: relative;
  z-index: 2;
  width: min(1220px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 54px;
  align-items: center;
}
.krz-secure-copy { position: relative; }
.krz-secure-badge {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 22px;
  padding: 10px 16px;
  border-radius: 999px;
  color: #7dd3fc;
  font-size: 14px;
  font-weight: 800;
  background: rgba(14, 165, 233, 0.10);
  border: 1px solid rgba(56, 189, 248, 0.24);
  box-shadow: 0 0 28px rgba(14,165,233,.08);
}
.krz-secure-copy h2 {
  margin: 0 0 22px;
  max-width: 650px;
  color: #f8fafc;
  font-size: clamp(40px, 5.2vw, 76px);
  line-height: 1.02;
  letter-spacing: -0.055em;
  font-weight: 950;
}
.krz-secure-copy h2 strong {
  display: block;
  background: linear-gradient(90deg, #60a5fa, #38bdf8, #e0f2fe);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 34px rgba(59,130,246,.22);
}
.krz-secure-copy p {
  max-width: 590px;
  margin: 0 0 30px;
  color: #a8b7d4;
  font-size: 19px;
  line-height: 1.75;
}
.krz-secure-copy p b {
  color: #dff4ff;
  font-weight: 800;
  text-shadow: 0 0 18px rgba(96,165,250,.20);
}
.krz-benefit-machine {
  position: relative;
  width: min(620px, 100%);
  height: 260px;
  overflow: hidden;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(15,23,42,.78), rgba(15,23,42,.38));
  border: 1px solid rgba(96,165,250,.20);
  box-shadow: 0 24px 80px rgba(0,0,0,.30), inset 0 0 38px rgba(59,130,246,.07);
}
.krz-benefit-machine::before, .krz-benefit-machine::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: 76px;
  z-index: 5;
  pointer-events: none;
}
.krz-benefit-machine::before { top: 0; background: linear-gradient(to bottom, rgba(2,6,23,.98), transparent); }
.krz-benefit-machine::after { bottom: 0; background: linear-gradient(to top, rgba(2,6,23,.98), transparent); }
.krz-machine-glow {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 50%, rgba(56,189,248,.18), transparent 34%),
    linear-gradient(90deg, rgba(14,165,233,.08), transparent 50%, rgba(37,99,235,.08));
  filter: blur(6px);
  opacity: .9;
}
.krz-benefit-track {
  position: absolute;
  left: 26px; right: 26px; top: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  animation: krzBenefitUp 18s linear infinite;
}
.krz-benefit-machine:hover .krz-benefit-track { animation-play-state: paused; }
.krz-benefit-item {
  min-height: 58px;
  display: grid;
  grid-template-columns: 42px auto 1fr;
  align-items: center;
  gap: 14px;
  padding: 12px 16px;
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(15,23,42,.84), rgba(15,23,42,.36));
  border: 1px solid rgba(96,165,250,.13);
  box-shadow: inset 0 0 18px rgba(56,189,248,.035), 0 10px 32px rgba(2,6,23,.18);
}
.krz-benefit-icon {
  width: 38px; height: 38px;
  display: grid; place-items: center;
  border-radius: 14px;
  background: rgba(37,99,235,.18);
  border: 1px solid rgba(96,165,250,.24);
  box-shadow: 0 0 20px rgba(59,130,246,.18);
}
.krz-benefit-item strong {
  color: #38bdf8;
  font-size: 22px;
  font-weight: 950;
  letter-spacing: -0.03em;
  text-shadow: 0 0 24px rgba(56,189,248,.30);
}
.krz-benefit-item em {
  color: #dbeafe;
  font-style: normal;
  font-size: 18px;
  opacity: .86;
}
@keyframes krzBenefitUp {
  0% { transform: translateY(18px); }
  100% { transform: translateY(-420px); }
}
.krz-secure-visual {
  position: relative;
  min-height: 430px;
  display: grid;
  place-items: center;
}
@media (max-width: 980px) {
  .krz-secure-cta { padding: 78px 18px; }
  .krz-secure-inner { grid-template-columns: 1fr; gap: 34px; text-align: center; }
  .krz-secure-badge { margin-left: auto; margin-right: auto; }
  .krz-secure-copy h2, .krz-secure-copy p { margin-left: auto; margin-right: auto; }
  .krz-benefit-machine { margin: 0 auto; height: 240px; }
  .krz-benefit-item { grid-template-columns: 38px auto; text-align: left; }
  .krz-benefit-item em { grid-column: 2; font-size: 15px; }
  .krz-secure-visual { min-height: 330px; }
}

/* Bloco final CTA - Parte 2: kz-premium-close (versao limpa, sem botoes) */
.kz-premium-close, .kz-premium-close * {
  outline: none !important;
}
.kz-premium-close {
  position: relative;
  padding: 105px 24px 90px;
  overflow: hidden;
  border: none !important;
  background:
    radial-gradient(circle at 70% 45%, rgba(37, 99, 235, .24), transparent 34%),
    radial-gradient(circle at 22% 36%, rgba(14, 165, 233, .10), transparent 32%),
    linear-gradient(180deg, rgba(2, 6, 23, .32), rgba(2, 6, 23, .94));
}
.kz-premium-close::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(96,165,250,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(96,165,250,.035) 1px, transparent 1px);
  background-size: 76px 76px;
  pointer-events: none;
  opacity: .8;
}
.kz-close-grid {
  position: relative;
  z-index: 2;
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 58px;
  align-items: center;
}
.kz-close-copy { position: relative; z-index: 3; }
.kz-close-pill {
  display: inline-flex;
  align-items: center;
  margin-bottom: 22px;
  padding: 9px 16px;
  border-radius: 999px;
  color: #7dd3fc;
  font-size: 14px;
  font-weight: 800;
  background: rgba(14, 165, 233, .10);
  border: 1px solid rgba(56, 189, 248, .26);
  box-shadow: 0 0 28px rgba(14, 165, 233, .10);
}
.kz-close-copy h2 {
  max-width: 650px;
  margin: 0 0 22px;
  color: #f8fafc;
  font-size: clamp(42px, 5vw, 74px);
  line-height: 1.02;
  letter-spacing: -0.055em;
  font-weight: 950;
  background: transparent !important;
}
.kz-close-copy h2 span {
  display: block;
  background: linear-gradient(90deg, #60a5fa, #38bdf8, #dff4ff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 30px rgba(59, 130, 246, .22);
}
.kz-close-copy p {
  max-width: 590px;
  margin: 0 0 30px;
  color: #a8b7d4;
  font-size: 18px;
  line-height: 1.75;
  background: transparent !important;
}
.kz-live-stack {
  width: min(600px, 100%);
  padding: 18px;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(15, 23, 42, .78), rgba(15, 23, 42, .42));
  border: 1px solid rgba(96, 165, 250, .18);
  box-shadow: 0 24px 80px rgba(0, 0, 0, .28), inset 0 0 40px rgba(59, 130, 246, .07);
}

/* KZ-LIVE-TICKER */
.kz-live-stack {
  overflow: hidden;
  position: relative;
  height: 272px;
}
.kz-live-stack::before, .kz-live-stack::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: 34px;
  z-index: 2;
  pointer-events: none;
}
.kz-live-stack::before { top: 0; background: linear-gradient(180deg, rgba(11,17,32,.95), rgba(11,17,32,0)); }
.kz-live-stack::after { bottom: 0; background: linear-gradient(0deg, rgba(11,17,32,.95), rgba(11,17,32,0)); }
.kz-live-track {
  display: flex;
  flex-direction: column;
  animation: kzLiveScroll 16s linear infinite;
}
.kz-live-stack:hover .kz-live-track { animation-play-state: paused; }
@keyframes kzLiveScroll {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}

.kz-live-line {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 14px;
  align-items: center;
  padding: 15px 16px;
  border-bottom: 1px solid rgba(96, 165, 250, .10);
  animation: kzLineGlow 4s ease-in-out infinite;
}
.kz-live-line:last-child { border-bottom: 0; }
.kz-live-line strong {
  color: #38bdf8;
  font-size: 20px;
  font-weight: 950;
  text-shadow: 0 0 22px rgba(56, 189, 248, .28);
}
.kz-live-line span {
  color: #dbeafe;
  font-size: 16px;
  opacity: .86;
}
@keyframes kzLineGlow {
  0%, 100% { opacity: .82; }
  50% { opacity: 1; }
}
.kz-close-visual {
  position: relative;
  min-height: 430px;
  display: grid;
  place-items: center;
}
.kz-ice-stage {
  position: relative;
  width: 100%;
  max-width: 520px;
  height: 420px;
  display: grid;
  place-items: center;
}
.kz-ice-glow {
  position: absolute;
  width: 410px;
  height: 410px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(191, 229, 255, .32), rgba(96, 165, 250, .16), transparent 70%);
  filter: blur(34px);
  opacity: .95;
  animation: kzIceGlow 4.2s ease-in-out infinite;
}
.kz-ice-k {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 265px;
  max-width: 80%;
  z-index: 5;
  transform: translate(-50%, -60%);
  object-fit: contain;
  filter:
    drop-shadow(0 0 18px rgba(210, 244, 255, .62))
    drop-shadow(0 0 44px rgba(96, 165, 250, .40))
    drop-shadow(0 0 90px rgba(37, 99, 235, .24));
  transform-style: preserve-3d;
  animation: kzKFloat 4.8s ease-in-out infinite;
}
.kz-ice-ring {
  position: absolute;
  left: 50%;
  bottom: 66px;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid rgba(147, 197, 253, .30);
  background: radial-gradient(ellipse at center, rgba(59, 130, 246, .14), transparent 70%);
  box-shadow: 0 0 28px rgba(59, 130, 246, .24), inset 0 0 22px rgba(191, 229, 255, .09);
}
.kz-ring-one { width: 300px; height: 82px; animation: kzRingSpin 11s linear infinite; }
.kz-ring-two { width: 224px; height: 62px; bottom: 82px; opacity: .78; animation: kzRingSpinReverse 8.5s linear infinite; }
.kz-ring-three { width: 380px; height: 104px; bottom: 52px; opacity: .42; animation: kzRingSpin 15s linear infinite; }
@keyframes kzKFloat {
  0%, 100% { transform: translate(-50%, -60%) rotateY(-10deg) rotateX(5deg); }
  50% { transform: translate(-50%, -64%) rotateY(10deg) rotateX(-5deg); }
}
@keyframes kzIceGlow {
  0%, 100% { opacity: .65; transform: scale(.96); }
  50% { opacity: 1; transform: scale(1.06); }
}
@keyframes kzRingSpin {
  from { transform: translateX(-50%) rotate(0deg); }
  to { transform: translateX(-50%) rotate(360deg); }
}
@keyframes kzRingSpinReverse {
  from { transform: translateX(-50%) rotate(360deg); }
  to { transform: translateX(-50%) rotate(0deg); }
}
@media (max-width: 980px) {
  .kz-premium-close { padding: 78px 18px; }
  .kz-close-grid { grid-template-columns: 1fr; text-align: center; gap: 36px; }
  .kz-close-pill { margin-left: auto; margin-right: auto; }
  .kz-close-copy h2, .kz-close-copy p { margin-left: auto; margin-right: auto; }
  .kz-live-line { grid-template-columns: 1fr; gap: 4px; text-align: center; }
  .kz-close-visual { min-height: 330px; }
  .kz-ice-stage { height: 320px; }
  .kz-ice-k { width: 205px; }
  .kz-ring-one { width: 230px; height: 64px; bottom: 54px; }
  .kz-ring-two { width: 176px; height: 48px; bottom: 64px; }
  .kz-ring-three { width: 290px; height: 78px; bottom: 44px; }
}

/* KRZ-K-FINAL-IMG (K real, arquivo PNG) */
.krz-k-final-box {
  position: relative;
  width: 100%;
  min-height: 440px;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.krz-k-stage {
  position: relative;
  width: 520px;
  max-width: 100%;
  height: 420px;
  display: grid;
  place-items: center;
}
.krz-k-glow {
  position: absolute;
  width: 430px;
  height: 430px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(190, 235, 255, .32), rgba(59, 130, 246, .18), transparent 70%);
  filter: blur(34px);
  opacity: .95;
  animation: krzKGlowPulse 4s ease-in-out infinite;
}
.krz-k-final-img {
  position: absolute;
  left: 50%;
  top: 46%;
  width: 300px;
  max-width: 82%;
  height: auto;
  object-fit: contain;
  z-index: 5;
  transform: translate(-50%, -50%);
  mix-blend-mode: normal;
  filter:
    drop-shadow(0 0 12px rgba(220, 245, 255, .75))
    drop-shadow(0 0 34px rgba(96, 165, 250, .50))
    drop-shadow(0 0 80px rgba(37, 99, 235, .28));
  animation: krzKFloatOnly 4.8s ease-in-out infinite;
}
.krz-k-ring {
  position: absolute;
  left: 50%;
  bottom: 58px;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid rgba(147, 197, 253, .32);
  background: radial-gradient(ellipse at center, rgba(59, 130, 246, .15), transparent 70%);
  box-shadow: 0 0 28px rgba(59, 130, 246, .26), inset 0 0 24px rgba(191, 229, 255, .10);
}
.krz-k-ring-1 { width: 320px; height: 86px; animation: krzRingSpin 12s linear infinite; }
.krz-k-ring-2 { width: 245px; height: 66px; bottom: 72px; opacity: .82; animation: krzRingSpinReverse 9s linear infinite; }
.krz-k-ring-3 { width: 410px; height: 110px; bottom: 44px; opacity: .45; animation: krzRingSpin 16s linear infinite; }
@keyframes krzKFloatOnly {
  0%, 100% { transform: translate(-50%, -50%); }
  50% { transform: translate(-50%, -55%); }
}
@keyframes krzKGlowPulse {
  0%, 100% { opacity: .65; transform: scale(.96); }
  50% { opacity: 1; transform: scale(1.06); }
}
@keyframes krzRingSpin {
  from { transform: translateX(-50%) rotate(0deg); }
  to { transform: translateX(-50%) rotate(360deg); }
}
@keyframes krzRingSpinReverse {
  from { transform: translateX(-50%) rotate(360deg); }
  to { transform: translateX(-50%) rotate(0deg); }
}
@media (max-width: 768px) {
  .krz-k-final-box { min-height: 320px; }
  .krz-k-stage { height: 300px; }
  .krz-k-final-img { width: 210px; }
  .krz-k-ring-1 { width: 230px; height: 62px; bottom: 42px; }
  .krz-k-ring-2 { width: 180px; height: 48px; bottom: 52px; }
  .krz-k-ring-3 { width: 290px; height: 78px; bottom: 34px; }
}

/* KZ-SHOWCASE (substitui o K final por vitrine de projetos) */
.krz-showcase-box{ width:100%; min-height:440px; display:grid; place-items:center; position:relative; }
.krz-showcase-glow{ position:absolute; inset:-30px; background:radial-gradient(circle at 50% 45%, rgba(56,142,255,.32), transparent 70%); filter:blur(38px); z-index:0; animation:krzShowcaseGlow 4.5s ease-in-out infinite; pointer-events:none; }
@keyframes krzShowcaseGlow{ 0%,100%{ opacity:.55; } 50%{ opacity:1; } }
.krz-showcase-stage{ position:relative; width:100%; max-width:440px; height:420px; border-radius:24px; overflow:hidden; box-shadow:0 30px 80px rgba(0,0,0,.55); border:1px solid rgba(120,170,255,.25); z-index:1; background:#0b1120; }
.krz-slide{ position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.1s ease; }
.krz-slide.active{ opacity:1; }
.krz-slide-overlay{ position:absolute; left:0; right:0; bottom:0; padding:22px 24px 26px; background:linear-gradient(180deg, rgba(6,12,26,0) 0%, rgba(6,12,26,.78) 48%, rgba(6,12,26,.96) 100%); }
.krz-slide-tag{ display:inline-block; padding:4px 12px; border-radius:999px; background:rgba(56,142,255,.18); border:1px solid rgba(120,170,255,.4); color:#8fc4ff; font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:10px; }
.krz-slide-title{ font-size:1.5rem; font-weight:800; color:#fff; margin:0 0 4px; }
.krz-slide-desc{ font-size:.92rem; color:rgba(255,255,255,.78); margin:0; }
.krz-showcase-dots{ position:absolute; top:16px; right:16px; display:flex; gap:6px; z-index:2; }
.krz-dot{ width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,.3); transition:background .3s,transform .3s; }
.krz-dot.active{ background:#4fa8ff; transform:scale(1.35); }
@media (max-width:768px){
  .krz-showcase-box{ min-height:340px; }
  .krz-showcase-stage{ height:320px; max-width:100%; }
  .krz-slide-title{ font-size:1.2rem; }
}

.dash-avatar-img,
.dash-avatar-fallback {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  flex: 0 0 52px;
  object-fit: cover;
  overflow: hidden;
  border: 1px solid rgba(96, 165, 250, 0.35);
  box-shadow: 0 0 22px rgba(59, 130, 246, 0.25);
}
.dash-avatar-fallback {
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #3b82f6, #60a5fa);
  color: #fff;
  font-weight: 900;
  font-size: 20px;
}
@media (max-width: 768px) {
  .dash-avatar-img,
  .dash-avatar-fallback {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
  }
}

/* ================= PLANOS ================= */
.kz-planos{ padding-top:78px; padding-bottom:78px; }
.kz-pl-pill{ display:inline-block; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:#8fc8ff; border:1px solid rgba(120,190,255,.28); border-radius:999px; padding:6px 14px; margin-bottom:14px; }
.kz-pl-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(268px,1fr)); gap:18px; margin-top:30px; align-items:stretch; }
.kz-pl-card{ position:relative; display:flex; flex-direction:column; padding:28px 24px 24px; border-radius:18px; background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015)); border:1px solid rgba(255,255,255,.09); backdrop-filter:blur(8px); transition:transform .38s cubic-bezier(.16,1,.3,1),border-color .38s,box-shadow .38s; }
.kz-pl-card:hover{ transform:translateY(-6px); border-color:rgba(120,190,255,.38); box-shadow:0 18px 50px rgba(0,0,0,.35); }
.kz-pl-card.is-featured{ border-color:rgba(90,180,255,.45); background:linear-gradient(180deg,rgba(60,140,255,.10),rgba(255,255,255,.02)); box-shadow:0 0 0 1px rgba(90,180,255,.12),0 20px 60px rgba(10,60,120,.32); }
.kz-pl-tag{ position:absolute; top:-11px; left:24px; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; background:#2e8bff; color:#fff; border-radius:999px; padding:5px 12px; }
.kz-pl-card h3{ margin:0 0 6px; font-size:21px; letter-spacing:-.01em; }
.kz-pl-line{ margin:0 0 18px; font-size:14px; opacity:.72; line-height:1.5; }
.kz-pl-card ul{ list-style:none; padding:0; margin:0 0 24px; }
.kz-pl-card li{ position:relative; padding-left:22px; margin:9px 0; font-size:14.5px; line-height:1.45; opacity:.92; }
.kz-pl-card li::before{ content:""; position:absolute; left:2px; top:8px; width:7px; height:7px; border-radius:50%; background:#58b2ff; box-shadow:0 0 10px rgba(88,178,255,.7); }
.kz-pl-btn{ margin-top:auto; display:block; text-align:center; text-decoration:none; padding:12px 16px; border-radius:12px; font-weight:600; font-size:14.5px; color:#dcefff; border:1px solid rgba(255,255,255,.16); transition:background .25s,border-color .25s,color .25s; }
.kz-pl-btn:hover{ background:rgba(255,255,255,.07); border-color:rgba(120,190,255,.45); }
.kz-pl-btn.is-solid{ background:#2e8bff; border-color:#2e8bff; color:#fff; }
.kz-pl-btn.is-solid:hover{ background:#4aa0ff; border-color:#4aa0ff; }
.kz-pl-note{ margin-top:26px; font-size:13.5px; opacity:.58; max-width:660px; line-height:1.6; }
@media (max-width:640px){ .kz-pl-card{ padding:24px 20px; } .kz-planos{ padding-top:56px; padding-bottom:56px; } }

/* ===== KZ LEGAL (termos, privacidade, cookies) ===== */
.kz-legal{padding:120px 0 60px;max-width:900px}
.kz-legal h1.secao{text-align:left;margin:14px 0 8px}
.kz-legal-sub{color:var(--suave);font-size:15px;line-height:1.6;margin:0 0 26px;max-width:680px}
.kz-legal-box{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:28px 30px;backdrop-filter:blur(10px)}
.kz-legal-box h2{font-size:16.5px;margin:26px 0 10px;color:#fff;letter-spacing:.1px}
.kz-legal-box h2:first-child{margin-top:0}
.kz-legal-box p{color:var(--suave);font-size:14.5px;line-height:1.75;margin:0 0 12px}
.kz-legal-box a{color:var(--ciano);text-decoration:none}
.kz-legal-box a:hover{text-decoration:underline}
.kz-legal-att{margin-top:26px!important;padding-top:16px;border-top:1px solid rgba(255,255,255,.07);font-size:13px!important;opacity:.8}
.kz-legal-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.kz-legal-nav a{font-size:13px;color:var(--suave);text-decoration:none;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:8px 15px;transition:.16s}
.kz-legal-nav a:hover{border-color:var(--ciano);color:#fff}
@media(max-width:640px){.kz-legal{padding:100px 0 40px}.kz-legal-box{padding:20px 18px;border-radius:16px}}
