﻿/* ==========================================================
   Landing Page — estilos isolados (não afeta o restante do app)
   Todos os seletores são prefixados com .lp para evitar conflitos
   ========================================================== */

:root {
  --lp-primary: #5A66F1;
  --lp-primary-hover: #4E59E8;
  --lp-primary-soft: rgb(90 102 241 / 0.10);
  --lp-comet-50: #F7F8FA;
  --lp-comet-200: #D7DAE6;
  --lp-comet-300: #BFC2D4;
  --lp-comet-400: #9BA3BF;
  --lp-comet-950: #2E2E3D;
  --lp-gray-100: #F1F5F9;
  --lp-body-bg: #F2F6F9;
  --lp-border: #E8EAF1;
  --lp-border-strong: #E2E8F0;
  --lp-divider: #F1F5F9;
  --lp-bg-dark: #1E293B;
  --lp-fg-1: #0F172A;
  --lp-fg-2: #2E2E3D;
  --lp-fg-3: #475569;
  --lp-fg-muted: #71749F;
  --lp-success: #22C55E;
  --lp-info: #4C75CF;
  --lp-warning: #EAB308;
  --lp-danger: #F43F5E;
  --lp-r-xs: 2px;
  --lp-sh-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --lp-sh-md: 0 4px 6px -1px rgb(0 0 0 / 0.10), 0 2px 4px -2px rgb(0 0 0 / 0.10);
}

/* Remove margin padrão do browser quando a LP está ativa */
body:has(> .lp) { margin: 0; padding: 0; }

/* Reset isolado dentro do wrapper .lp */
.lp { box-sizing: border-box; background: var(--lp-body-bg); color: var(--lp-fg-3); font-family: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif; -webkit-font-smoothing: antialiased; margin: 0; padding: 0; min-height: 100vh; }
.lp *, .lp *::before, .lp *::after { box-sizing: border-box; }
.lp a { color: inherit; text-decoration: none; }
.lp img, .lp svg { display: block; max-width: 100%; }
.lp .wrap { max-width: 1240px; margin: 0 auto; padding: 0 32px; }
.lp .eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--lp-fg-muted); }

