@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/space-grotesk-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/space-grotesk-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/space-grotesk-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/space-grotesk-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/jetbrains-mono-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #04050d;--bg-2: #080b19;--panel: rgba(13, 16, 36, .84);--panel-solid: #0c1024;--panel-2: rgba(255, 255, 255, .035);--line: rgba(136, 152, 255, .14);--line-2: rgba(136, 152, 255, .24);--text: #e8eaf6;--muted: #9aa0c2;--dim: #646a8f;--cyan: #22d3ee;--violet: #8b5cf6;--pink: #ec4899;--green: #34d399;--amber: #fbbf24;--red: #f87171;--grad: linear-gradient(120deg, #22d3ee 0%, #8b5cf6 55%, #ec4899 100%);--grad-soft: linear-gradient(120deg, rgba(34, 211, 238, .18), rgba(139, 92, 246, .18) 55%, rgba(236, 72, 153, .14));--font: "Space Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius: 18px;--radius-sm: 12px;--nav-h: 72px;--container: 1200px;--ease: cubic-bezier(.22, 1, .36, 1);--shadow: 0 30px 80px -20px rgba(0, 0, 0, .7);--mx: 50vw;--my: 30vh}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font);font-size:17px;line-height:1.65;overflow-x:hidden;overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:var(--cyan);text-decoration:none}a:hover{color:#67e8f9}button{font:inherit;color:inherit}::selection{background:#8b5cf673;color:#fff}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:6px}[hidden]{display:none!important}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--text);font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:-.02em}.logo-mark{display:block;flex:none;width:38px;height:38px;border-radius:27%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='6' y1='4' x2='58' y2='60' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%232ee6f5'/%3E%3Cstop offset='.52' stop-color='%238b5cf6'/%3E%3Cstop offset='1' stop-color='%23ec4899'/%3E%3C/linearGradient%3E%3CradialGradient id='l' cx='18' cy='10' r='40' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='.38'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/radialGradient%3E%3ClinearGradient id='s' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='1' stop-color='%23e9ddff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='64' height='64' rx='17' fill='url(%23g)'/%3E%3Crect width='64' height='64' rx='17' fill='url(%23l)'/%3E%3Crect x='.75' y='.75' width='62.5' height='62.5' rx='16.25' fill='none' stroke='%23fff' stroke-opacity='.3' stroke-width='1.5'/%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round' stroke-width='5' transform='translate(0 1.4)' stroke='%231b0b3a' stroke-opacity='.28'%3E%3Cpath d='M23.5 21.5 13 32l10.5 10.5M40.5 21.5 51 32 40.5 42.5M35.6 17.5 28.4 46.5'/%3E%3C/g%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round' stroke-width='5'%3E%3Cpath d='M23.5 21.5 13 32l10.5 10.5M40.5 21.5 51 32 40.5 42.5' stroke='%230a0b1e'/%3E%3Cpath d='M35.6 17.5 28.4 46.5' stroke='url(%23s)'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat;box-shadow:0 8px 24px -8px #8b5cf6d9}.logo:hover{color:var(--text)}.logo-text span{color:var(--cyan)}.logo-text em{font-style:normal;color:var(--dim);font-weight:500}.footer-logo{font-size:17px;gap:12px}.footer-logo .logo-mark{width:46px;height:46px}html{scroll-behavior:smooth;overflow-x:clip}body{background-color:var(--bg);background-image:linear-gradient(rgba(120,140,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,255,.05) 1px,transparent 1px);background-size:44px 44px;font-size:16px;line-height:1.6;overflow-x:clip}.h-wrap{width:min(1160px,calc(100% - 32px));margin:0 auto}.h-top{position:sticky;top:0;z-index:50;background:#04050df0;border-bottom:1px solid var(--line);transition:background-color .3s,border-color .3s,box-shadow .3s}.h-top-in{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px;transition:height .3s cubic-bezier(.2,.8,.2,1)}.h-top .logo-mark{transition:transform .3s cubic-bezier(.2,.8,.2,1);transform-origin:left center}.h-top .h-pill,.h-top .h-cv{transition:padding .3s,font-size .3s}.h-top.is-compacto{background:#04050df7;border-bottom-color:#8b5cf659;box-shadow:0 10px 30px -14px #000000e6,0 1px #22d3ee1f}.h-top.is-compacto .h-top-in{height:52px}.h-top.is-compacto .logo-mark{transform:scale(.82)}.h-top.is-compacto .h-pill,.h-top.is-compacto .h-cv{padding:7px 12px;font-size:13px}.h-top.is-compacto .h-strip{padding-bottom:8px}.h-progresso{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left center;opacity:0;transition:opacity .3s;pointer-events:none;will-change:transform}.h-top.is-compacto .h-progresso{opacity:1}@media (prefers-reduced-motion: reduce){.h-top,.h-top-in,.h-top .logo-mark{transition:none}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#05060f}::-webkit-scrollbar-thumb{border-radius:10px;border:2px solid #05060f;background:linear-gradient(180deg,#22d3ee,#8b5cf6 55%,#ec4899)}::-webkit-scrollbar-thumb:hover{border-width:1px;background:linear-gradient(180deg,#67e8f9,#a78bfa 55%,#f472b6)}::-webkit-scrollbar-corner{background:#05060f}@supports not selector(::-webkit-scrollbar){html{scrollbar-width:thin;scrollbar-color:#8b5cf6 #05060f}}.h-nav{display:none;gap:24px;font-size:15px}.h-nav a{color:var(--muted)}.h-nav a:hover{color:var(--text)}.h-right{display:flex;align-items:center;gap:10px}.h-pill{padding:10px 14px;border-radius:12px;font-weight:700;font-size:14px;color:#05060f;background:var(--grad);white-space:nowrap}.h-cv{padding:10px 14px;border-radius:12px;border:1px solid var(--line-2);color:var(--text);font-size:14px;white-space:nowrap;display:none}.h-strip{display:flex;gap:8px;overflow-x:auto;padding:0 0 12px;scrollbar-width:none}.h-strip::-webkit-scrollbar{display:none}.h-strip a{flex:none;border:1px solid var(--line);border-radius:999px;padding:7px 13px;font-size:13px;color:var(--muted)}@media (min-width: 900px){.h-nav{display:flex}.h-strip{display:none}.h-cv{display:inline-block}}.h-hero{padding:34px 0 44px}.h-hero-grid{display:grid;gap:44px;align-items:center}.h-tag{display:inline-block;font:13px var(--mono);color:var(--cyan);border:1px solid rgba(34,211,238,.35);padding:6px 12px;border-radius:99px;margin-bottom:18px}.h-title{margin:0;font-size:clamp(38px,10vw,62px);line-height:1.04;letter-spacing:-1.5px;font-weight:800;color:var(--text)}.h-title .g{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.h-sub{margin:18px 0 26px;color:var(--muted);font-size:clamp(16px,4.2vw,19px);line-height:1.55;max-width:540px}.h-ctas{display:flex;flex-wrap:wrap;gap:12px}.h-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:12px;border:1px solid var(--line-2);color:var(--text);background:#ffffff08;font-weight:700;font-size:16px}.h-btn:hover{color:var(--text);border-color:var(--cyan)}.h-btn--pri{border-color:transparent;color:#05060f;background:var(--grad)}.h-btn--pri:hover{color:#05060f}.h-stats{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-wrap:wrap;gap:22px 30px}.h-stats b{display:block;font-size:26px;color:var(--text);letter-spacing:-.5px}.h-stats span{color:var(--muted);font-size:14px}.h-visual{position:relative;width:min(100%,460px);margin:0 auto;padding:0 0 18px}.h-shop{border-radius:18px;overflow:hidden;background:var(--panel-solid);border:1px solid var(--line-2);box-shadow:0 30px 70px #00000073}.h-shop-bar{display:flex;gap:6px;align-items:center;padding:11px 14px;background:#070916;border-bottom:1px solid var(--line)}.h-shop-bar i{width:10px;height:10px;border-radius:50%;background:#334155}.h-shop-bar em{margin-left:12px;font:12px var(--mono);color:var(--muted);font-style:normal}.h-shop-body{padding:24px}.h-shop-title{font-size:26px;font-weight:800;letter-spacing:-.5px;color:var(--text)}.h-shop-title span{color:var(--pink)}.h-shop-sub{margin:8px 0 18px;color:var(--muted);font-size:14px}.h-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.h-shop-grid div{height:78px;border-radius:10px;background:linear-gradient(135deg,#1b2140,#2a1738)}.h-shop-cta{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;background:linear-gradient(90deg,#22d3ee24,#ec489924);border:1px solid var(--line)}.h-shop-cta small{color:var(--muted)}.h-shop-cta span{background:var(--grad);color:#fff;padding:9px 16px;border-radius:10px;font-weight:700;font-size:14px}.h-chip{position:absolute;background:#0e1224eb;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font:13px var(--mono);color:var(--text);white-space:nowrap;animation:hFloat 9s ease-in-out infinite}.h-chip b{color:var(--cyan);font-weight:400}.h-chip i{color:var(--pink);font-style:normal}.h-chip--a{top:-14px;right:-6px}.h-chip--b{top:42%;left:-26px;animation-delay:-3s}.h-chip--c{bottom:-8px;right:8px;animation-delay:-6s}.h-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:6px}@keyframes hFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion: reduce){.h-chip{animation:none}}.h-sec{padding:64px 0}.h-eyebrow{margin:0 0 10px;font:13px var(--mono);color:var(--pink)}.h-h2{margin:0 0 10px;font-size:clamp(28px,7vw,40px);line-height:1.15;letter-spacing:-.8px;font-weight:700;color:var(--text)}.h-lead{margin:0 0 30px;color:var(--muted);font-size:17px;line-height:1.55;max-width:640px}.h-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}.h-tags li{border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:15px;color:var(--text);background:#ffffff05}.h-cards{display:grid;gap:16px;grid-template-columns:1fr}.h-card{position:relative;background:var(--panel-solid);border:1px solid var(--line);border-radius:16px;padding:24px}.h-card .n{margin-bottom:12px;font:700 13px var(--mono);color:var(--cyan)}.h-card h3{margin:0 0 8px;font-size:20px;color:var(--text)}.h-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.55}.h-card .ico{width:42px;height:42px;margin-bottom:14px;color:var(--cyan)}.h-card .ico svg{width:100%;height:100%}.h-res{margin:6px 0 10px;color:var(--green);font-weight:700}.h-meta{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.h-meta span{font:12px var(--mono);color:var(--cyan);border:1px solid rgba(34,211,238,.3);border-radius:6px;padding:3px 7px}.h-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.h-links a{font-size:14px;border:1px solid var(--line-2);border-radius:10px;padding:8px 12px;color:var(--text)}.h-plan.hi{border-color:#ec489999}.h-plan .flag{font:12px var(--mono);color:var(--pink)}.h-plan .val{margin:8px 0 14px;font-size:36px;font-weight:800;letter-spacing:-.5px;color:var(--text)}.h-plan ul{list-style:none;padding:0;margin:0;color:var(--muted);font-size:15px;line-height:1.9}.h-plan li:before{content:"\2713  ";color:var(--green)}.h-projs{display:grid;gap:16px;grid-template-columns:1fr}.h-proj img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:12px;background:#0d1126;margin-bottom:14px}@media (min-width: 760px){.h-cards,.h-projs{grid-template-columns:repeat(3,minmax(0,1fr))}.h-hero-grid{grid-template-columns:1.1fr .9fr;gap:56px}.h-about{grid-template-columns:.8fr 1.2fr}.h-form-row{grid-template-columns:1fr 1fr}}.h-about{display:grid;gap:36px;align-items:center}.h-photo{margin:0 auto;width:min(260px,100%)}.h-photo-frame{width:100%;background:none;border:0;box-shadow:none;border-radius:0}.h-photo-frame img{width:100%;height:auto;display:block}.tech-ico{display:grid;place-items:center;border-radius:12px;background:#0e1224eb;border:1px solid var(--line-2);overflow:hidden;box-shadow:0 8px 22px #00000059}.tech-ico img{width:66%;height:66%;object-fit:contain;display:block}.tech-ico--dark{background:#e8eaf6}.tech-ico--txt{font:700 12px var(--mono);color:var(--cyan)}.h-photo figcaption{margin-top:14px;text-align:center}.h-photo figcaption span{display:block;font:12px var(--mono);color:var(--cyan)}.h-photo figcaption b{font-size:16px;font-weight:600;color:var(--text)}.h-about p{color:var(--muted);font-size:16px;line-height:1.7;margin:0 0 14px}.h-about strong{color:var(--text)}.h-contact{display:grid;gap:36px}.h-list{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}.h-list a{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;border:1px solid var(--line);color:var(--text);background:#ffffff05}.h-list small{display:block;color:var(--muted);font-size:12px}.h-form{display:grid;gap:14px;background:var(--panel-solid);border:1px solid var(--line);border-radius:18px;padding:22px}.h-form-row{display:grid;gap:14px;grid-template-columns:1fr}.h-form label{display:grid;gap:6px;font-size:14px;color:var(--muted)}.h-form input,.h-form select,.h-form textarea{width:100%;background:#0a0d1d;border:1px solid var(--line-2);border-radius:10px;padding:12px;color:var(--text);font:inherit;font-size:16px}.h-form input:focus,.h-form select:focus,.h-form textarea:focus{outline:2px solid var(--cyan);outline-offset:1px}.h-form textarea{min-height:120px;resize:vertical}.h-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.h-status{min-height:1.4em;margin:0;font-size:14px;color:var(--muted)}.h-status.is-error{color:var(--red)}.h-submit{width:100%;border:0;cursor:pointer}.h-thanks{text-align:center;padding:30px 10px}.h-thanks h3{margin:0 0 8px;color:var(--text);font-size:22px}.h-thanks p{color:var(--muted);margin:0}.h-foot{border-top:1px solid var(--line);padding:30px 0 calc(30px + env(safe-area-inset-bottom,0px));color:var(--dim);font-size:14px}.h-foot-in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.h-foot-links{display:flex;flex-wrap:wrap;gap:14px}.h-foot-links a,.h-foot-links button{color:var(--muted);background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}@media (max-width: 520px){.h-ctas .h-btn{flex:1 1 100%}.h-chip--b{left:6px}.h-chip--c{right:4px}.h-top-in{height:58px}.h-pill{padding:9px 12px;font-size:13px}}.skip-link{position:absolute;left:12px;top:-100px;z-index:100;background:var(--cyan);color:#05060f;padding:10px 14px;border-radius:10px;font-weight:700}.skip-link:focus{top:12px}@media (max-width: 520px){.ck-card{padding:12px 12px 10px}.ck-head{margin-bottom:6px}.ck-ico{width:30px;height:30px;border-radius:10px}.ck-eyebrow{display:none}.ck-title{font-size:15px}.ck-text{font-size:12.5px;line-height:1.4;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ck-btn{min-height:38px;font-size:13px}}h1,h2,h3{text-wrap:balance}.h-sec{padding:56px 0}@media (min-width: 900px){.h-sec{padding:88px 0}.h-hero{padding:52px 0 70px}}.h-head{text-align:center;max-width:720px;margin:0 auto 34px}.h-eyebrow{margin-bottom:10px;font-size:12.5px}.h-h2{font-size:clamp(26px,6.4vw,38px);margin-bottom:10px}.h-lead{margin:0 auto;font-size:clamp(15px,3.8vw,17px);max-width:620px}.h-tags{justify-content:center}.h-cards,.h-projs{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.h-cards>*,.h-projs>*{flex:1 1 280px;max-width:380px}.h-projs>*{flex-basis:300px;max-width:400px}.h-card{padding:22px}.h-card h3{font-size:18px}.h-card p{font-size:14.5px}.h-btn{min-height:48px;padding:12px 20px;font-size:15px;border-radius:12px}.h-ctas{gap:10px}.h-stats{gap:18px 26px}.h-stats b{font-size:22px}.h-title{font-size:clamp(34px,9.4vw,58px)}.h-sub{font-size:clamp(15px,3.9vw,18px);margin:16px 0 22px}.h-tag{font-size:12px}.h-sobre{display:flex;flex-direction:column;align-items:center;text-align:center}.h-sobre .h-head{margin-bottom:18px}.h-sobre-text{max-width:680px}.h-sobre-text p{margin:0 0 14px;color:var(--muted);font-size:16px;line-height:1.7}.h-sobre-text strong{color:var(--text)}.h-figure{margin:0;display:flex;flex-direction:column;align-items:center}.h-mono{display:grid;place-items:center;width:100%;aspect-ratio:4 / 5;font:700 26px var(--mono);color:var(--cyan)}.h-figure figcaption{margin-top:8px;text-align:center}.h-figure figcaption span{display:block;font:12px var(--mono);color:var(--cyan)}.h-figure figcaption b{font-size:15px;font-weight:600;color:var(--text)}@keyframes hSpin{to{transform:rotate(360deg)}}@keyframes hBob{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}.h-contact{display:grid;gap:26px;max-width:920px;margin:0 auto}@media (min-width: 900px){.h-contact{grid-template-columns:.8fr 1.2fr;align-items:start}}.h-list{margin:0}.h-list a{padding:13px 14px;font-size:15px;align-items:center}.h-list small{font-size:12px}.h-arr{width:18px;height:18px;flex:none;color:var(--muted)}.h-form{padding:20px}.h-form label{font-size:13.5px}.h-form input,.h-form select,.h-form textarea,.h-submit{font-size:16px}.h-foot{text-align:center}.h-foot-in{flex-direction:column;justify-content:center;gap:12px}.h-foot-text{margin:0;color:var(--muted);font-size:14px}.h-foot-copy{margin:4px 0 0;color:var(--dim);font-size:12.5px}.h-totop{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:#0c1024f2;color:var(--text);display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 26px #0006}.h-totop svg{width:20px;height:20px}.h-totop:hover{border-color:var(--cyan);color:var(--cyan)}.h-wa{position:fixed;right:16px;bottom:calc(68px + env(safe-area-inset-bottom,0px));z-index:60;height:44px;padding:0 16px;border-radius:999px;background:#25d366;color:#04150a;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;box-shadow:0 10px 26px #25d3664d}.h-wa svg{width:20px;height:20px}.h-wa:hover{color:#04150a}@media (max-width: 520px){.h-wa span{display:none}.h-wa{width:44px;padding:0;justify-content:center}}.h-orbit{position:relative;width:min(820px,96vw);height:540px;margin:56px auto 0}.h-rings{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.h-orb-item{position:absolute;left:0;top:0;width:44px;height:44px;will-change:transform}.h-orb-item .tech-ico{width:44px;height:44px}.h-float{position:absolute;left:50%;top:50%;width:360px;transform:translate(-50%,-50%);z-index:3}.h-float .h-photo-frame{animation:hBob 6s ease-in-out infinite;will-change:transform}.h-float .h-photo-frame img{filter:drop-shadow(0 0 26px rgba(139,92,246,.55)) drop-shadow(0 0 70px rgba(34,211,238,.22))}.h-float.is-paused .h-photo-frame{animation-play-state:paused}@media (max-width: 720px){.h-orbit{width:94vw;height:420px;margin-top:44px}.h-float{width:260px}.h-orb-item,.h-orb-item .tech-ico{width:36px;height:36px}}@media (prefers-reduced-motion: reduce){.h-float .h-photo-frame{animation:none}}.h-stack{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 760px){.h-stack,.h-fm{grid-template-columns:repeat(3,minmax(0,1fr))}.h-stack.is-n2,.h-fm.is-n2{grid-template-columns:repeat(2,minmax(0,460px));justify-content:center}.h-stack.is-n1,.h-fm.is-n1{grid-template-columns:minmax(0,760px);justify-content:center}}.h-stack.is-n1 .h-stack-card{text-align:center}.h-stack.is-n1 .h-stack-list{justify-content:center}.h-fm.is-n1 .h-fm-card{max-width:560px;justify-self:center;width:100%}.h-stack-card{background:var(--panel-solid);border:1px solid var(--line);border-radius:16px;padding:22px}.h-stack-card h3{margin:0 0 6px;font-size:17px;color:var(--text)}.h-stack-sub{margin:14px 0 8px;font:12px var(--mono);color:var(--cyan);text-transform:lowercase}.h-stack-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.h-stack-item{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--text)}.h-stack-item .tech-ico{width:28px;height:28px;border-radius:8px}html.protegido body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html.protegido img,html.protegido svg,html.protegido a{-webkit-user-drag:none}html.protegido input,html.protegido textarea,html.protegido select,html.protegido [contenteditable],html.protegido [data-copiavel]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.protect-toast{position:fixed;left:50%;bottom:26px;z-index:400;transform:translate(-50%,16px);opacity:0;pointer-events:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:#0a0d1ef2;border:1px solid rgba(139,92,246,.35);color:#e5e7f0;font-family:var(--mono);font-size:13px;box-shadow:0 16px 40px -14px #000c;transition:opacity .3s,transform .3s}.protect-toast.is-on{opacity:1;transform:translate(-50%)}.protect-toast svg{width:15px;height:15px;color:var(--violet)}@media print{.protect-toast{display:none}}.h-fm{display:grid;gap:16px}.h-fm-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;font:12px var(--mono);color:var(--muted, #9aa3b8)}.h-fm-selo{padding:2px 10px;border-radius:99px;font-weight:600;border:1px solid rgba(34,211,238,.4);color:var(--cyan)}.h-fm-card.is-formado .h-fm-selo{border-color:#34d39973;color:#34d399}.h-fm-card.is-futuro .h-fm-selo{border-color:#ec489973;color:var(--pink)}.h-fm-inst{margin:0;color:var(--muted, #9aa3b8);font-size:14px}.h-fm-bar{height:6px;margin:16px 0 10px;border-radius:99px;background:#ffffff12;overflow:hidden}.h-fm-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--pink))}.h-fm-status{margin:0;font:12.5px var(--mono);color:var(--text)}.h-fm-bar+.h-fm-status{margin-top:0}.h-fm-inst+.h-fm-status{margin-top:12px}.h-cursos{margin-top:24px}.h-cursos-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:1fr}@media (min-width: 760px){.h-cursos-list{grid-template-columns:repeat(2,minmax(0,1fr))}.h-cursos-list.is-n1{grid-template-columns:minmax(0,560px);justify-content:center}}.h-cursos .h-stack-sub{text-align:center}.h-cursos-list.is-n1 li{align-items:center;text-align:center}.h-cursos-list li{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;min-width:0}.h-cursos-list b{font-size:15px;color:var(--text);overflow-wrap:anywhere}.h-cursos-list a{color:inherit;text-decoration:underline;text-decoration-color:#22d3ee80;text-underline-offset:3px}.h-cursos-list span{font:12.5px var(--mono);color:var(--muted, #9aa3b8)}.h-sec{padding:40px 0}.h-hero{padding:26px 0 30px}.h-head{margin-bottom:26px}.h-sobre .h-head{margin-bottom:14px}.h-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-top:24px}@media (min-width: 900px){.h-sec{padding:60px 0}.h-hero{padding:40px 0 48px}.h-stats{grid-template-columns:repeat(4,auto);justify-content:start;gap:18px 34px}}.h-orbit{margin-top:20px}@media (max-width: 720px){.h-orbit{height:380px;margin-top:8px}}@media (min-width: 1000px){.h-sobre{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"head figura" "texto figura";column-gap:40px;align-items:center;text-align:left}.h-sobre .h-head{grid-area:head;align-self:end;text-align:left;margin:0 0 16px;max-width:none}.h-sobre-text{grid-area:texto;align-self:start;max-width:560px}.h-sobre .h-figure{grid-area:figura;margin:0;min-width:0}.h-sobre .h-orbit{width:100%;height:500px;margin:0}.h-sobre .h-float{width:300px}}@media (min-width: 900px){.h-contact{max-width:1080px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:28px}.h-contact>.h-list{position:sticky;top:76px}.h-form-row{grid-template-columns:1fr 1fr}#budget-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}#contact-captcha:empty{display:none}.h-status:empty{min-height:0}@media (min-width: 900px){.h-stats span{white-space:nowrap}}.h-proj h3 a{color:inherit}.h-proj h3 a:hover{color:var(--cyan)}.h-proj-img{display:block}.h-links a.h-links-pri{border:0;color:#05060f;font-weight:700;background:var(--grad)}html.rv-on .rv{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--rv-atraso, 0s)}html.rv-on .rv.rv-zoom{transform:translate3d(0,18px,0) scale(.96)}html.rv-on .rv.rv-in{opacity:1;transform:none}.h-hero-text>*{animation:hEntra .9s cubic-bezier(.2,.8,.2,1) both}.h-hero-text>:nth-child(2){animation-delay:.08s}.h-hero-text>:nth-child(3){animation-delay:.16s}.h-hero-text>:nth-child(4){animation-delay:.24s}.h-hero-text>:nth-child(5){animation-delay:.32s}.h-visual{animation:hEntraLado 1.1s cubic-bezier(.2,.8,.2,1) .2s both}@keyframes hEntra{0%{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}@keyframes hEntraLado{0%{opacity:0;transform:translate3d(24px,10px,0) scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.h-hero-text>*,.h-visual{animation:none}}@media print{html.rv-on .rv{opacity:1!important;transform:none!important}}.h-chip--b{top:auto;bottom:-8px;left:14px}@media (max-width: 520px){.h-chip--b{left:4px;bottom:-8px;font-size:11.5px}.h-chip--c{font-size:11.5px}}.h-proj img{object-position:top center}.h-proj .h-links{justify-content:center}.h-proj .h-links a.h-links-pri{padding:10px 26px}.h-burger{display:none;position:relative;width:42px;height:42px;border-radius:12px;border:1px solid var(--line-2);background:#ffffff08;cursor:pointer}.h-burger span{position:absolute;left:11px;right:11px;height:2px;border-radius:2px;background:var(--text);transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .2s}.h-burger span:nth-child(1){top:14px}.h-burger span:nth-child(2){top:20px}.h-burger span:nth-child(3){top:26px}.h-top.menu-aberto .h-burger{border-color:#8b5cf699;box-shadow:0 0 18px -6px #8b5cf6}.h-top.menu-aberto .h-burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}.h-top.menu-aberto .h-burger span:nth-child(2){opacity:0}.h-top.menu-aberto .h-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.h-menu{position:absolute;left:0;right:0;top:100%;background:#04050dfa;border-bottom:1px solid rgba(139,92,246,.35);box-shadow:0 24px 40px -18px #000000e6;opacity:0;transform:translateY(-8px);transition:opacity .25s,transform .25s cubic-bezier(.2,.8,.2,1)}.h-top.menu-aberto .h-menu{opacity:1;transform:none}.h-menu-in{display:flex;flex-direction:column;padding:8px 0 18px}.h-menu-in>a{padding:14px 4px;font-size:18px;font-weight:600;color:var(--text);border-bottom:1px solid var(--line)}.h-menu-in>a:before{content:"// ";font:13px var(--mono);color:var(--pink)}.h-menu-acoes{display:flex;gap:10px;margin-top:16px}.h-menu-acoes a{flex:1;text-align:center;padding:13px;border-radius:12px;font-weight:700;font-size:15px}.h-menu-cv{border:1px solid var(--line-2);color:var(--text)}.h-menu-cta{color:#05060f;background:var(--grad)}@media (max-width: 899px){.h-burger{display:inline-block}.h-strip,.h-top .h-pill,.h-top .h-cv{display:none!important}}@media (prefers-reduced-motion: reduce){.h-menu,.h-burger span{transition:none}}.h-shop-sub{line-height:1.5;min-height:3em}@media (min-width: 1180px){.h-visual{width:100%;max-width:none;display:flex;justify-content:flex-end}.h-visual .h-shop{width:400px;flex:none}.h-chip--a{top:-14px;right:-18px}.h-chip--b{top:31%;bottom:auto;left:auto;right:376px}.h-chip--c{top:auto;bottom:22%;left:auto;right:376px}}.vt{--vt-cor: #22d3ee;--vt-rgb: 34, 211, 238;--vt-desce: -200px;position:relative;isolation:isolate;animation:vtFlutua 7s ease-in-out infinite;will-change:transform}@keyframes vtFlutua{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-10px,0)}}.vt svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;display:block}.vt .h-shop-bar{position:relative;z-index:2}.vt .h-shop-bar i:nth-child(1){background:#f87171;opacity:.75}.vt .h-shop-bar i:nth-child(2){background:#fbbf24;opacity:.75}.vt .h-shop-bar i:nth-child(3){background:#34d399;opacity:.75}.vt .h-shop-bar em{display:flex;align-items:center;min-width:0;white-space:nowrap}.vt-car{flex:none;width:7px;height:13px;margin-left:2px;background:var(--vt-cor);animation:vtCursor 1.1s steps(1) infinite}@keyframes vtCursor{50%{opacity:0}}.vt-tela{position:relative;height:336px;overflow:hidden}.vt-tela:after{content:"";position:absolute;left:0;right:0;bottom:0;height:28px;background:linear-gradient(rgba(12,16,36,0),var(--panel-solid));pointer-events:none}.vt-pag{padding:0 18px 82px;will-change:transform}.vt-nav{display:flex;align-items:center;justify-content:space-between;padding:13px 0}.vt-marca{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--text)}.vt-marca b{width:24px;height:24px;padding:4px;border-radius:7px;color:#05060f;background:var(--vt-cor);box-shadow:0 0 16px -4px var(--vt-cor);transition:background .6s,box-shadow .6s}.vt-menu{display:flex;gap:7px}.vt-menu i{width:24px;height:5px;border-radius:4px;background:#232a4a}.vt-hero{position:relative;overflow:hidden;padding:18px 18px 6px;border-radius:14px;border:1px solid var(--line);background:radial-gradient(130% 120% at 100% 0%,rgba(var(--vt-rgb),.26),transparent 58%),radial-gradient(120% 120% at 0% 100%,rgba(139,92,246,.2),transparent 55%),#10142c}.vt-tag{display:inline-block;margin-bottom:10px;padding:3px 9px;border-radius:99px;font:11px var(--mono);color:var(--vt-cor);border:1px solid rgba(var(--vt-rgb),.45);transition:color .6s,border-color .6s}.vt .h-shop-title{font-size:24px}.vt .h-shop-title span{color:var(--vt-cor);transition:color .6s}.vt .h-shop-sub{margin:6px 0 12px;font-size:13.5px;min-height:0}.vt-h{margin:18px 0 10px;font:12px var(--mono);color:var(--vt-cor);transition:color .6s}.vt-prods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vt-prods>div{padding:6px 6px 9px;border-radius:11px;border:1px solid var(--line);background:#ffffff05}.vt-prods i{display:grid;place-items:center;height:64px;border-radius:8px;color:var(--vt-cor);background:linear-gradient(135deg,#1b2140,#2a1738);transition:color .6s}.vt-prods i svg{width:28px;height:28px}.vt-prods b{display:block;width:78%;height:6px;margin-top:8px;border-radius:4px;background:#283055}.vt-prods small{display:block;margin-top:6px;font:600 11.5px var(--mono);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vt-nota{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#ffffff05;font-size:13px;color:var(--text)}.vt-estrelas{color:#fbbf24;letter-spacing:1px;font-size:13px}.vt-nota small{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vt-rodape{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font:11.5px var(--mono);color:var(--muted)}.vt-rodape span{display:flex;align-items:center;gap:6px;white-space:nowrap}.vt-rodape svg{width:14px;height:14px;color:var(--vt-cor)}.vt-aviso{position:absolute;right:12px;bottom:14px;z-index:3;display:flex;align-items:center;gap:10px;max-width:calc(100% - 24px);padding:10px 13px;border-radius:12px;background:#0f1530;border:1px solid rgba(var(--vt-rgb),.4);box-shadow:0 14px 30px -12px #000c,0 0 26px -12px var(--vt-cor);opacity:0;will-change:transform,opacity}.vt-aviso i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--vt-cor);box-shadow:0 0 10px var(--vt-cor)}.vt-aviso>span{display:flex;flex-direction:column;min-width:0}.vt-aviso small{font:10.5px var(--mono);color:var(--vt-cor)}.vt-aviso b{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vt-linha{position:absolute;left:0;top:0;z-index:4;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--vt-cor),transparent);transform:translate(-100%);pointer-events:none}.vt.is-volta .vt-linha{animation:vtLinha 1.2s ease both}.vt.is-volta .vt-pag{animation:vtDesce 9s cubic-bezier(.45,0,.25,1) both}.vt.is-volta .vt-hero,.vt.is-volta .vt-nav{animation:vtAparece .7s ease both}.vt.is-volta .vt-prods>div{animation:vtSobe .7s cubic-bezier(.2,.8,.2,1) both}.vt.is-volta .vt-prods>div:nth-child(2){animation-delay:.12s}.vt.is-volta .vt-prods>div:nth-child(3){animation-delay:.24s}.vt.is-volta .vt-aviso{animation:vtAviso 9s cubic-bezier(.2,.8,.2,1) both}@keyframes vtLinha{to{transform:translate(100%)}}@keyframes vtAparece{0%{opacity:0}to{opacity:1}}@keyframes vtSobe{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes vtDesce{0%,20%{transform:translateZ(0)}52%,74%{transform:translate3d(0,var(--vt-desce),0)}94%,to{transform:translateZ(0)}}@keyframes vtAviso{0%,50%{opacity:0;transform:translateY(14px) scale(.97)}55%,80%{opacity:1;transform:none}85%,to{opacity:0;transform:translateY(6px)}}.vt.is-pausa,.vt.is-pausa *{animation-play-state:paused!important}.h-visual{padding-top:26px}.h-chip--a{top:0!important;z-index:2}@media (max-width: 420px){.vt-tela{height:318px}.vt-pag{padding:0 14px 78px}.vt-hero{padding:16px 14px 4px}.vt-prods{gap:8px}.vt-prods i{height:56px}.vt-nota small{display:none}}@media (max-width: 370px){.h-chip--c{display:none}.vt-rodape span:last-child{display:none}}@media (prefers-reduced-motion: reduce){.vt,.vt *{animation:none!important}}@media (min-width: 1000px){.h-sobre .h-float{width:340px;top:calc(50% - 26px)}}@media (max-width: 720px){.h-float{width:285px;top:calc(50% - 14px)}}@media (min-width: 521px) and (max-width: 1179px){.h-chip--b,.h-chip--c{font-size:11.5px;padding:7px 10px}.h-chip--b{left:0}.h-chip--c{right:0}}@media (min-width: 1000px){.h-sobre .h-float{top:calc(50% - 12px)}}@media (min-width: 1000px){.h-sobre{grid-template-rows:auto 1fr;align-items:start}.h-sobre .h-head{align-self:start;padding-top:6px}.h-sobre-text,.h-sobre .h-figure{align-self:start}}@media (min-width: 900px){.h-sec{padding:50px 0}}.h-sec{padding:28px 0}@media (min-width: 900px){.h-sec{padding:36px 0}}body{min-height:100vh;display:flex;flex-direction:column}body>.h-foot{margin-top:auto}@media (max-width: 999px){.h-sobre .h-orbit{height:410px;margin-top:24px}.h-sobre .h-float{top:50%}}@media print{body{display:block;min-height:0}}html.cv-embed body{display:block}@media (min-width: 900px){.h-hero{padding-bottom:24px}}body>.i-main{flex:1 0 auto;display:flex;flex-direction:column;justify-content:center}@media print{body>.i-main{display:block}}.h-sec{scroll-margin-top:51px}@media (max-width: 899px){.h-sec{scroll-margin-top:53px}}.h-btn--pri,.h-pill,.h-links a.h-links-pri,.h-menu-cta,.h-submit{background-origin:border-box;border-color:transparent}.h-btn--pri,.h-links a.h-links-pri{box-shadow:0 10px 26px -12px #8b5cf6cc;transition:transform .2s,box-shadow .2s,filter .2s}.h-btn--pri:hover,.h-links a.h-links-pri:hover{transform:translateY(-1px);box-shadow:0 14px 30px -12px #ec4899d9}.h-btn:not(.h-btn--pri){transition:border-color .2s,background-color .2s}.h-btn:not(.h-btn--pri):hover{border-color:#22d3ee8c;background:#22d3ee0f}.h-btn--pri:hover,.h-btn--pri:focus-visible{border-color:transparent}@media (min-width: 900px){.h-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}.h-hero-text,.h-visual{min-width:0}@media (min-width: 900px) and (max-width: 1179px){.h-title{font-size:clamp(38px,5vw,56px);overflow-wrap:anywhere}}@media (max-width: 1099px){.h-nav{display:none!important}.h-burger{display:inline-block}.h-top .h-pill,.h-top .h-cv,.h-strip{display:none!important}}@media (min-width: 1180px){.h-chip--a{right:-4px}}
