:root{--bg:#0B1018;--bg2:#101826;--card:rgba(255,255,255,.045);--line:rgba(255,255,255,.09);--txt:#E8ECF2;--mut:#9AA6B6;--acc:#E0A21B;--acc2:#F4C04D;--cool:#5BC0EB;--ok:#3DDC97;--bad:#FF6B6B;--r:16px;--mono:ui-monospace,"Cascadia Code",Consolas,Menlo,monospace;--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;color-scheme:dark}
body{margin:0;background:radial-gradient(1200px 700px at 80% -10%,#16233A 0%,transparent 60%),radial-gradient(900px 600px at -10% 20%,#1B1730 0%,transparent 55%),var(--bg);color:var(--txt);font:16px/1.6 var(--sans);min-height:100vh;overflow-x:hidden}
#bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.glow{position:fixed;left:0;top:0;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;background:radial-gradient(circle,rgba(224,162,27,.14),transparent 62%);pointer-events:none;z-index:0;opacity:0;transition:opacity .4s}
.glow.on{opacity:1}
a{color:var(--acc2)}
.skip{position:absolute;left:-999px;top:8px;background:var(--acc);color:#1B2430;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--acc2);outline-offset:3px;border-radius:6px}

/* topo */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:20px;padding:12px max(20px,env(safe-area-inset-left)) 12px;background:rgba(11,16,24,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--txt);flex:none;-webkit-tap-highlight-color:transparent}
.ring{width:38px;height:38px;overflow:visible}
.ring circle{fill:none;stroke-width:7;stroke-linecap:round;transform-origin:32px 32px}
.ring-base{stroke:rgba(255,255,255,.12)}
.ring-arc{stroke:var(--acc);stroke-dasharray:79 21;transform:rotate(-60deg)}
.ring-close{stroke:#F4F1E4;stroke-dasharray:0 79 21 0;transform:rotate(-60deg)}
.ring-dot{fill:var(--acc);stroke:none}
.word{font-size:24px;font-weight:700;letter-spacing:.02em}
.word i{font-style:normal;display:inline-block}
.brand:hover .ring,.brand:focus-visible .ring,.brand.tap .ring{animation:spin 1.1s cubic-bezier(.6,0,.2,1)}
.brand:hover .ring-arc,.brand:focus-visible .ring-arc,.brand.tap .ring-arc{animation:draw 1.1s cubic-bezier(.6,0,.2,1)}
.brand:hover .word i,.brand:focus-visible .word i,.brand.tap .word i{animation:pop .6s calc(var(--i)*70ms) both}
.brand:hover .ring-dot,.brand:focus-visible .ring-dot,.brand.tap .ring-dot{animation:beat .8s ease-in-out 2}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes draw{from{stroke-dasharray:0 100}to{stroke-dasharray:79 21}}
@keyframes pop{0%{transform:translateY(0);color:var(--txt)}40%{transform:translateY(-6px);color:var(--acc2);text-shadow:0 0 18px rgba(244,192,77,.8)}100%{transform:translateY(0);color:var(--txt)}}
@keyframes beat{50%{transform:scale(1.5)}}

.tabs{position:relative;display:flex;gap:4px;margin:0 auto;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs button{appearance:none;background:none;border:0;color:var(--mut);font:600 15px var(--sans);padding:10px 14px;cursor:pointer;border-radius:10px;white-space:nowrap;transition:color .25s,background .25s}
.tabs button:hover{color:var(--txt);background:rgba(255,255,255,.05)}
.tabs button[aria-selected="true"]{color:var(--txt)}
.tab-bar{position:absolute;left:0;bottom:2px;height:3px;width:40px;border-radius:3px;background:linear-gradient(90deg,var(--acc),var(--acc2));transition:transform .35s cubic-bezier(.3,.9,.3,1),width .35s cubic-bezier(.3,.9,.3,1)}

/* botoes */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 15px var(--sans);padding:11px 20px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--txt);text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .25s,background .25s,border-color .25s;position:relative;overflow:hidden}
.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.22)}
.btn:active{transform:translateY(0) scale(.98)}
.btn.primary{background:linear-gradient(135deg,var(--acc),var(--acc2));color:#1B2430;border-color:transparent;box-shadow:0 8px 30px rgba(224,162,27,.28)}
.btn.primary:hover{box-shadow:0 12px 40px rgba(224,162,27,.45)}
.btn.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}
.btn.primary:hover::after{transform:translateX(120%)}
.btn.ghost{background:transparent}
.btn.enter{flex:none;padding:9px 18px}
.btn.block{width:100%;padding:14px}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

/* paineis */
main{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:36px 20px 80px}
.panel{animation:panelIn .55s cubic-bezier(.2,.8,.2,1)}
.js .panel[hidden]{display:none}
@keyframes panelIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.eyebrow{font:600 12px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--acc2);margin:0 0 14px}
h1,.big{font-size:clamp(34px,6vw,64px);line-height:1.05;margin:0 0 18px;letter-spacing:-.02em}
.big{font-size:clamp(30px,5vw,52px)}
.grad{background:linear-gradient(100deg,var(--acc2),var(--cool));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--mut);font-size:clamp(16px,2vw,19px);max-width:62ch;margin:0 0 22px}
.lead.sm{font-size:16px}
.sec{font-size:clamp(22px,3vw,30px);margin:56px 0 18px;letter-spacing:-.01em}
.plan{color:var(--mut);font-size:14px;margin:0 0 12px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;min-height:min(70vh,560px)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:6px 0 22px}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.chips li{font:500 13px var(--sans);color:var(--mut);padding:6px 12px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.03)}