/* BUTTONS */
.lp .btn { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 18px; border-radius: var(--lp-r-xs); font: 500 14px/1 "Inter", sans-serif; border: 1px solid transparent; cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
.lp .btn-primary { background: var(--lp-primary); color: #fff; }
.lp .btn-primary:hover { background: var(--lp-primary-hover); color: #fff; }
.lp .btn-ghost-dark { background: transparent; color: #E2E8F0; border-color: rgba(255,255,255,.18); }
.lp .btn-ghost-dark:hover { background: rgba(255,255,255,.06); color: #fff; }
.lp .btn-lg { height: 44px; padding: 0 22px; font-size: 14px; }
.lp .btn i { font-size: 16px; line-height: 1; }

/* NAV */
.lp .lp-nav { position: sticky; top: 0; z-index: 50; background: rgba(30,41,59,.94); backdrop-filter: saturate(140%) blur(8px); border-bottom: 1px solid rgba(255,255,255,.08); }
.lp .nav-row { display: flex; align-items: center; justify-content: space-between; height: 72px; }
.lp .brand { display: flex; align-items: center; gap: 14px; color: #fff; font-size: 13px; font-weight: 500; }
.lp .brand img.logo { height: 26px; width: auto; display: block; }
.lp .brand small { color: var(--lp-comet-300); font-size: 12px; border-left: 1px solid rgba(255,255,255,.18); padding-left: 14px; letter-spacing: .01em; }
.lp .nav-links { display: flex; gap: 28px; align-items: center; }
.lp .nav-links a { font-size: 13.5px; font-weight: 500; color: var(--lp-comet-200); }
.lp .nav-links a:hover { color: #fff; }
.lp .nav-cta { display: flex; gap: 10px; align-items: center; }
.lp .btn-nav-access { background: transparent; color: #E2E8F0; border: 1px solid rgba(255,255,255,.20); height: 40px; padding: 0 18px; display: inline-flex; align-items: center; border-radius: var(--lp-r-xs); font: 500 14px/1 "Inter", sans-serif; cursor: pointer; transition: background .15s, border-color .15s; }
.lp .btn-nav-access:hover { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.32); color: #fff; }

/* HERO */
.lp .hero { position: relative; background: var(--lp-bg-dark); color: #E2E8F0; overflow: hidden; }
.lp .hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 64px; align-items: center; padding: 96px 0 104px; }
.lp .hero h1 { font-weight: 700; font-size: 52px; line-height: 1.08; letter-spacing: -.018em; margin: 18px 0 22px; color: #fff; text-wrap: balance; }
.lp .hero h1 .accent { color: #A5B1FF; }
.lp .hero p.lead { font-size: 17px; line-height: 1.55; color: #BFC8D6; max-width: 560px; margin: 0 0 28px; }
.lp .hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 22px; }
.lp .hero-note { display: flex; align-items: flex-start; gap: 10px; color: var(--lp-comet-300); font-size: 13px; max-width: 540px; line-height: 1.5; }
.lp .hero-note i { color: var(--lp-primary); margin-top: 2px; font-size: 14px; }
.lp .hero-note b { color: #E2E8F0; font-weight: 600; }
.lp .tag-pill { display: inline-flex; align-items: center; gap: 8px; padding: 5px 10px; border: 1px solid rgba(255,255,255,.14); border-radius: var(--lp-r-xs); font-size: 11.5px; font-weight: 500; color: #CBD3E0; }
.lp .tag-pill .dot-g { width: 6px; height: 6px; background: var(--lp-primary); border-radius: 9999px; box-shadow: 0 0 0 4px rgba(90,102,241,.18); }

/* MOCK DASHBOARD */
.lp .mock { border-radius: var(--lp-r-xs); background: #fff; color: var(--lp-fg-2); border: 1px solid rgba(255,255,255,.08); box-shadow: 0 24px 60px -20px rgba(0,0,0,.55); }
.lp .mock-top { display: flex; align-items: center; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--lp-border); background: var(--lp-comet-50); }
.lp .mock-top .b { width: 9px; height: 9px; border-radius: 9999px; background: var(--lp-comet-200); }
.lp .mock-url { margin-left: 10px; font-family: ui-monospace, monospace; font-size: 11.5px; color: var(--lp-fg-muted); }
.lp .mock-body { padding: 18px 18px 20px; }
.lp .mock-h { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.lp .mock-h h4 { margin: 0; font-size: 14px; font-weight: 700; color: var(--lp-fg-1); }
.lp .mock-h .pill { font-size: 10.5px; font-weight: 600; letter-spacing: .06em; color: var(--lp-primary); background: var(--lp-primary-soft); padding: 4px 8px; border-radius: 9999px; text-transform: uppercase; }
.lp .stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 14px; }
.lp .stat { background: var(--lp-comet-50); border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 12px; }
.lp .stat .k { font-size: 10.5px; font-weight: 600; letter-spacing: .06em; color: var(--lp-fg-muted); text-transform: uppercase; }
.lp .stat .v { font-size: 24px; font-weight: 700; line-height: 1; margin-top: 6px; color: var(--lp-fg-1); letter-spacing: -.01em; }
.lp .stat .d { font-size: 11.5px; color: var(--lp-fg-muted); margin-top: 6px; }
.lp .mock-row { display: grid; grid-template-columns: 14px 1fr 96px 70px; gap: 12px; align-items: center; padding: 10px 4px; border-top: 1px solid var(--lp-divider); font-size: 13px; color: var(--lp-fg-3); }
.lp .mock-row:first-of-type { border-top: 0; }
.lp .mock-row .pri { width: 8px; height: 8px; border-radius: 9999px; }
.lp .mock-row .pri.crit { background: var(--lp-danger); box-shadow: 0 0 0 3px rgba(244,63,94,.16); }
.lp .mock-row .pri.high { background: var(--lp-warning); box-shadow: 0 0 0 3px rgba(234,179,8,.16); }
.lp .mock-row .pri.med { background: var(--lp-info); box-shadow: 0 0 0 3px rgba(76,117,207,.16); }
.lp .mock-row .pri.low { background: var(--lp-comet-400); }
.lp .mock-row .rid { color: var(--lp-fg-muted); font-family: ui-monospace, monospace; font-size: 11.5px; margin-right: 6px; }
.lp .mock-row .stt { font-size: 10.5px; font-weight: 600; letter-spacing: .06em; text-align: right; text-transform: uppercase; color: var(--lp-success); }
.lp .mock-row .stt.warn { color: var(--lp-warning); }
.lp .mock-row .stt.idle { color: var(--lp-fg-muted); }
.lp .mock-row .sla { font-family: ui-monospace, monospace; font-size: 11px; color: var(--lp-fg-muted); text-align: right; }

/* CREDIBILIDADE */
.lp .cred { background: #fff; border-bottom: 1px solid var(--lp-border); }
.lp .cred-row { display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: center; padding: 32px 0; }
.lp .cred-row .ctx p { margin: 6px 0 0; font-size: 14px; color: var(--lp-fg-3); line-height: 1.55; }
.lp .cred-list { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.lp .cred-card { background: #fff; border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 14px; display: flex; flex-direction: column; gap: 4px; min-height: 88px; }
.lp .cred-card .k { font-size: 10.5px; font-weight: 600; letter-spacing: .06em; color: var(--lp-fg-muted); text-transform: uppercase; }
.lp .cred-card .v { font-size: 13.5px; font-weight: 700; color: var(--lp-fg-1); line-height: 1.3; }
.lp .cred-card .d { font-size: 12px; color: var(--lp-fg-muted); }

/* SECTIONS */
.lp section.s { padding: 96px 0; border-bottom: 1px solid var(--lp-border); }
.lp section.s.alt { background: #fff; }
.lp .s-head { max-width: 760px; margin-bottom: 48px; }
.lp .s-head .eyebrow { display: block; margin-bottom: 14px; }
.lp h2.s-title { font-weight: 700; font-size: 40px; line-height: 1.12; letter-spacing: -.018em; margin: 0 0 16px; color: var(--lp-fg-1); text-wrap: balance; }
.lp h2.s-title .accent { color: var(--lp-primary); }
.lp .s-sub { font-size: 16px; line-height: 1.6; color: var(--lp-fg-3); max-width: 680px; margin: 0; }

/* PROBLEMA */
.lp .problems { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.lp .pcard { background: #fff; border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 24px; display: flex; flex-direction: column; gap: 12px; box-shadow: var(--lp-sh-sm); }
.lp .pcard .pmark { width: 32px; height: 32px; border-radius: var(--lp-r-xs); background: rgb(244 63 94 / .10); color: var(--lp-danger); display: grid; place-items: center; font-weight: 700; font-size: 13px; font-family: ui-monospace, monospace; }
.lp .pcard h3 { margin: 4px 0 0; font-size: 17px; font-weight: 700; color: var(--lp-fg-1); letter-spacing: -.01em; }
.lp .pcard p { margin: 0; color: var(--lp-fg-3); font-size: 14px; line-height: 1.6; }

/* COMO FUNCIONA */
.lp .how { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); background: #fff; overflow: hidden; box-shadow: var(--lp-sh-sm); }
.lp .step { padding: 28px 24px; border-right: 1px solid var(--lp-border); display: flex; flex-direction: column; gap: 12px; min-height: 320px; }
.lp .step:last-child { border-right: 0; }
.lp .step .num { font-weight: 700; font-size: 13px; color: var(--lp-primary); font-family: ui-monospace, monospace; letter-spacing: .04em; background: var(--lp-primary-soft); width: fit-content; padding: 5px 10px; border-radius: var(--lp-r-xs); }
.lp .step h3 { margin: 0; font-size: 16px; font-weight: 700; color: var(--lp-fg-1); letter-spacing: -.005em; line-height: 1.35; }
.lp .step p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--lp-fg-3); }
.lp .step .url { margin-top: 4px; font-family: ui-monospace, monospace; font-size: 12px; color: var(--lp-fg-2); background: var(--lp-comet-50); border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 8px 10px; word-break: break-all; }
.lp .step .url b { color: var(--lp-primary); font-weight: 600; }

/* FUNCIONALIDADES */
.lp .feat-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--lp-border); border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); overflow: hidden; }
.lp .feat { background: #fff; padding: 26px 24px; display: flex; flex-direction: column; gap: 10px; min-height: 188px; }
.lp .feat .ic { width: 36px; height: 36px; border-radius: var(--lp-r-xs); background: var(--lp-primary-soft); color: var(--lp-primary); display: grid; place-items: center; font-size: 18px; }
.lp .feat h4 { margin: 8px 0 0; font-size: 15px; font-weight: 700; color: var(--lp-fg-1); letter-spacing: -.005em; }
.lp .feat p { margin: 0; color: var(--lp-fg-3); font-size: 13.5px; line-height: 1.6; }
.lp .audit-bar { margin-top: 16px; background: var(--lp-bg-dark); color: #E2E8F0; border-radius: var(--lp-r-xs); padding: 22px 26px; display: grid; grid-template-columns: 42px 1fr auto; gap: 18px; align-items: center; }
.lp .audit-bar .ic { width: 42px; height: 42px; border-radius: var(--lp-r-xs); background: rgba(255,255,255,.06); display: grid; place-items: center; color: #A5B1FF; font-size: 20px; }
.lp .audit-bar .h { font-size: 15px; font-weight: 700; color: #fff; }
.lp .audit-bar .p { font-size: 13.5px; color: #BFC8D6; margin-top: 3px; line-height: 1.55; }
.lp .audit-bar .tag { font-size: 11px; font-weight: 600; letter-spacing: .08em; color: #A5B1FF; text-transform: uppercase; }

/* PARA QUEM É */
.lp .who { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.lp .who-card { background: #fff; border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 22px; display: flex; flex-direction: column; gap: 14px; min-height: 218px; box-shadow: var(--lp-sh-sm); }
.lp .who-card .ic { width: 42px; height: 42px; border-radius: var(--lp-r-xs); background: var(--lp-bg-dark); color: #A5B1FF; display: grid; place-items: center; font-size: 20px; }
.lp .who-card h4 { margin: 4px 0 0; font-size: 15px; font-weight: 700; letter-spacing: -.005em; color: var(--lp-fg-1); }
.lp .who-card p { margin: 0; font-size: 13.5px; color: var(--lp-fg-3); line-height: 1.6; }

/* DIFERENCIAIS */
.lp .diffs { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.lp .diff { background: #fff; border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 20px 22px; display: grid; grid-template-columns: 22px 1fr; gap: 14px; align-items: flex-start; box-shadow: var(--lp-sh-sm); }
.lp .diff .ck { width: 22px; height: 22px; border-radius: 9999px; background: var(--lp-primary-soft); color: var(--lp-primary); display: grid; place-items: center; margin-top: 2px; font-size: 14px; }
.lp .diff h4 { margin: 0 0 4px; font-size: 14.5px; font-weight: 700; letter-spacing: -.005em; color: var(--lp-fg-1); }
.lp .diff p { margin: 0; font-size: 13.5px; color: var(--lp-fg-3); line-height: 1.55; }

/* DEPOIMENTOS */
.lp .testis { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.lp .testi { background: #fff; border: 1px solid var(--lp-border); border-radius: var(--lp-r-xs); padding: 26px; display: flex; flex-direction: column; gap: 20px; min-height: 240px; box-shadow: var(--lp-sh-sm); }
.lp .testi blockquote { margin: 0; font-size: 16px; line-height: 1.55; color: var(--lp-fg-2); font-weight: 500; letter-spacing: -.005em; }
.lp .testi blockquote::before { content: "\201C"; color: var(--lp-primary); font-weight: 700; margin-right: 2px; }
.lp .testi blockquote::after { content: "\201D"; color: var(--lp-primary); font-weight: 700; }
.lp .testi .who-row { display: flex; align-items: center; gap: 12px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--lp-divider); }
.lp .testi .avatar { width: 36px; height: 36px; border-radius: 9999px; background: var(--lp-primary-soft); color: var(--lp-primary); display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.lp .testi .meta .name { font-size: 13.5px; font-weight: 700; color: var(--lp-fg-1); }
.lp .testi .meta .role { font-size: 12.5px; color: var(--lp-fg-muted); margin-top: 2px; }

/* CTA FINAL */
.lp .cta-final { background: var(--lp-bg-dark); color: #E2E8F0; border-top: 1px solid var(--lp-border); }
.lp .cta-final .wrap { padding-top: 88px; padding-bottom: 88px; }
.lp .cta-inner { display: grid; grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: center; }
.lp .cta-final h2 { font-weight: 700; font-size: 40px; line-height: 1.12; letter-spacing: -.018em; margin: 0 0 16px; color: #fff; text-wrap: balance; }
.lp .cta-final h2 .accent { color: #A5B1FF; }
.lp .cta-final p.lead { font-size: 16px; line-height: 1.6; color: #BFC8D6; margin: 0 0 24px; max-width: 520px; }
.lp .cta-row { display: flex; gap: 12px; flex-wrap: wrap; }
.lp .cta-note { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 22px; font-size: 12px; font-weight: 500; color: var(--lp-comet-300); }
.lp .cta-note span { display: inline-flex; align-items: center; gap: 8px; }
.lp .cta-note .dot-g { width: 6px; height: 6px; background: var(--lp-primary); border-radius: 9999px; }
.lp .cta-card { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.10); border-radius: var(--lp-r-xs); padding: 26px; }
.lp .cta-card .eyebrow { color: var(--lp-comet-400); margin-bottom: 14px; display: block; }
.lp .cta-card ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.lp .cta-card li { display: grid; grid-template-columns: 18px 1fr; gap: 12px; font-size: 13.5px; color: #CBD3E0; align-items: start; line-height: 1.5; }
.lp .cta-card li i { margin-top: 1px; color: #A5B1FF; font-size: 16px; }

/* FOOTER */
.lp .lp-footer { background: var(--lp-comet-950); color: var(--lp-comet-300); padding: 56px 0 24px; }
.lp .foot-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 48px; padding-bottom: 40px; border-bottom: 1px solid rgba(255,255,255,.08); }
.lp .foot-grid h5 { margin: 0 0 14px; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--lp-comet-400); }
.lp .foot-grid p, .lp .foot-grid a, .lp .foot-grid li { font-size: 13.5px; color: var(--lp-comet-200); line-height: 1.7; }
.lp .foot-grid ul { margin: 0; padding: 0; list-style: none; }
.lp .foot-grid a:hover { color: #fff; }
.lp .foot-bottom { display: flex; justify-content: space-between; align-items: center; padding-top: 22px; font-size: 12px; color: var(--lp-comet-400); }

/* ── HAMBURGER & MOBILE MENU ─────────────────────────── */
.lp .nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 40px;
  height: 40px;
  background: none;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: var(--lp-r-xs);
  cursor: pointer;
  padding: 0;
  align-items: center;
  flex-shrink: 0;
  transition: border-color .15s, background .15s;
}
.lp .nav-hamburger:hover { border-color: rgba(255,255,255,.36); background: rgba(255,255,255,.06); }
.lp .nav-hamburger span {
  display: block;
  width: 18px;
  height: 2px;
  background: rgba(255,255,255,.80);
  border-radius: 1px;
  transition: transform .25s ease, opacity .2s ease;
  transform-origin: center;
}
.lp .nav-hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.lp .nav-hamburger.is-open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.lp .nav-hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile menu drawer */
.lp .nav-mobile {
  display: none;
  border-top: 1px solid rgba(255,255,255,.08);
  background: rgba(20,30,50,.98);
  backdrop-filter: saturate(140%) blur(8px);
}
.lp .nav-mobile.is-open { display: block; }

.lp .nav-mobile-links {
  display: flex;
  flex-direction: column;
  padding: 8px 0;
}
.lp .nav-mobile-links a {
  font-size: 15px;
  font-weight: 500;
  color: var(--lp-comet-200);
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
  display: block;
}
.lp .nav-mobile-links a:last-child { border-bottom: none; }
.lp .nav-mobile-links a:hover { color: #fff; }

.lp .nav-mobile-cta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 0 22px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.lp .nav-mobile-cta .btn,
.lp .nav-mobile-cta .btn-nav-access {
  width: 100%;
  height: 44px;
  justify-content: center;
  font-size: 14px;
  border-radius: var(--lp-r-xs);
  display: flex;
  align-items: center;
}
.lp .nav-mobile-cta .btn-nav-access {
  background: transparent;
  color: #E2E8F0;
  border: 1px solid rgba(255,255,255,.22);
  font: 500 14px/1 "Inter", sans-serif;
  cursor: pointer;
  transition: background .15s, border-color .15s;
  text-decoration: none;
}
.lp .nav-mobile-cta .btn-nav-access:hover { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.36); }

/* RESPONSIVE */
@media (max-width: 1080px) {
  .lp .hero-grid { grid-template-columns: 1fr; gap: 48px; padding: 64px 0 72px; }
  .lp .hero h1 { font-size: 40px; }
  .lp h2.s-title { font-size: 32px; }
  .lp .how { grid-template-columns: repeat(2,1fr); }
  .lp .step { border-right: 1px solid var(--lp-border); border-bottom: 1px solid var(--lp-border); }
  .lp .step:nth-child(2n) { border-right: 0; }
  .lp .step:nth-last-child(-n+2) { border-bottom: 0; }
  .lp .feat-grid { grid-template-columns: repeat(2,1fr); }
  .lp .who { grid-template-columns: repeat(2,1fr); }
  .lp .testis { grid-template-columns: 1fr; }
  .lp .diffs { grid-template-columns: 1fr; }
  .lp .cred-row { grid-template-columns: 1fr; gap: 20px; }
  .lp .cred-list { grid-template-columns: repeat(2,1fr); }
  .lp .cta-inner { grid-template-columns: 1fr; }
  .lp .cta-final h2 { font-size: 32px; }
  .lp .foot-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}

/* Tablet & mobile — hamburger aparece a partir de 768px */
@media (max-width: 768px) {
  .lp .nav-links { display: none; }
  .lp .nav-cta   { display: none; }
  .lp .nav-hamburger { display: flex; }
  .lp .nav-row { height: 64px; }
}

@media (max-width: 640px) {
  .lp .wrap { padding: 0 20px; }
  .lp .hero h1 { font-size: 32px; }
  .lp section.s { padding: 64px 0; }
  .lp .problems { grid-template-columns: 1fr; }
  .lp .feat-grid { grid-template-columns: 1fr; }
  .lp .who { grid-template-columns: 1fr; }
  .lp .step { min-height: auto; border-right: 0; border-bottom: 1px solid var(--lp-border); }
  .lp .step:last-child { border-bottom: 0; }
  .lp .how { grid-template-columns: 1fr; }
  .lp .foot-grid { grid-template-columns: 1fr; }
  .lp .foot-bottom { flex-direction: column; gap: 10px; align-items: flex-start; }
  .lp .audit-bar { grid-template-columns: 42px 1fr; gap: 14px; }
  .lp .audit-bar .tag { grid-column: 1 / -1; }
  .lp .cred-list { grid-template-columns: 1fr; }
}
