/* dynoapp.com.br · estilo 3D
   Layout: escuro e profundo; o mascote 3D é o protagonista, o texto vive em painéis de vidro.
   Dyno = verde (dinheiro) · Dina = rosa (agenda e rotina) · Business = âmbar. */
:root{
  color-scheme:dark;
  --bg:#0A1020; --bg2:#0F1830; --bg3:#141F3A; --ink:#EAF0FA; --mute:#9AA9C0; --dim:#6F7F99;
  --line:rgba(255,255,255,.11); --line2:rgba(255,255,255,.2); --glass:rgba(13,22,40,.68);
  --dyno:#2FD47E; --dyno-ink:#04210F; --dina:#FF6FB1; --dina-ink:#3A0820; --biz:#F2B33D; --fam:#A98BFF; --warn:#F5B94A; --err:#FF7A7A;
  --display:'Space Grotesk',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif; --mono:'JetBrains Mono',ui-monospace,monospace;
  --r:20px; --wrap:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background-color:var(--bg);color:var(--ink);font:400 16px/1.6 var(--body);overflow-x:hidden;
  background-image:radial-gradient(60rem 38rem at 85% -10%,rgba(47,212,126,.12),transparent 60%),radial-gradient(52rem 36rem at -10% 30%,rgba(255,111,177,.08),transparent 60%),radial-gradient(48rem 30rem at 70% 100%,rgba(169,139,255,.1),transparent 60%);
  background-attachment:fixed}
a{color:var(--dyno)}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0}
h1{font-size:clamp(2.2rem,5vw,3.9rem);line-height:1.03;font-weight:700}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.08;font-weight:700}
h3{font-size:1.15rem;line-height:1.25;font-weight:700;letter-spacing:-.01em}
h1 em,h2 em{font-style:normal;color:var(--dyno)}
p{margin:0}
:focus-visible{outline:2px solid var(--dyno);outline-offset:3px;border-radius:6px}
.sr{position:absolute;left:-9999px}.sr:focus{left:16px;top:16px;z-index:99;background:var(--bg2);padding:10px 14px;border-radius:10px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
section{padding-block:72px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c,var(--dyno));margin-bottom:14px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,var(--dyno));box-shadow:0 0 12px var(--c,var(--dyno))}
.lead{font-size:clamp(1.02rem,1.5vw,1.15rem);color:var(--mute);max-width:56ch}
.lead b,.lead strong{color:var(--ink);font-weight:600}
.muted{color:var(--mute)}
.note{font-size:13.5px;color:var(--mute);max-width:80ch}
.note a{color:var(--ink)}
.sec-head{max-width:720px;margin-bottom:34px;display:grid;gap:12px}
.sec-head p{color:var(--mute)}
.sec-head.center{margin-inline:auto;text-align:center;justify-items:center}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:12px;font:600 15px var(--body);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;color:var(--ink);background:none;white-space:nowrap}
.btn-primary{background:var(--dyno);color:var(--dyno-ink);box-shadow:0 8px 30px -8px rgba(47,212,126,.6)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 36px -8px rgba(47,212,126,.75)}
.btn-primary:disabled{opacity:.6;transform:none;cursor:wait}
.btn-ghost{border-color:var(--line2);background:rgba(255,255,255,.04)}
.btn-ghost:hover{background:rgba(255,255,255,.09)}
.btn-pink{background:var(--dina);color:var(--dina-ink);box-shadow:0 8px 30px -8px rgba(255,111,177,.55)}
.btn-sm{min-height:40px;padding:0 16px;font-size:14px}
.btn-lg{min-height:56px;padding:0 28px;font-size:16.5px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.linkbtn{background:none;border:0;padding:0;color:var(--dyno);font:inherit;text-decoration:underline;cursor:pointer}

/* cabeçalho */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(10,16,32,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;min-height:66px}
.brand{display:flex;align-items:center;gap:10px;font:700 21px var(--display);letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.logo{width:30px;height:30px;border-radius:50%;background:var(--dyno);color:var(--dyno-ink);display:grid;place-items:center;font:700 17px var(--display);box-shadow:0 0 18px rgba(47,212,126,.45)}
.nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:14.5px}
.nav a{color:var(--mute);text-decoration:none}
.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}
.nav a.biz{color:var(--biz)}
.nav .btn{color:var(--ink)}
#nav-entrar .av{width:24px;height:24px;border-radius:50%;background:var(--dyno);color:var(--dyno-ink);display:grid;place-items:center;font:700 13px var(--display)}
.menu-btn{display:none;margin-left:auto;background:rgba(255,255,255,.06);border:1px solid var(--line2);color:var(--ink);border-radius:10px;min-height:40px;padding:0 14px;font:600 14px var(--body)}
@media (max-width:900px){
  .menu-btn{display:inline-flex;align-items:center}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--bg2);border-bottom:1px solid var(--line);padding:8px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
  .nav.open{display:flex}
  .nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-size:16px}
  .nav .btn{margin-top:12px;border-bottom:1px solid var(--line2)}
}