/* orbita */
.orbit{margin:0;text-align:center}
.orbit svg{width:100%;max-width:400px;height:auto;overflow:visible;filter:drop-shadow(0 0 40px rgba(91,192,235,.12))}
.o-track{fill:none;stroke:rgba(255,255,255,.1);stroke-width:2;stroke-dasharray:3 8}
.o-arc{fill:none;stroke:url(#og);stroke:var(--acc);stroke-width:5;stroke-linecap:round;stroke-dasharray:60 40;transform-origin:200px 200px;animation:orb 14s linear infinite;opacity:.9}
@keyframes orb{to{transform:rotate(360deg)}}
.o-core{fill:rgba(224,162,27,.12);stroke:var(--acc);stroke-width:2;animation:core 3.2s ease-in-out infinite;transform-origin:200px 200px}
@keyframes core{50%{transform:scale(1.12);fill:rgba(224,162,27,.22)}}
.node{cursor:pointer;outline:none}
.node circle{fill:var(--bg2);stroke:var(--cool);stroke-width:3;transition:r .25s,fill .25s,stroke .25s}
.node text{fill:var(--txt);font:700 13px var(--mono);text-anchor:middle;dominant-baseline:central;pointer-events:none}
.node:hover circle,.node:focus-visible circle,.node.on circle{fill:var(--acc);stroke:var(--acc2);r:26}
.node:hover text,.node:focus-visible text,.node.on text{fill:#1B2430}
.node.pulse circle{animation:np 2.4s ease-in-out infinite}
@keyframes np{50%{stroke-width:7;stroke:var(--acc2)}}
.orbit figcaption{font:500 14px var(--mono);color:var(--mut);min-height:2.6em;margin-top:6px}

/* cartoes */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;backdrop-filter:blur(6px);transition:border-color .3s,box-shadow .3s}
.card:hover{border-color:rgba(224,162,27,.35);box-shadow:0 0 0 1px rgba(224,162,27,.1),0 20px 50px rgba(0,0,0,.35)}
.tilt{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .15s ease-out,border-color .3s,box-shadow .3s}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps h3,.owner h3{margin:6px 0 6px;font-size:20px}
.steps p,.owner p{margin:0;color:var(--mut)}
.owner p+p{margin-top:12px}
.n{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;font:700 15px var(--mono);color:#1B2430;background:linear-gradient(135deg,var(--acc),var(--acc2))}

/* laboratorio da curva */
.lab{padding:20px}
.curve{width:100%;height:auto;display:block;margin:6px 0}
.cv-axis{stroke:rgba(255,255,255,.14);stroke-width:1}
.cv-seg{fill:none;stroke:var(--cool);stroke-width:3;stroke-linecap:round;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset .9s cubic-bezier(.3,.8,.2,1)}
.cv-seg.on{stroke-dashoffset:0}
.cv-seg.dim{stroke:rgba(255,255,255,.18)}
.cv-dot{fill:var(--acc);opacity:0;transition:opacity .4s .5s}
.cv-dot.on{opacity:1}
.cv-lbl{fill:var(--mut);font:12px var(--mono)}
.rev-row{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.rev-row button{font:600 14px var(--mono);padding:9px 14px;border-radius:99px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--txt);cursor:pointer;transition:all .25s}
.rev-row button:hover{border-color:var(--acc)}
.rev-row button[aria-pressed="true"]{background:var(--acc);color:#1B2430;border-color:var(--acc)}
 .legend{display:flex;gap:16px;align-items:center;font:500 12px var(--mono);color:var(--mut);margin:0 0 4px}
.lg{display:inline-block;width:22px;height:3px;border-radius:3px;margin-right:6px;vertical-align:middle}
.lg-dim{background:rgba(255,255,255,.28)}
.lg-on{background:var(--cool)}
.curve{transition:opacity .35s}
.curve.auto .cv-seg{transition:none}
.cv-head{fill:var(--acc2);stroke:rgba(244,192,77,.35);stroke-width:9;opacity:0;transition:opacity .2s}
.lab-bar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.lab-bar .btn.small{padding:8px 14px;font-size:13px}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.fact h3{margin:8px 0 6px;font-size:18px}
.fact p{margin:0;color:var(--mut);font-size:15px}
.tip{text-align:center;color:var(--mut);font-size:17px;margin:22px 0 0}
.tip b{color:var(--acc2)}
.readout{font:500 15px var(--mono);color:var(--acc2);min-height:3em;margin:8px 0 0}

/* objetivo */
.featured{text-align:center;margin:28px 0;padding:34px 22px;background:linear-gradient(135deg,rgba(224,162,27,.10),rgba(91,192,235,.06))}
.featured blockquote{margin:0 0 12px;font-size:clamp(22px,3.8vw,38px);font-weight:700;line-height:1.25;letter-spacing:-.01em}
.featured figcaption{color:var(--mut);font:600 13px var(--mono)}
.quote{text-align:center;margin:26px 0;cursor:pointer;user-select:none}
.quote p{font-size:clamp(20px,3.4vw,30px);font-weight:700;margin:0 0 6px;transition:opacity .3s,transform .3s}
.quote.sw p{opacity:0;transform:translateY(8px)}
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:8px 0}
.nums .num{display:block;font:700 clamp(30px,4vw,44px) var(--mono);background:linear-gradient(100deg,var(--acc2),var(--cool));-webkit-background-clip:text;background-clip:text;color:transparent}
.nums span{color:var(--mut);font-size:14px}

/* donos */
.owners{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.owner{display:flex;gap:18px;align-items:flex-start}
.owner .avatar{flex:none;width:84px;height:84px;display:grid;place-items:center;border-radius:50%;background:rgba(224,162,27,.1);border:1px solid rgba(224,162,27,.3)}
.avatar svg{width:56px;height:56px;overflow:visible}
.avatar circle{fill:none;stroke-width:7;stroke-linecap:round;transform-origin:32px 32px}
.avatar .ring-base{stroke:rgba(255,255,255,.14)}
.avatar .a-arc{stroke:var(--acc);stroke-dasharray:79 21;transform:rotate(-60deg);animation:orb 9s linear infinite}
.role{font:600 13px var(--mono)!important;color:var(--acc2)!important;margin:0 0 8px!important}
.soon{border-style:dashed}
.story{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:start}
.path{list-style:none;margin:0;padding:0 0 0 22px;position:relative}
.path::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--acc),var(--cool));border-radius:2px;opacity:.6}
.path li{position:relative;margin:0 0 20px;padding:0 0 0 14px}
.path li::before{content:"";position:absolute;left:-23px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:3px solid var(--acc);transition:transform .3s,background .3s}
.path li:hover::before{transform:scale(1.35);background:var(--acc2)}
.path li.next::before{border-color:var(--cool);animation:np2 2.4s ease-in-out infinite}
@keyframes np2{50%{box-shadow:0 0 0 8px rgba(91,192,235,.18)}}
.path b{display:block;font:700 13px var(--mono);color:var(--acc2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px}
.path span{color:var(--mut)}
.join-cta{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:20px}
.join-cta h3{margin:0 0 4px}
.join-cta p{margin:0;color:var(--mut)}

/* formulario */
.join{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:start}
.form{display:flex;flex-direction:column;gap:14px}
.fld{display:flex;flex-direction:column;gap:6px;font:600 14px var(--sans)}
.fld span{color:var(--txt)}
.fld small{color:var(--mut);font-weight:400}
input,textarea{font:16px var(--sans);color:var(--txt);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:100%;transition:border-color .25s,box-shadow .25s}
input:focus,textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px rgba(224,162,27,.2)}
textarea{resize:vertical;min-height:120px}
.fld.bad input,.fld.bad textarea{border-color:var(--bad)}
.count{align-self:flex-end;font-family:var(--mono)}
.check{display:flex;gap:10px;align-items:flex-start;color:var(--mut);font-size:14px;cursor:pointer}
.check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--acc)}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.err{color:var(--bad);font-size:14px;min-height:1.4em;margin:0}
.soonmsg{color:var(--acc2);margin:0;text-align:center}
.done{text-align:center;animation:panelIn .6s}
.check-ico{width:90px;height:90px;fill:none;stroke:var(--ok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.check-ico circle{stroke-dasharray:170;stroke-dashoffset:170;animation:dr .8s .1s forwards}
.check-ico path{stroke-dasharray:50;stroke-dashoffset:50;animation:dr .5s .8s forwards}
@keyframes dr{to{stroke-dashoffset:0}}
.side h3{margin:0 0 8px;font-size:17px}
.prog{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin:-4px 0 2px}
.prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--acc),var(--cool));transition:width .5s cubic-bezier(.3,.8,.2,1)}
.goals{display:flex;flex-direction:column;gap:8px}
.gl{font:600 14px var(--sans)}
.gl em{font-style:normal;font-weight:400;color:var(--mut)}
.gchips{display:flex;flex-wrap:wrap;gap:8px}
.gchip{font:500 14px var(--sans);padding:8px 14px;border-radius:99px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--txt);cursor:pointer;transition:transform .2s,background .25s,border-color .25s,color .25s}
.gchip:hover{border-color:var(--acc);transform:translateY(-1px)}
.gchip[aria-pressed="true"]{background:rgba(224,162,27,.18);border-color:var(--acc);color:var(--acc2)}
.gchip[aria-pressed="true"]::before{content:"✓ "}
.btn.primary.ready{animation:ready 2.2s ease-in-out infinite}
@keyframes ready{50%{box-shadow:0 10px 44px rgba(224,162,27,.55)}}
.why{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:12px}
.why li{padding-left:18px;position:relative}
.why li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 12px rgba(224,162,27,.7)}
.why b{display:block;color:var(--txt)}
.why span{color:var(--mut);font-size:14px}
.flow{padding-left:20px;margin:0 0 20px;color:var(--mut)}
.flow li{margin:8px 0}
.flow b{color:var(--txt)}

.foot{position:relative;z-index:1;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:22px 20px calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--mut);font-size:14px;max-width:1100px;margin:0 auto}
.nojs{padding:14px;border:1px solid var(--line);border-radius:12px}

/* revelar ao rolar */
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
.js [data-reveal].in{opacity:1;transform:none}
.js .tilt[data-reveal].in{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}

@media (max-width:860px){
  .top{flex-wrap:wrap;gap:10px 12px}
  .tabs{order:3;width:100%;margin:0}
  .hero,.join,.owners,.story{grid-template-columns:1fr}
  .steps,.facts{grid-template-columns:1fr}
  .nums{grid-template-columns:repeat(2,1fr)}
  .orbit{order:-1}
  .orbit svg{max-width:280px}
  .btn.enter{margin-left:auto}
  main{padding-top:24px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js [data-reveal]{opacity:1;transform:none}
  .glow{display:none}
}
