/* Finuse Capital — estilos globais */
:root{--bg:#0a0d0b;--bg-2:#0e1310;--card:#141a16;--card-2:#182019;--line:rgba(255,255,255,.08);--line-2:rgba(255,255,255,.16);--ink:#f2f5ef;--muted:#9aa49b;--muted-2:#6a766e;--green:#4cfa05;--green-press:#63ff28;--green-soft:rgba(76,250,5,.1);--red:#ff6b57;--serif:"Newsreader",Georgia,serif;--sans:"Switzer",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"Space Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--maxw:1240px;--wide:1440px}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
ul,ol{list-style:none;padding:0;margin:0}
[hidden]{display:none!important}
::selection{background:var(--green);color:#08110a}
:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@keyframes fnRise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes fnFade{from{opacity:0}to{opacity:1}}
@keyframes fnKen{from{transform:scale(1.03)}to{transform:scale(1.15)}}
@keyframes fnMarquee{to{transform:translateX(-50%)}}
@keyframes fnGlow{0%,100%{opacity:.4}50%{opacity:.9}}
@keyframes fnCue{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,12px)}}
@keyframes fnWaPulse{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.6);opacity:0}100%{transform:scale(1.6);opacity:0}}
@keyframes fnPop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}

/* ---- navegação ---- */
.fn-skip{position:absolute;left:16px;top:-64px;z-index:1200;background:var(--green);color:#08110a;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;transition:top .2s}
.fn-skip:focus{top:12px}
#fn-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--green);z-index:1100;box-shadow:0 0 12px rgba(76,250,5,.6)}
#fn-nav{position:sticky;top:0;z-index:200;background:rgba(10,13,11,.72);-webkit-backdrop-filter:saturate(150%) blur(16px);backdrop-filter:saturate(150%) blur(16px);border-bottom:1px solid transparent;transition:border-color .3s ease,background-color .3s ease}
#fn-nav.is-scrolled{border-bottom-color:var(--line);background:rgba(9,12,10,.9)}
.fn-nav-in{max-width:var(--wide);margin-inline:auto;padding:13px clamp(18px,4vw,44px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.fn-brand{display:inline-flex;align-items:center;gap:10px;flex:none}
.fn-brand img{height:25px;width:auto}
.fn-brand span{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.fn-links{display:none;align-items:center;gap:clamp(16px,2vw,30px)}
.fn-links a{position:relative;font-size:14.5px;font-weight:500;color:var(--muted);padding:6px 0;transition:color .25s ease;white-space:nowrap}
.fn-links a:hover{color:var(--ink)}
.fn-links a[aria-current="page"]{color:var(--ink)}
.fn-links a[aria-current="page"]::after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:2px;background:var(--green);box-shadow:0 0 10px rgba(76,250,5,.5)}
.fn-actions{display:none;align-items:center;gap:12px;flex:none}
.fn-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid var(--line-2);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink);transition:border-color .25s ease,color .25s ease}
.fn-pill:hover{border-color:var(--green);color:var(--green)}
.fn-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--green);color:#08110a;border-radius:999px;font-size:14px;font-weight:600;transition:transform .2s ease,box-shadow .25s ease}
.fn-cta:hover{transform:translateY(-2px);box-shadow:0 14px 32px -12px rgba(76,250,5,.55)}
.fn-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:transparent;border:0;cursor:pointer;flex:none;padding:0}
.fn-burger span{display:block;width:23px;height:2px;margin-inline:auto;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .2s ease}
html.menu-open .fn-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
html.menu-open .fn-burger span:nth-child(2){opacity:0}
html.menu-open .fn-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.fn-overlay{position:fixed;inset:0;z-index:900;background:var(--bg);padding:88px clamp(20px,6vw,48px) 40px;display:flex;flex-direction:column;justify-content:space-between;gap:36px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .28s ease,visibility .28s ease,transform .28s ease}
html.menu-open .fn-overlay{opacity:1;visibility:visible;transform:none}
.fn-overlay-close{position:absolute;top:22px;right:20px;width:44px;height:44px;background:transparent;border:1px solid var(--line-2);border-radius:999px;color:var(--ink);cursor:pointer;font-size:18px;line-height:1}
.fn-overlay-nav{display:flex;flex-direction:column;margin-top:16px}
.fn-overlay-nav a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-family:var(--serif);font-size:clamp(30px,8vw,46px);font-weight:500;letter-spacing:-.02em;color:var(--ink);padding:15px 0;border-bottom:1px solid var(--line);transition:color .25s ease,padding-left .25s ease}
.fn-overlay-nav a:hover{color:var(--green);padding-left:10px}
.fn-overlay-nav i{font-style:normal;font-family:var(--mono);font-size:13px;color:var(--muted-2)}
.fn-overlay-foot{display:flex;flex-direction:column;gap:12px}
.fn-overlay-foot .fn-pill,.fn-overlay-foot .fn-cta{justify-content:center;padding:16px;font-size:15px}
.fn-overlay-foot p{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.05em;padding-top:4px}
@media (min-width:1000px){.fn-links{display:flex}.fn-actions{display:flex}.fn-burger{display:none}.fn-overlay{display:none}}