/* faixa da promoção */
.promo{position:relative;z-index:4;background:linear-gradient(90deg,#05070D,#101826 60%,#05070D);border-bottom:1px solid rgba(242,179,61,.35)}
.promo .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 14px;padding-block:10px;font-size:14.5px;text-align:center}
.promo-tag{font:700 11.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#05070D;background:var(--biz);padding:4px 9px;border-radius:6px}
.promo-txt{color:#D9E2F0}.promo-txt b{color:var(--ink)}
.promo-go{color:var(--biz);font-weight:700;text-decoration:none;white-space:nowrap}
.promo-go:hover{text-decoration:underline}
@media (max-width:640px){.promo .wrap{gap:4px 8px;padding-block:8px;font-size:13px;line-height:1.35}.promo-tag{font-size:10.5px;padding:3px 7px}}

/* palco 3D com imagem de apoio */
.d3{position:relative;aspect-ratio:4/5;width:100%;max-width:100%;cursor:pointer;touch-action:pan-y}
.d3>img{position:absolute;inset:6% 8%;width:84%;height:88%;object-fit:contain;transition:opacity .5s}
.d3>canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .6s}
.d3.on>canvas{opacity:1}.d3.on>img{opacity:0}
.d3::after{content:"";position:absolute;left:18%;right:18%;bottom:2%;height:12%;border-radius:50%;background:radial-gradient(closest-side,rgba(47,212,126,.28),transparent);z-index:-1}
.d3.pink::after{background:radial-gradient(closest-side,rgba(255,111,177,.3),transparent)}
.d3.wide{aspect-ratio:16/10}

/* topo das páginas internas */
.phero{padding-block:48px 24px}
.phero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
.phero .d3{max-height:520px;aspect-ratio:1/1.05}
.phero .copy{min-width:0;display:grid;gap:16px}
@media (max-width:860px){.phero .wrap{grid-template-columns:1fr}.phero .d3{max-height:360px;aspect-ratio:1/1;order:-1;margin-bottom:-24px}}

/* pílulas e selos */
.pill{display:inline-flex;align-items:center;gap:8px;width:fit-content;font:600 13px var(--body);padding:7px 14px;border-radius:999px;border:1px solid rgba(47,212,126,.4);background:rgba(47,212,126,.1);color:var(--ink)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--dyno);box-shadow:0 0 10px var(--dyno)}
.verified{display:inline-flex;align-items:center;gap:10px;width:fit-content;font-size:14.5px;color:var(--ink);padding:9px 16px 9px 12px;border-radius:999px;border:1px solid rgba(47,212,126,.45);background:rgba(47,212,126,.08)}
.verified svg{width:22px;height:22px;flex:none}
.verified strong{color:var(--dyno)}
.verified .num{color:var(--mute);font-variant-numeric:tabular-nums}
.tag{display:inline-block;font:600 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:6px;border:1px solid var(--line2);color:var(--mute);vertical-align:2px}
.tag-dyno{color:var(--dyno);border-color:rgba(47,212,126,.45);background:rgba(47,212,126,.08)}
.tag-dina{color:var(--dina);border-color:rgba(255,111,177,.45);background:rgba(255,111,177,.08)}
.tag-ambos{color:#C9D3E3;border-color:var(--line2)}
.tag-novo{color:#04210F;background:var(--dyno);border-color:var(--dyno)}
.tag-warn{color:var(--warn);border-color:rgba(245,185,74,.45);background:rgba(245,185,74,.1)}
.tier{display:inline-block;font:600 11px var(--mono);letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:6px}
.t-ess{background:rgba(255,255,255,.07);color:#C9D3E3}
.t-comp{background:rgba(47,212,126,.14);color:var(--dyno)}
.t-prem{background:rgba(169,139,255,.16);color:#C8B6FF}

/* vidro */
.glass{background:var(--glass);border:1px solid var(--line);border-radius:var(--r);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}
.card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:var(--r);padding:24px;min-width:0}
.card h3{margin-bottom:8px}
.card p{color:var(--mute)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:860px){.grid2,.grid3{grid-template-columns:1fr}}
.list{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:9px;color:var(--mute);font-size:15px}
.list li{display:flex;gap:10px}.list li::before{content:"";flex:none;width:6px;height:6px;margin-top:9px;border-radius:50%;background:var(--c,var(--dyno))}

/* página inicial · cena rolável */
#gl{position:fixed;inset:0;width:100%;height:100%;z-index:0;display:block;pointer-events:none;opacity:0;transition:opacity .8s}
#gl.on{opacity:1}
.home main{position:relative;z-index:2}
.dots{position:fixed;right:max(14px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);z-index:25;display:flex;flex-direction:column;gap:10px}
.dots a{width:9px;height:9px;box-sizing:content-box;padding:8px;border-radius:50%;background:rgba(255,255,255,.22);background-clip:content-box;transition:.25s;display:block}
.dots.off{opacity:0;pointer-events:none}
.dots{transition:opacity .3s}
.dots a.on{background:var(--dyno);transform:scale(1.5)}
.scene{min-height:100vh;min-height:100svh;display:flex;align-items:center;padding-block:96px}
.scene .wrap{width:100%;display:flex}
.scene.R .wrap{justify-content:flex-end}
.scene .copy{width:min(470px,100%);padding:28px;display:grid;gap:12px}
.scene .copy p{color:var(--mute)}
.scene .copy p strong{color:var(--ink);font-weight:600}
.scene .tags{display:flex;flex-wrap:wrap;gap:6px}
.scene.hero{min-height:94svh}
.scene.hero .copy{width:min(560px,100%);background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}
.no3d .scene{min-height:auto;padding-block:40px}
.no3d .poster{display:block}
.poster{display:none;max-width:280px;margin:0 auto}
@media (max-width:860px){
  .dots{display:none}
  .scene{align-items:flex-end;padding-block:80px 22px}
  .scene.R .wrap{justify-content:flex-start}
  .scene .copy{padding:22px}
  .scene.hero{min-height:118svh}
  .scene.hero .copy{background:var(--glass);border:1px solid var(--line);padding:22px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
}
.after{position:relative;z-index:3;background:var(--bg);border-top:1px solid var(--line)}
.after::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50rem 30rem at 80% 0,rgba(47,212,126,.08),transparent 60%)}

/* produtos Dyno */
.svcs{display:grid;gap:18px}
.svc-group{font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);display:flex;align-items:center;gap:8px}
.svc-group i{width:8px;height:8px;border-radius:50%;background:var(--dyno);box-shadow:0 0 10px var(--dyno)}
.svc-group.dev i{background:var(--fam);box-shadow:0 0 10px var(--fam)}
.svc-live{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.svc-dev{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.svc{display:grid;gap:8px;align-content:start;text-decoration:none;color:var(--ink);border:1px solid var(--cl);border-radius:var(--r);padding:22px;background:radial-gradient(380px 200px at 100% 0,var(--cs),transparent 70%),rgba(255,255,255,.02);transition:transform .2s,border-color .2s;min-width:0}
.svc:hover{transform:translateY(-3px);border-color:var(--c)}
.svc-nm{font:700 24px var(--display);letter-spacing:-.02em}.svc-nm em{font-style:normal;color:var(--c)}
.svc-ds{color:var(--mute);font-size:15px}
.svc-go,.svc-url{color:var(--c);font-weight:600;font-size:14px}
.svc-st{font:600 11.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--c)}
.svc.dev .svc-nm{font-size:19px}
@media (max-width:900px){.svc-live{grid-template-columns:1fr}.svc-dev{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.svc-dev{grid-template-columns:1fr}}

/* passos */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:s}
.step{counter-increment:s;position:relative;padding:26px 24px 24px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.03);min-width:0}
.step::before{content:counter(s);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(47,212,126,.14);color:var(--dyno);font:700 16px var(--display);margin-bottom:14px}
.step p{color:var(--mute);margin-top:6px}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* dupla Dyno e Dina */
.duo-stage{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:16px;align-items:center}
.duo{border-radius:var(--r);padding:24px;border:1px solid rgba(47,212,126,.35);background:radial-gradient(380px 220px at 0 0,rgba(47,212,126,.12),transparent 70%),rgba(255,255,255,.02);min-width:0}
.duo.dina{--c:var(--dina);border-color:rgba(255,111,177,.4);background:radial-gradient(380px 220px at 100% 0,rgba(255,111,177,.13),transparent 70%),rgba(255,255,255,.02)}
.duo-top{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.duo-top .logo{width:40px;height:40px;font-size:21px}
.duo.dina .logo{background:var(--dina);color:var(--dina-ink);box-shadow:0 0 18px rgba(255,111,177,.5)}
.duo-top b{font:700 22px var(--display);display:block}
.duo-top small{color:var(--mute)}
.ex{margin-top:16px;font:500 14px var(--mono);color:var(--ink);padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.05);border:1px dashed var(--line2)}
.duo-stage .d3{aspect-ratio:1/1}
@media (max-width:960px){.duo-stage{grid-template-columns:1fr 1fr}.duo-stage .d3{grid-column:1/-1;order:-1;max-height:340px;margin-inline:auto}}
@media (max-width:620px){.duo-stage{grid-template-columns:1fr}}

/* conversas em bolhas (cartões) */
.mini{display:grid;gap:6px;margin-top:14px;padding:12px;border-radius:14px;background:#0B141A;border:1px solid rgba(255,255,255,.06)}
.b{overflow-wrap:anywhere;max-width:88%;padding:8px 12px;border-radius:14px;font-size:14px;line-height:1.4;color:#E9EDEF}
.b.me{justify-self:end;background:#0E5A46;border-bottom-right-radius:4px}
.b.dy{justify-self:start;background:#1D2B3C;border-bottom-left-radius:4px}
.b.dy small{display:block;font:700 12px var(--display);color:var(--dyno);margin-bottom:2px}
.b.dy.dina small{color:var(--dina)}

/* selos */
.selos{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.selo{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.025);min-width:0}
.selo b{display:block;font:600 15px var(--display);margin-bottom:4px}
.selo p{color:var(--mute);font-size:14px}
.ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(47,212,126,.13);color:var(--dyno)}
.ico.pk{background:rgba(255,111,177,.13);color:var(--dina)}
.ico.vi{background:rgba(169,139,255,.15);color:#C8B6FF}
.ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Beta e vagas */
.beta{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:start}
.beta>div:first-child{display:grid;gap:14px}
.beta p{color:var(--mute)}
.terms{display:grid;gap:0;padding:8px 22px 22px}
.terms>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.terms>div span{color:var(--mute)}
.terms b{font-weight:600;text-align:right}
.terms .btn{margin-top:16px}
.terms .linkbtn,.terms .lnk{text-align:center;margin-top:10px;color:var(--mute)}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tile{padding:18px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.03);display:grid;gap:2px}
.tile b{font:700 30px var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.tile span{color:var(--mute);font-size:14px}
.tile.hi{border-color:rgba(47,212,126,.5);background:rgba(47,212,126,.08)}
.tile.hi b{color:var(--dyno)}
.seats{display:grid;grid-template-columns:repeat(20,1fr);gap:5px;max-width:420px}
.seats i{aspect-ratio:1;border-radius:4px;background:rgba(47,212,126,.85)}
.seats i.off{background:rgba(255,255,255,.1)}
@media (max-width:860px){.beta{grid-template-columns:1fr}.tiles{grid-template-columns:1fr}}

/* planos */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.03);min-width:0;transition:border-color .3s,box-shadow .3s}
.plan h3{font-size:1.4rem}
.plan .for{color:var(--mute);font-size:14.5px}
.price{font:700 38px var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.price small{font:500 15px var(--body);color:var(--mute);letter-spacing:0}
.or{color:var(--mute);font-size:14px}.or b{color:var(--ink)}
.eco{width:fit-content;font:600 12px var(--mono);color:var(--dyno);background:rgba(47,212,126,.1);padding:4px 8px;border-radius:6px}
.plan ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px;font-size:14.5px;color:#C9D3E3;flex:1}
.plan li{display:flex;gap:10px}
.plan li::before{content:"";flex:none;width:16px;height:16px;margin-top:3px;border-radius:50%;background:rgba(47,212,126,.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.2 2.2 4.8-5' fill='none' stroke='%232FD47E' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.plan li.plus{color:var(--ink);font-weight:600}.plan li.plus::before{display:none}
.plan .btn{margin-top:14px;width:100%}
.plan.best{border-color:rgba(47,212,126,.55);background:radial-gradient(420px 260px at 50% 0,rgba(47,212,126,.14),transparent 70%),rgba(255,255,255,.03);box-shadow:0 30px 80px -40px rgba(47,212,126,.5)}
.plan.prem{border-color:rgba(169,139,255,.4)}
.plan .tag{position:absolute;top:-12px;left:24px;background:var(--dyno);color:var(--dyno-ink);border:0}
.plan .tag.amb{background:var(--fam);color:#170A3A}
.plan.rec{border-color:var(--dina);box-shadow:0 0 0 2px var(--dina),0 30px 80px -40px rgba(255,111,177,.6)}
@media (max-width:960px){.plans{grid-template-columns:1fr}}

/* quiz */
.quiz{margin-bottom:32px}
.quiz .box{padding:24px;border-radius:22px;border:1px solid rgba(255,111,177,.35);background:radial-gradient(420px 220px at 100% 0,rgba(255,111,177,.1),transparent 70%),rgba(255,255,255,.02);display:grid;gap:10px}
.quiz .box>.kicker{font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dina)}
.quiz .box>p{color:var(--mute)}
.qopts{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.qopt{font:500 14.5px var(--body);color:var(--ink);background:rgba(255,255,255,.05);border:1px solid var(--line2);border-radius:999px;padding:10px 16px;cursor:pointer;text-align:left}
.qopt:hover{background:rgba(255,255,255,.09)}
.qopt[aria-pressed=true]{background:var(--dina);border-color:var(--dina);color:var(--dina-ink)}
.qres{margin-top:8px;padding:16px;border-radius:14px;background:rgba(255,111,177,.08);border:1px solid rgba(255,111,177,.3);display:grid;gap:8px;justify-items:start}
.qres p{color:#E2C6D4}

/* comparativo */
.compara{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:820px}
.cmp-col{padding:22px;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.025);display:grid;gap:4px}
.cmp-col.dy{border-color:rgba(47,212,126,.5);background:rgba(47,212,126,.06)}
.cmp-col .k{font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:6px}
.cmp-col.dy .k{color:var(--dyno)}
.cmp-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.cmp-row span{color:var(--mute)}
.cmp-row b{font-variant-numeric:tabular-nums}
.cmp-save{margin-top:10px;color:var(--dyno);font-weight:600}
@media (max-width:700px){.compara{grid-template-columns:1fr}}

/* perguntas */
.faq{max-width:820px}
details{border-top:1px solid var(--line);padding:18px 0}
details:last-of-type{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font:600 17px var(--display);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:400 26px var(--body);color:var(--dyno);transition:transform .2s;flex:none}
details[open] summary::after{transform:rotate(45deg)}
details p{margin-top:12px;color:var(--mute);max-width:68ch}

/* funcionalidades */
.chips-bar{position:sticky;top:calc(66px + env(safe-area-inset-top,0px));z-index:30;background:rgba(10,16,32,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-block:1px solid var(--line)}
.chips{display:flex;gap:8px;overflow-x:auto;padding-block:12px;scrollbar-width:thin}
.chip,.tchip{flex:none;font:500 14px var(--body);color:var(--ink);background:rgba(255,255,255,.05);border:1px solid var(--line2);border-radius:999px;padding:8px 14px;cursor:pointer;white-space:nowrap}
.chip span{color:var(--mute);font:500 12px var(--mono);margin-left:4px}
.chip.on,.tchip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.chip.on span{color:var(--bg)}
.chip-dyno.on{background:var(--dyno);border-color:var(--dyno);color:var(--dyno-ink)}
.chip-dina.on{background:var(--dina);border-color:var(--dina);color:var(--dina-ink)}
.chip-dyno.on span,.chip-dina.on span{color:inherit}
.tierbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.tierbar b{font:600 13px var(--mono);color:var(--mute);margin-right:4px}
.tierleg{color:var(--mute);font-size:13.5px;margin-top:10px}
.novidades{padding:14px 16px;border-radius:14px;border:1px solid rgba(47,212,126,.3);background:rgba(47,212,126,.06);color:#C9D3E3;font-size:14.5px;max-width:820px}
.fgrupo{margin-top:40px}
.fg-head{display:grid;gap:6px;margin-bottom:8px}
.fg-head p{color:var(--mute)}
.fgrupo[data-grupo=dina] .fg-head h2{color:var(--dina)}
.fgrupo[data-grupo=dyno] .fg-head h2{color:var(--dyno)}
.fsec{margin-top:26px}
.fsec-t{font:600 13px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:12px}
.fgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fcard{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.025);min-width:0}
.fcard[data-voz=dyno]{border-top:2px solid rgba(47,212,126,.6)}
.fcard[data-voz=dina]{border-top:2px solid rgba(255,111,177,.65)}
.fcard p{color:var(--mute);font-size:14.5px;overflow-wrap:anywhere}
.ftags{display:flex;flex-wrap:wrap;gap:6px}
.fcard .mini{margin-top:auto}
.fcta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:28px}
.fcta p{color:var(--mute)}
@media (max-width:1000px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.fgrid{grid-template-columns:1fr}}

/* formulários (Beta e Entrar) */
.auth{padding-block:40px 72px}
.auth .wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:32px;align-items:center}
.auth-card{padding:30px;display:grid;gap:14px;min-width:0}
.auth-card h1{font-size:clamp(2rem,4vw,2.8rem)}
.auth-card p{color:var(--mute)}
label{display:block;font:600 14px var(--body);color:var(--ink);margin:16px 0 6px}
.input{width:100%;min-height:52px;padding:0 16px;border-radius:12px;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink);font:500 16px var(--body)}
.input::placeholder{color:var(--dim)}
.input:focus{outline:none;border-color:var(--dyno);box-shadow:0 0 0 3px rgba(47,212,126,.2)}
.code-input{font:600 26px var(--mono);letter-spacing:.4em;text-align:center}
.check{display:flex;gap:12px;align-items:flex-start;font-weight:400;color:var(--mute);margin-top:18px;cursor:pointer}
.check input{width:20px;height:20px;margin-top:2px;accent-color:var(--dyno);flex:none}
.check a{color:var(--ink)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.passo{display:grid;grid-template-columns:auto 1fr;gap:14px}
.passo .num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(47,212,126,.15);color:var(--dyno);font:700 14px var(--display)}
.passo b{font:600 17px var(--display)}
.msg{margin-top:12px;font-size:14.5px;min-height:1px}
.msg.err{color:var(--err)}
.msg.ok{color:var(--dyno)}
.auth .d3{max-height:560px}
@media (max-width:860px){.auth .wrap{grid-template-columns:1fr}.auth .d3{max-height:300px;aspect-ratio:1/1;margin-bottom:-30px}}

/* faixa final */
.band{position:relative;overflow:hidden}
.band .inner{display:grid;grid-template-columns:1.3fr .7fr;gap:24px;align-items:center;padding:34px;border-radius:26px;border:1px solid rgba(47,212,126,.35);background:radial-gradient(520px 300px at 100% 50%,rgba(47,212,126,.14),transparent 70%),radial-gradient(420px 260px at 0 100%,rgba(255,111,177,.1),transparent 70%),rgba(255,255,255,.02)}
.band .inner>div{display:grid;gap:12px;min-width:0}
.band p{color:var(--mute)}
.band img{width:100%;max-width:260px;justify-self:center}
@media (max-width:760px){.band .inner{grid-template-columns:1fr;padding:24px}.band img{max-width:180px;order:-1}}

/* textos legais */
.legal{max-width:780px}
.legal h1{margin:6px 0 18px}
.legal h2{font-size:1.3rem;margin:30px 0 8px}
.legal p,.legal li{color:#C9D3E3}
.legal ul{padding-left:20px;display:grid;gap:8px}
.aviso{padding:14px 16px;border-radius:12px;border:1px solid rgba(245,185,74,.4);background:rgba(245,185,74,.08);color:#F3DDB0;margin-bottom:20px;font-size:14.5px}

/* rodapé */
footer{position:relative;z-index:3;background:var(--bg);border-top:1px solid var(--line);padding-block:48px 32px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
.foot>div{display:grid;gap:8px;align-content:start;min-width:0}
.foot b{font:600 14px var(--display);color:var(--ink)}
.foot a{color:var(--mute);text-decoration:none;font-size:14.5px}
.foot a:hover{color:var(--ink)}
.foot p{color:var(--mute);font-size:14.5px;max-width:36ch}
.fcopy{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;color:var(--dim);font-size:13px}
.fcopy a{color:var(--mute);display:inline}
@media (max-width:760px){.foot{grid-template-columns:1fr}}

/* botão flutuante */
.fab{position:fixed;z-index:45;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:10px;min-height:52px;padding:0 20px 0 16px;border-radius:999px;background:var(--dyno);color:var(--dyno-ink);font:700 15px var(--body);text-decoration:none;box-shadow:0 14px 40px -10px rgba(47,212,126,.7);transition:transform .2s}
.fab:hover{transform:translateY(-3px)}
.fab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:640px){.fab span{display:none}.fab{padding:0 15px}}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* âncoras não ficam escondidas atrás do cabeçalho */
section[id],main [id]{scroll-margin-top:84px}

