:root{color-scheme:dark;--bg:#02070d;--panel:#06111b;--line:#0b4c70;--cyan:#00d9ed;--blue:#087dff;--text:#f5f8fc;--muted:#aeb9c8;--display:"Sora",sans-serif;--body:"Plus Jakarta Sans",sans-serif}
i[class]{display:inline-grid;place-items:center;font-style:normal;font-family:var(--body)}i[class]:before{font-size:.9em;font-weight:700}.fa-whatsapp:before{content:"◉"}.fa-address-card:before{content:"＋"}.fa-briefcase:before{content:"▣"}.fa-chevron-right:before{content:"›"}.fa-layer-group:before{content:"◇"}.fa-window-maximize:before{content:"▤"}.fa-desktop:before{content:"▱"}.fa-code:before{content:"</>";font-size:.65em!important}.fa-robot:before{content:"⊙"}.fa-rocket:before{content:"↗"}.fa-calendar-check:before{content:"▦"}.fa-arrow-up-right-from-square:before{content:"↗"}.fa-chart-column:before{content:"▥"}.fa-users:before{content:"♙♙";font-size:.55em!important}.fa-comments:before{content:"▢"}.fa-linkedin:before{content:"in";font-family:Arial,sans-serif}.fa-instagram:before{content:"◎"}.fa-envelope:before{content:"✉"}.fa-globe:before{content:"◎"}
.card-shell>header,.card-shell>nav,.card-shell>section,.card-shell>footer{animation:card-enter .55s ease both}.card-shell>nav{animation-delay:.06s}.card-shell>section:nth-of-type(1){animation-delay:.1s}.card-shell>section:nth-of-type(2){animation-delay:.14s}.card-shell>section:nth-of-type(3),.card-shell>footer{animation-delay:.18s}@keyframes card-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#01050a;color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}.skip-link{position:fixed;z-index:10;top:.5rem;left:.5rem;transform:translateY(-150%);padding:.75rem 1rem;background:#fff;color:#000;border-radius:.25rem}.skip-link:focus{transform:none}.card-shell{width:100%;max-width:940px;min-height:100vh;margin:auto;padding:max(1.1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));overflow:hidden;background:radial-gradient(circle at 50% 3%,rgba(0,126,255,.09),transparent 25rem),linear-gradient(rgba(4,28,47,.32) 1px,transparent 1px),linear-gradient(90deg,rgba(4,28,47,.25) 1px,transparent 1px),var(--bg);background-size:auto,54px 54px,54px 54px,auto}.hero{position:relative;padding:2.5rem 0 1rem;text-align:center}.language-toggle{position:absolute;top:0;right:0;display:flex;align-items:center;gap:.55rem;color:#8190a2}.language-toggle button{min-width:44px;min-height:44px;padding:0;border:0;background:none;color:#aeb8c6;font:600 .9rem var(--body);cursor:pointer}.language-toggle button[aria-pressed=true]{color:var(--cyan)}.language-toggle button:focus-visible,.action:focus-visible,.project:focus-visible,.social-links a:focus-visible{outline:2px solid #fff;outline-offset:3px}.brand-logo{display:block;width:clamp(185px,31vw,260px);height:auto;margin:0 auto -.4rem}.hero h1{margin:0;font:700 clamp(1.9rem,5vw,2.55rem)/1.15 var(--display);letter-spacing:-.035em}.role{margin:.4rem 0 0;color:#00aefa;font-size:clamp(.95rem,2.4vw,1.18rem);font-weight:500}.tagline{position:relative;margin:.45rem auto 0;color:#eef2f7;font-size:clamp(.9rem,2.2vw,1.08rem)}.tagline:after{content:"";display:block;width:42px;height:2px;margin:.8rem auto 0;background:linear-gradient(90deg,var(--blue),var(--cyan))}.code-detail{position:absolute;top:5.5rem;display:flex;flex-direction:column;color:#12608a;font:400 .72rem/1.6 monospace;text-align:left;opacity:.65}.code-detail--left{left:0}.code-detail--right{right:1rem}.primary-actions{display:grid;gap:.65rem;width:min(100%,700px);margin:.2rem auto 1.25rem}.action{display:grid;grid-template-columns:42px 1fr 32px;align-items:center;min-height:64px;padding:.35rem 1.15rem;border:1px solid #0079a6;border-radius:12px;background:rgba(2,10,17,.82);color:#fff;text-decoration:none;font-size:1.05rem;transition:transform .2s,border-color .2s,background .2s}.action>i:first-child{color:#00adf5;font-size:1.55rem;text-align:center}.action .arrow{justify-self:end;font-size:.85rem}.action--primary{border-color:#0ce2ed;background:linear-gradient(105deg,#006df5,#0796ff);box-shadow:0 10px 28px rgba(0,108,255,.18)}.action--primary>i:first-child{color:#fff}.section{margin-top:1.25rem}.section h2{display:flex;align-items:center;gap:.75rem;margin:0 0 .7rem;font:600 clamp(1.15rem,3vw,1.4rem)/1.2 var(--display);letter-spacing:-.025em}.section h2>i{width:28px;color:#00aafa;text-align:center}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.service{display:grid;min-height:120px;place-items:center;align-content:center;gap:.8rem;padding:1rem .5rem;border:1px solid #17405a;border-radius:12px;background:rgba(3,14,23,.86);text-align:center;transition:transform .2s,border-color .2s}.service>i{color:#00aefa;font-size:2rem}.service h3{margin:0;font:500 .9rem/1.3 var(--body)}.projects-list{display:grid;gap:.75rem}.project{display:grid;grid-template-columns:minmax(220px,38%) 1fr;gap:1rem;min-height:148px;padding:.65rem;border:1px solid #174761;border-radius:12px;background:rgba(2,12,20,.9);color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}.project>img,.project-placeholder{width:100%;height:100%;min-height:126px;object-fit:cover;border:1px solid #123d5d;border-radius:8px;background:#061728}.project-copy{align-self:center;padding:.2rem .35rem}.project-heading{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.8rem}.project-heading h3{position:relative;margin:0;padding-bottom:.7rem;font:600 clamp(1rem,2.3vw,1.22rem)/1.3 var(--display);letter-spacing:-.025em}.project-heading h3:after{content:"";position:absolute;bottom:.2rem;left:0;width:30px;height:2px;background:var(--cyan)}.project-icon{display:grid;width:48px;height:48px;place-items:center;border:1px solid #006fba;border-radius:8px;background:linear-gradient(145deg,#063888,#071b50);color:#00c9f5;font-size:1.3rem}.external{align-self:start;color:#00aefa}.project p{margin:.35rem 0 0 60px;color:var(--muted);font-size:.9rem;line-height:1.45}.status{display:inline-block;margin:.2rem 0 0 60px;padding:.18rem .5rem;border:1px solid #20516a;border-radius:999px;color:#8bb6cb;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.project-placeholder{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#071c31,#03101c)}.project-placeholder>i{z-index:1;color:#087dff;font-size:2.7rem}.project-placeholder span{position:absolute;width:70%;height:1px;background:linear-gradient(90deg,transparent,#0d6fa5,transparent)}.project-placeholder span:nth-child(2){top:30%}.project-placeholder span:nth-child(3){top:50%}.project-placeholder span:nth-child(4){top:70%}.tech-list{display:flex;flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none}.tech-list li{display:flex;min-height:54px;align-items:center;gap:.65rem;padding:.4rem 1rem;border:1px solid #1a4a66;border-radius:999px;background:#030c14;font-size:.94rem}.tech-list b{display:grid;width:31px;height:31px;place-items:center;font-family:var(--display);font-size:1rem}.react,.tailwind{color:#14d5ed}.next{color:#fff;border-right:1px solid #687584}.ts{border-radius:3px;background:#1479e9;color:#fff}.node{border:2px solid #73c800;color:#73c800;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%)}.footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #20445b;text-align:center}.social-links{display:flex;justify-content:center;gap:1.3rem}.social-links a{display:grid;width:52px;height:52px;place-items:center;border:1px solid #008cff;border-radius:50%;color:#eaf5ff;text-decoration:none;font-size:1.3rem;transition:transform .2s,background .2s}.social-links a:nth-child(2){color:#ff31d2}.footer-message{margin:.7rem 0 .15rem;color:#aeb9c8;font-size:.9rem}.footer-message strong{color:var(--cyan);font-weight:500}.copyright{margin:0;color:#63849a;font-size:.78rem}
@media (hover:hover){.action:hover,.project:hover,.service:hover{transform:translateY(-3px);border-color:var(--cyan)}.action--primary:hover{background:linear-gradient(105deg,#0062df,#08a7ff)}.social-links a:hover{transform:translateY(-3px);background:#06213a}}
@media (max-width:700px){.card-shell{background-size:auto,42px 42px,42px 42px,auto}.code-detail{display:none}.hero{padding-top:2rem}.brand-logo{width:195px}.services-grid{grid-template-columns:repeat(2,1fr)}.service{min-height:110px}.project{grid-template-columns:1fr}.project>img,.project-placeholder{height:auto;aspect-ratio:2/1;min-height:0}.project-copy{padding:.25rem}.project-heading{grid-template-columns:44px 1fr auto}.project-icon{width:44px;height:44px}.project p{margin-left:56px}.status{margin-left:56px}.tech-list{justify-content:center}}
@media (max-width:390px){.card-shell{padding-left:.75rem;padding-right:.75rem}.hero h1{font-size:1.72rem}.role{font-size:.9rem}.tagline{max-width:290px}.action{grid-template-columns:38px 1fr 24px;padding:.3rem .8rem;font-size:.96rem}.services-grid{gap:.55rem}.service h3{font-size:.82rem}.project{padding:.5rem}.project-heading{grid-template-columns:40px 1fr auto;gap:.6rem}.project-icon{width:40px;height:40px}.project p,.status{margin-left:0}.tech-list{gap:.45rem}.tech-list li{min-height:48px;padding:.3rem .7rem;font-size:.84rem}.social-links{gap:.75rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.technology-marquee{display:grid;width:100%;gap:.72rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%)}.marquee-row{width:100%;overflow:hidden;touch-action:pan-y}.marquee-track{display:flex;width:max-content;will-change:transform;transform:translate3d(0,0,0)}.marquee-group{display:flex;flex:none;gap:.65rem;margin:0;padding:0 .65rem 0 0;list-style:none}.marquee-group li{display:flex;flex:none;min-height:54px;align-items:center;gap:.65rem;padding:.42rem 1rem;border:1px solid #1a4a66;border-radius:999px;background:#030c14;color:var(--text);font-size:.92rem;white-space:nowrap}.marquee-group b{display:grid;width:31px;height:31px;place-items:center;font-family:var(--display);font-size:.82rem}.marquee-track--forward{animation:marquee-forward 34s linear infinite}.marquee-track--reverse{animation:marquee-reverse 39s linear infinite}.technology-marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee-forward{to{transform:translate3d(-50%,0,0)}}@keyframes marquee-reverse{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}.marquee-group .js{border-radius:3px;background:#f7df1e;color:#161616}.marquee-group .ts{border-radius:3px;background:#3178c6;color:#fff}.marquee-group .react{color:#61dafb;font-size:1.15rem}.marquee-group .next,.marquee-group .prisma,.marquee-group .github,.marquee-group .vercel{color:#fff}.marquee-group .node{border:2px solid #68a063;color:#68a063}.marquee-group .nest{border-radius:50%;background:#e0234e;color:#fff}.marquee-group .tailwind{color:#38bdf8;font-size:1.15rem}.marquee-group .styled{color:#db7093}.marquee-group .postgres{border-radius:50%;background:#336791;color:#fff}.marquee-group .mysql{color:#f29111}.marquee-group .mongo{color:#47a248}.marquee-group .supabase{color:#3ecf8e}.marquee-group .redis{color:#dc382d}.marquee-group .docker{color:#2496ed}.marquee-group .git{color:#f05032}.marquee-group .railway{color:#b7a9ff}.marquee-group .openai{color:#74aa9c}.marquee-group .n8n{color:#ff6d5a;font-size:.68rem}
@media (max-width:390px){.marquee-group li{min-height:50px;padding:.38rem .78rem;font-size:.84rem}.marquee-group b{width:28px;height:28px}.technology-marquee{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)}}
@media (prefers-reduced-motion:reduce){.technology-marquee{overflow:visible;-webkit-mask-image:none;mask-image:none}.marquee-row{overflow-x:auto;scrollbar-width:thin;touch-action:pan-x}.marquee-track{animation:none!important;transform:none!important}.marquee-group[aria-hidden=true]{display:none}}
.skip-link{top:-100px;transform:none}.skip-link:focus{top:.5rem}

/* Responsive composition: scoped exclusively to /cartao. */
body{min-height:100vh;background:radial-gradient(circle at 50% 0,rgba(0,111,197,.1),transparent 34rem),linear-gradient(rgba(4,28,47,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(4,28,47,.18) 1px,transparent 1px),var(--bg);background-size:auto,54px 54px,54px 54px,auto;background-attachment:fixed}.card-shell{max-width:1240px;padding:max(1.1rem,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:transparent}.hero h1{font-size:clamp(2rem,4vw,3.75rem)}.role{font-size:clamp(1rem,1.8vw,1.35rem)}.tagline,.project p{font-size:clamp(.95rem,1.2vw,1.05rem)}.section h2{font-size:clamp(1.4rem,2vw,2rem)}
@media (max-width:767px){.card-shell{display:block;width:100%;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.hero{padding-top:2rem}.hero h1{font-size:clamp(1.72rem,8vw,2.35rem)}.role{font-size:clamp(.9rem,4vw,1.05rem)}.tagline,.project p{font-size:clamp(.88rem,3.5vw,.98rem)}.section h2{font-size:clamp(1.2rem,5vw,1.45rem)}.primary-actions{width:100%}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-list{grid-template-columns:1fr}.project{grid-template-columns:1fr}.project>img,.project-placeholder{height:auto;aspect-ratio:2/1;min-height:0}}
@media (min-width:768px) and (max-width:1023px){.card-shell{max-width:900px;padding-left:max(36px,env(safe-area-inset-left));padding-right:max(36px,env(safe-area-inset-right))}.hero{padding-top:2.75rem}.primary-actions{width:min(100%,760px)}.section{margin-top:2rem}.service{min-height:132px}.project{padding:1rem;gap:1.25rem}.projects-list{grid-template-columns:1fr}.technology-marquee{width:100%}}
@media (min-width:1024px){.card-shell{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);column-gap:clamp(2.5rem,5vw,5rem);align-items:center;padding-left:max(clamp(40px,4vw,56px),env(safe-area-inset-left));padding-right:max(clamp(40px,4vw,56px),env(safe-area-inset-right))}.hero{align-self:center;padding:2.25rem 0 2rem}.brand-logo{width:clamp(190px,17vw,225px)}.language-toggle{top:.25rem;right:0}.code-detail{top:6rem;font-size:.66rem;opacity:.45}.code-detail--left{left:-1rem}.code-detail--right{right:-.5rem}.hero h1{font-size:clamp(2.15rem,3vw,3.25rem)}.role{font-size:clamp(1rem,1.35vw,1.22rem)}.tagline{max-width:34rem;font-size:clamp(.95rem,1.1vw,1.05rem)}.primary-actions{align-self:center;width:100%;margin:1.5rem 0 0}.action{min-height:72px;font-size:clamp(1rem,1.3vw,1.16rem)}.section,.footer{grid-column:1/-1;width:100%}.section{margin-top:clamp(2.5rem,4vw,3.5rem)}.section h2{margin-bottom:1rem}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.service{min-height:140px;padding:1.25rem 1rem}.service h3{font-size:.95rem}.projects-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:1rem}.project{display:flex;min-width:0;height:100%;flex-direction:column;gap:.9rem;padding:1rem}.project>img,.project-placeholder{width:100%;height:auto;min-height:0;aspect-ratio:16/8;object-fit:cover}.project-copy{display:flex;flex:1;flex-direction:column;align-self:stretch;padding:.1rem .25rem .25rem}.project-heading{grid-template-columns:48px minmax(0,1fr) auto}.project-heading h3{font-size:clamp(1rem,1.35vw,1.22rem)}.project p{margin:.45rem 0 0 60px}.status{align-self:flex-start}.technology-marquee{width:100%}.footer{margin-top:clamp(2.75rem,4vw,4rem);padding-top:1.4rem}}

/* Premium segmented language control. */
.language-toggle{position:fixed;z-index:8;top:max(18px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));display:grid;grid-template-columns:1fr 1fr;gap:3px;width:118px;padding:4px;border:1px solid rgba(0,190,238,.52);border-radius:999px;background:rgba(2,13,22,.92);box-shadow:0 8px 28px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.04);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.language-toggle span{display:none}.language-toggle button{position:relative;min-width:0;min-height:40px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:#8497aa;font:700 .78rem/1 var(--body);letter-spacing:.08em;transition:color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}.language-toggle button[aria-pressed=true]{background:linear-gradient(135deg,#087dff,#00bddd);color:#fff;box-shadow:0 4px 14px rgba(0,141,255,.3)}.language-toggle button:hover{color:#fff}.language-toggle button:active{transform:scale(.96)}.language-toggle button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (min-width:1024px){.language-toggle{right:max(28px,calc((100vw - 1240px)/2 + 56px));top:24px;width:126px}.language-toggle button{min-height:42px}}
@media (max-width:767px){.hero{padding-top:5.25rem}}

/* Project cards: consistent media and WhatsApp conversion action. */
.projects-list .project{display:flex;height:100%;min-width:0;flex-direction:column;gap:.85rem;cursor:pointer}.projects-list .project>img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/9;object-fit:cover;object-position:center;border:1px solid #123d5d;border-radius:8px;background:#061728}.projects-list .project-copy{display:flex;flex:1;flex-direction:column;align-self:stretch;padding:.2rem .35rem .35rem}.projects-list .project p{margin:.45rem 0 0 60px}.project-cta{display:flex;min-height:44px;align-items:center;gap:.55rem;margin:1rem 0 0 60px;color:#8bdaf2;font-size:.82rem;font-weight:700}.project-cta>i{width:24px;height:24px;border:1px solid rgba(37,211,102,.48);border-radius:50%;color:#78dfa0;font-size:.9rem}.projects-list .project:hover .project-cta{color:#d9f7ff}.projects-list .project:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-color:var(--cyan)}
@media (max-width:700px){.projects-list .project p,.projects-list .project .status,.projects-list .project-cta{margin-left:0}.projects-list .project>img{aspect-ratio:16/9}.project-cta{margin-top:.75rem}}