/* ---- WhatsApp flutuante ---- */
.fn-wa{position:fixed;right:clamp(16px,3vw,26px);bottom:clamp(16px,3vw,26px);z-index:600;display:inline-flex;align-items:center;height:58px;background:#25D366;color:#fff;border-radius:999px;box-shadow:0 14px 32px -10px rgba(37,211,102,.55),0 2px 8px rgba(0,0,0,.35);transition:transform .2s ease,box-shadow .25s ease}
.fn-wa:hover{transform:translateY(-3px);box-shadow:0 20px 42px -12px rgba(37,211,102,.7),0 2px 8px rgba(0,0,0,.35)}
.fn-wa-pulse{position:absolute;inset:0;border-radius:999px;background:#25D366;z-index:-1;animation:fnWaPulse 2.6s ease-out infinite}
.fn-wa-ic{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;flex:none}
.fn-wa-label{display:none;white-space:nowrap;font-size:15px;font-weight:600;padding-right:22px;padding-left:2px}
@media (min-width:1000px){.fn-wa-label{display:inline}}

/* ---- estados utilitários ---- */
.hv-g:hover{color:var(--green)!important;border-color:var(--green)!important}
.fn-prazo.is-on{background:var(--green)!important;color:#08110a!important;border-color:var(--green)!important}
.fn-choice:has(input:checked){border-color:var(--green)!important;background:rgba(76,250,5,.07)!important}

@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ---- estados gerados (hover/focus/checked) ---- */
.x0:hover{transform:translateY(-2px) !important;box-shadow:0 16px 40px -14px rgba(76,250,5,.6) !important}
.x1:hover{background:#fff !important;color:#08110a !important;border-color:#fff !important}
.x2:hover{transform:translateY(-2px) !important;box-shadow:0 14px 34px -14px rgba(76,250,5,.55) !important}
.x3:hover{color:var(--green) !important}
.x4:hover{border-color:var(--green) !important;color:var(--green) !important}
.x5:hover{transform:translateY(-6px) !important;border-color:rgba(76,250,5,.3) !important}
.x6:focus{border-color:var(--green) !important;box-shadow:0 0 0 3px rgba(76,250,5,.18) !important}
.x7:hover{border-color:rgba(76,250,5,.28) !important;transform:translateY(-4px) !important}
.x8:hover{color:var(--green) !important;border-color:var(--green) !important}
.x9:focus{border-color:var(--green) !important;box-shadow:0 0 0 3px rgba(76,250,5,.16) !important}
.x10:checked{background:var(--green) !important;border-color:var(--green) !important}
