
:root{--bg:#0b0c11;--bg2:#0e1016;--card:#14171f;--line:#232735;--line2:#303648;--ink:#eef1f6;--mut:#98a1b3;--soft:#c8cedb;--pur:#7c3aed;--pur2:#8b5cf6;--azul:#3b82f6;--grad:linear-gradient(120deg,#7c3aed,#6366f1,#3b82f6)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;overflow-x:hidden}
body::before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;
 background:radial-gradient(520px 420px at 82% 6%,rgba(124,58,237,.16),transparent 62%),
            radial-gradient(560px 460px at 8% 92%,rgba(59,130,246,.11),transparent 62%);
 animation:aurora 22s ease-in-out infinite alternate}
@keyframes aurora{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(3%,-2%,0) scale(1.06)}}
h1,h2,h3,.dsp{font-family:'Fraunces',serif;font-weight:420;letter-spacing:-.01em;line-height:1.1}
a{color:inherit;text-decoration:none}
img,svg,video{max-width:100%}
.wrap{width:min(1100px,92vw);margin:0 auto}
.g{background:var(--grad);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gshift 7s ease infinite}
@keyframes gshift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;border-radius:12px;padding:13px 22px;font-size:15px;cursor:pointer;border:none;transition:.25s}
.btn-grad{background:var(--grad);background-size:160% 160%;color:#fff;box-shadow:0 14px 34px -14px rgba(99,102,241,.65)}
.btn-grad:hover{transform:translateY(-2px);background-position:80% 50%;box-shadow:0 18px 40px -14px rgba(99,102,241,.85)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line2)}
.btn-ghost:hover{border-color:var(--pur2);transform:translateY(-1px)}
.ribbon{background:var(--grad);color:#fff;text-align:center;font-size:13px;font-weight:600;padding:8px 14px}
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);background:rgba(11,12,17,.82);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:14px;padding:13px 0}
.brand{display:flex;align-items:center;gap:10px}
.brand .mk{width:36px;height:36px;border-radius:10px;background:var(--grad);display:grid;place-items:center;box-shadow:0 6px 18px -6px rgba(124,58,237,.6)}
.brand b{font-family:'Fraunces';font-size:20px;font-weight:500}
.nav .sp{flex:1}
.nav a.lnk{color:var(--mut);font-size:14px;margin:0 9px;transition:.2s}
.nav a.lnk:hover,.nav a.lnk.on{color:var(--ink)}
.kick{font-family:'Inter';font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--pur2)}
.hero{padding:70px 0 54px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.hero h1{font-size:clamp(36px,5.4vw,58px);margin:14px 0}
.hero p.lead{font-size:18px;color:var(--soft);max-width:560px;margin-bottom:24px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.trust span{font-size:12.5px;color:var(--soft);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 12px}
.sec{padding:60px 0}
.sec h2{font-size:clamp(25px,3.8vw,38px);max-width:760px}
.sec .sub{color:var(--mut);max-width:660px;margin-top:10px;font-size:16.5px}
.head{margin-bottom:30px}
.grid{display:grid;gap:16px;margin-top:26px}
.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;flex-direction:column}.card .cta{margin-top:auto;padding-top:16px}
.card:hover{transform:translateY(-5px);border-color:var(--line2);box-shadow:0 22px 44px -24px rgba(0,0,0,.8)}
a.card:hover{border-color:var(--pur2)}
.card h3{font-size:19px;margin-bottom:8px}
.card p{font-size:14.5px;color:var(--mut)}
.card .n{font-family:'Fraunces';font-size:26px;color:var(--pur2)}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:13px;margin-top:26px}
.plan{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;position:relative;transition:transform .3s,border-color .3s}
.plan:hover{transform:translateY(-5px)}
.plan.mid{border-color:var(--pur2);box-shadow:0 0 44px -18px rgba(139,92,246,.55)}
.plan .tagm{position:absolute;top:-11px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:800;color:#fff;background:var(--grad);border-radius:999px;padding:4px 12px;white-space:nowrap}
.plan .pn{font-weight:800;color:var(--pur2);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;min-height:34px}
.plan .pp{font-family:'Inter';font-weight:900;font-size:29px;margin:8px 0 0}
.plan .pp small{font-size:13px;font-weight:600;color:var(--mut)}
.plan .pf{font-size:12px;color:var(--mut);margin:2px 0 12px}
.plan ul{list-style:none;font-size:13.5px;color:var(--soft);line-height:1.9;flex:1;margin-bottom:14px}
.plan ul li::before{content:"\2713  ";color:var(--pur2);font-weight:800}
.faq{display:grid;gap:12px;margin-top:26px}
.qa{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}
.qa h3{font-size:17px;margin-bottom:6px}
.qa p{font-size:14.5px;color:var(--mut)}
.cta{padding:70px 0;text-align:center;position:relative}
.cta h2{font-size:clamp(26px,4vw,40px);margin:10px 0 8px}
.cta p{color:var(--mut);margin-bottom:20px}
footer{border-top:1px solid var(--line);padding:36px 0;color:var(--mut);font-size:13.5px}
footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:20px}
footer a{color:var(--soft)}footer a:hover{color:var(--ink)}
article.guia{max-width:760px;margin:0 auto;padding:50px 0}
article.guia h1{font-size:clamp(30px,4.6vw,44px);margin:12px 0 14px}
article.guia h2{font-size:24px;margin:30px 0 10px}
article.guia p,article.guia li{color:var(--soft);font-size:16px;margin-bottom:12px}
article.guia ul,article.guia ol{padding-left:22px;margin-bottom:14px}
article.guia .meta{color:var(--mut);font-size:13.5px}
.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--pur2);border-radius:12px;padding:16px 18px;font-size:14.5px;color:var(--soft);margin:18px 0}
/* ---- demo de swipe ---- */
.mock{justify-self:center;width:320px;max-width:88vw;background:var(--card);border:1px solid var(--line);border-radius:26px;box-shadow:0 44px 90px -40px #000,0 0 0 6px #05060a;overflow:hidden;position:relative}
.mock .mh{display:flex;align-items:center;gap:8px;padding:13px 16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--mut)}
.mock .mh .dt{width:7px;height:7px;border-radius:50%;background:var(--pur2);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.deck{position:relative;height:380px;padding:16px}
.pcard{position:absolute;inset:16px;border-radius:18px;overflow:hidden;border:1px solid var(--line2);display:flex;flex-direction:column;justify-content:flex-end;transition:transform .55s cubic-bezier(.2,.7,.3,1),opacity .55s}
.pcard .bgph{position:absolute;inset:0}
.pcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.82))}
.pcard .body{position:relative;z-index:2;padding:16px;color:#fff}
.pcard .price{font-family:'Fraunces';font-size:25px}
.pcard .ttl{font-weight:600;font-size:13.5px;margin-top:2px;color:#e8e5f2}
.pcard .score{margin-top:8px;display:inline-block;background:rgba(16,185,129,.92);color:#fff;font-size:11px;font-weight:800;padding:4px 10px;border-radius:20px}
.pcard.go{transform:translateX(135%) rotate(9deg)!important;opacity:0}
.pcard[data-i="1"]{transform:scale(.955) translateY(12px)}
.pcard[data-i="2"]{transform:scale(.91) translateY(24px)}
.mock .acts{display:flex;justify-content:center;gap:20px;padding:2px 0 18px}
.mock .act{width:50px;height:50px;border-radius:50%;border:1px solid var(--line2);background:var(--bg2);color:#fff;font-size:20px;display:grid;place-items:center}
.mock .act.like{background:var(--grad);border:0}
.mock .act.like.pop{animation:pop .5s}
@keyframes pop{50%{transform:scale(1.25)}}
.matchov{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:rgba(8,6,16,.78);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .4s}
.matchov.show{opacity:1}
.matchov .in{text-align:center;transform:scale(.8);transition:transform .45s cubic-bezier(.2,1.4,.4,1)}
.matchov.show .in{transform:scale(1)}
.matchov h4{font-family:'Fraunces';font-size:30px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.matchov p{color:#cfd4e2;font-size:13px}
/* ---- vídeos ---- */
.vidgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,330px));gap:22px;margin-top:28px;justify-content:center}
.vid{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px;text-align:center;transition:transform .3s,border-color .3s}
.vid:hover{transform:translateY(-5px);border-color:var(--pur2)}
.vid video{border-radius:14px;border:1px solid var(--line2);width:100%;height:auto;aspect-ratio:9/16;display:block;background:#000}
.vid h3{font-size:17px;margin:12px 0 2px}
.vid p{font-size:13px;color:var(--mut)}
/* ---- reveals ---- */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}body::before{animation:none}.g{animation:none}}
@media(max-width:860px){.hero-grid{grid-template-columns:1fr}.mock{order:2;max-width:360px;margin:0 auto}.nav a.lnk{display:none}}
