:root{--bg:#08070f;--panel:#110d1c;--panel2:#151021;--purple:#9a4dff;--purple2:#c084fc;--purple3:#6d28d9;--text:#f7f4fb;--muted:#b9b0c8;--line:#3b2457;--max:1180px;--shadow:0 22px 70px rgba(124,58,237,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 12%,rgba(113,50,190,.13),transparent 30%),radial-gradient(circle at 15% 40%,rgba(79,30,130,.08),transparent 28%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;mask-image:linear-gradient(to bottom,black,transparent 75%);opacity:.45}.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.section{padding:105px 0}.site-header{position:sticky;top:0;z-index:50;height:70px;padding:0 max(24px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(8,7,15,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(154,77,255,.22)}.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none;font-size:15px;font-weight:600}.brand-mark{font-family:Georgia,serif;color:var(--purple2);font-size:24px;font-weight:700;letter-spacing:-2px}.nav{display:flex;align-items:center;gap:30px}.nav a{color:#d7d0df;text-decoration:none;font-size:13px;position:relative}.nav a:hover,.nav a.active{color:#fff}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--purple2);box-shadow:0 0 12px var(--purple)}.nav .cv-nav{padding:9px 16px;border:1px solid rgba(192,132,252,.4);border-radius:10px;background:linear-gradient(135deg,#9847ff,#7334d2);color:#fff;box-shadow:0 8px 28px rgba(124,58,237,.25)}.nav .cv-nav:after{display:none}.menu-toggle{display:none;background:none;border:0;color:white}.hero{width:min(calc(100% - 48px),1280px);margin:0 auto;padding:80px 0 50px;min-height:650px;display:grid;grid-template-columns:360px 1fr;gap:65px;align-items:center;position:relative}.hero:after{content:"";position:absolute;right:-80px;top:20px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(135,57,226,.16),transparent 65%);pointer-events:none}.hero-photo-wrap{position:relative}.hero-photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:26px;border:1px solid rgba(192,132,252,.4);box-shadow:var(--shadow);filter:saturate(.94)}.photo-glow{position:absolute;inset:18px -12px -14px 12px;border-radius:30px;border:1px solid rgba(154,77,255,.18);z-index:-1}.photo-caption{position:absolute;left:-20px;bottom:28px;padding:14px 17px;background:rgba(10,7,18,.83);border:1px solid rgba(192,132,252,.3);border-radius:12px;color:#ddd4e7;font-size:12px;line-height:1.5;box-shadow:0 15px 40px rgba(0,0,0,.35)}.photo-caption strong{color:var(--purple2);font-weight:600}.hero-copy{position:relative;z-index:2}.eyebrow{margin:0 0 8px;color:var(--purple2);font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:700}.hero h1{font-size:clamp(42px,6vw,74px);line-height:1.03;letter-spacing:-.055em;margin:0 0 8px}.hero h1 span,.section-heading h2 span,.contact h2 span{color:var(--purple2)}.hero h2{font-size:25px;line-height:1.2;color:#d6cfe1;margin:0 0 18px;font-weight:600}.hero-text{max-width:680px;color:#c2bacb;font-size:16px;margin:0 0 22px}.hero-meta{display:flex;flex-wrap:wrap;gap:18px;color:#aaa0b7;font-size:12px;margin-bottom:28px}.hero-meta a{color:#cfc6da;text-decoration:none}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;padding:11px 19px;border-radius:11px;font-size:13px;font-weight:650;transition:.25s ease;border:1px solid transparent}.btn-primary{background:linear-gradient(135deg,#a14eff,#7435d7);color:#fff;box-shadow:0 10px 28px rgba(126,34,206,.25)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(126,34,206,.35)}.btn-ghost{border-color:#68418b;background:rgba(18,12,29,.55);color:#f1ebf6}.btn-ghost:hover{border-color:var(--purple2);background:rgba(112,45,171,.14)}.hero-orbit{position:absolute;right:40px;top:78px;display:flex;flex-direction:column;gap:12px;opacity:.5;z-index:1}.hero-orbit span{font-family:Georgia,serif;font-style:italic;color:var(--purple2);font-size:18px;transform:rotate(-12deg)}.companies{padding:20px 28px;display:grid;grid-template-columns:175px 1fr;gap:20px;align-items:center;border:1px solid #4b2a6b;border-radius:18px;background:linear-gradient(90deg,rgba(18,12,29,.95),rgba(13,10,22,.8));box-shadow:var(--shadow)}.companies-label small{display:block;color:var(--purple2);font-size:12px;margin-bottom:3px}.companies-label strong{font-size:14px;line-height:1.35}.company-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.company{font-weight:800;font-size:25px;letter-spacing:-.04em;color:#f5f2f7;text-align:center}.company span{display:block;font-size:8px;letter-spacing:.12em;color:#8d8399;text-transform:uppercase;font-weight:500}.company.featured:first-child{color:#4b8fff}.company.featured:nth-child(2){font-size:29px}.company.agora{color:#77d9c2}.company.agora em{display:block;font-size:8px;color:#81788b;font-style:normal;font-weight:500}.client-pair{padding-left:17px;border-left:1px solid #9e2633;font-size:14px;color:#fff}.client-pair span{display:block;color:#d5ceda;font-size:10px}.porto{border-left-color:#258cc6;color:#4db7ee}.section-heading{margin-bottom:42px}.section-heading h2{font-size:42px;line-height:1.05;letter-spacing:-.045em;margin:0}.section-heading.split{display:flex;justify-content:space-between;gap:40px;align-items:end}.section-heading.split>p{max-width:460px;color:var(--muted);margin:0;font-size:14px}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:55px}.about-copy p{color:#bdb4c8;font-size:16px;max-width:700px}.about-copy strong{color:#f2edf7}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.about-stats div{padding:22px;border:1px solid #30203f;border-radius:14px;background:linear-gradient(145deg,rgba(22,14,34,.9),rgba(12,9,20,.8))}.about-stats strong{display:block;font-size:28px;color:var(--purple2);margin-bottom:2px}.about-stats span{color:#948a9f;font-size:11px}.skill-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.skill-grid span{padding:13px 14px;border:1px solid #2d203b;background:#100c19;border-radius:11px;color:#ddd5e5;font-size:12px;transition:.2s}.skill-grid span:hover{border-color:#714397;transform:translateY(-2px);background:#151021}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.project-card{min-height:330px;padding:25px;border:1px solid #3b2453;border-radius:18px;background:linear-gradient(145deg,rgba(22,15,34,.96),rgba(12,9,20,.95));display:flex;flex-direction:column;transition:.3s;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0,rgba(154,77,255,.13),transparent 45%);pointer-events:none}.project-card:hover{transform:translateY(-5px);border-color:#8a4cc1;box-shadow:0 20px 50px rgba(79,33,120,.2)}.project-index{color:#6f4a88;font-size:11px;font-weight:700;margin-bottom:35px}.project-card h3{font-size:21px;line-height:1.2;margin:0 0 10px;position:relative}.project-card p{font-size:13px;color:#aaa0b2;line-height:1.65;margin:0 0 20px;position:relative}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;position:relative}.tags span,.recognition-tech span{font-size:10px;padding:5px 8px;border-radius:999px;background:#221932;color:#cfc4dc;border:1px solid #35264a}.project-card a{margin-top:19px;color:var(--purple2);font-size:12px;text-decoration:none;font-weight:700;position:relative}.project-card a b{font-size:16px}.recognition{display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:center;margin-top:15px;padding:28px;border-radius:18px;border:1px solid #6c3c8e;background:linear-gradient(90deg,rgba(34,20,49,.95),rgba(15,10,24,.92));box-shadow:var(--shadow)}.recognition-badge{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#a34fff,#6127bc);font-size:24px;box-shadow:0 10px 30px rgba(124,58,237,.3)}.recognition h2{font-size:25px;margin:0 0 3px}.recognition p{margin:0;color:#a99fb1;font-size:12px}.recognition p strong{color:#ece6f1}.recognition-tech{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:220px}.timeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:22px}.timeline:before{content:"";position:absolute;left:0;right:0;top:47px;height:1px;background:linear-gradient(90deg,#5b2b7d,#9a4dff,#5b2b7d)}.timeline-item{position:relative;padding:45px 20px 20px 0}.timeline-dot{position:absolute;top:20px;left:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#1b1028;border:1px solid #9950d2;color:var(--purple2);font-size:9px;font-weight:800;z-index:2}.timeline-date{font-size:11px;color:var(--purple2);margin:10px 0 5px}.timeline-item h3{font-size:21px;margin:0}.timeline-item .role{color:#e2d9e9;font-size:13px;font-weight:650;margin:3px 0}.timeline-item p:last-child{color:#91879b;font-size:12px;margin:8px 0}.contact{margin-bottom:70px;padding:48px 55px;display:flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid #55306d;border-radius:20px;background:radial-gradient(circle at 85% 20%,rgba(154,77,255,.12),transparent 30%),#110d1b}.contact h2{font-size:39px;line-height:1.05;letter-spacing:-.04em;margin:0 0 12px}.contact p{color:#a89eaf;margin:0}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.footer{border-top:1px solid #281a34;padding:35px max(24px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:1.1fr 1fr 1fr;align-items:center;gap:30px;color:#8f8598;font-size:11px}.footer>div:first-child{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center}.footer>div:first-child small{grid-column:2}.footer .brand-mark{grid-row:span 2}.footer strong{color:#e9e1ef}.footer-links{display:flex;justify-content:center;gap:18px}.footer a{color:#9e95a7;text-decoration:none}.footer a:hover{color:var(--purple2)}.footer-right{text-align:right}.footer-right span{color:#c06cff}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}
@media(max-width:980px){.nav{gap:16px}.hero{grid-template-columns:300px 1fr;gap:38px}.skill-grid{grid-template-columns:repeat(4,1fr)}.project-grid{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.timeline:before{display:none}.timeline-item{padding-left:45px}.timeline-dot{left:0}.recognition{grid-template-columns:60px 1fr}.recognition-tech{grid-column:2;justify-content:flex-start}.footer{grid-template-columns:1fr}.footer-right{text-align:left}.footer-links{justify-content:flex-start}}
@media(max-width:760px){.site-header{height:64px}.menu-toggle{display:flex;flex-direction:column;gap:4px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;background:#e9e2ef}.nav{position:absolute;top:64px;left:0;right:0;padding:18px 24px 25px;background:rgba(8,7,15,.97);backdrop-filter:blur(18px);display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid #3b2457}.nav.open{display:flex}.nav a.active:after{display:none}.hero{width:min(calc(100% - 32px),620px);grid-template-columns:1fr;padding:50px 0 30px;gap:34px}.hero-photo-wrap{max-width:340px;margin:0 auto}.hero-orbit{display:none}.hero h1{font-size:48px}.hero h2{font-size:22px}.hero-text{font-size:14px}.hero-meta{gap:10px;flex-direction:column}.companies{width:calc(100% - 32px);grid-template-columns:1fr;padding:20px}.company-row{justify-content:flex-start}.company{min-width:100px}.section{padding:75px 0}.container{width:calc(100% - 32px)}.section-heading h2{font-size:34px}.section-heading.split{display:block}.section-heading.split>p{margin-top:18px}.about-grid{grid-template-columns:1fr;gap:28px}.skill-grid{grid-template-columns:repeat(2,1fr)}.recognition{grid-template-columns:1fr;gap:15px}.recognition-tech{grid-column:auto}.contact{width:calc(100% - 32px);padding:32px 25px;display:block}.contact h2{font-size:34px}.contact-actions{justify-content:flex-start;margin-top:25px}.footer-links{flex-wrap:wrap}}
@media(max-width:430px){.hero h1{font-size:41px}.photo-caption{left:-6px;bottom:15px}.skill-grid{grid-template-columns:1fr 1fr}.project-card{min-height:0}.company-row{gap:15px}.client-pair{font-size:12px}}

.link-like{background:none;border:0;padding:0;font:inherit;color:var(--purple2);cursor:pointer}.link-like:hover{color:#fff}
.companies{grid-template-columns:165px 1fr}.company{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.company em{font-size:9px;font-style:normal;color:#9186a3}.company .logo{display:block;width:auto;filter:drop-shadow(0 6px 18px rgba(0,0,0,.4))}.logo-itau{height:52px}.logo-deloitte{height:30px}.logo-smu{height:40px}.logo-agora{height:32px}.logo-client{height:28px}.client-group{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:14px;padding-left:20px;border-left:1px solid #4b2a6b}.client-group em{flex-basis:100%}
.skill-grid span{display:flex;align-items:center;gap:9px}.skill-grid img{width:22px;height:22px;object-fit:contain;flex:none}
.modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(5,3,10,.78);backdrop-filter:blur(6px)}.modal-overlay[hidden]{display:none}
.modal{position:relative;width:min(100%,560px);padding:34px 30px 26px;border:1px solid #5b2f88;border-radius:18px;background:linear-gradient(180deg,#160f24,#0e0a18);box-shadow:0 30px 90px rgba(124,58,237,.3);text-align:center;animation:modal-in .2s ease-out}
@keyframes modal-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.modal-close{position:absolute;top:14px;right:16px;background:none;border:0;color:#cdc4da;font-size:18px;cursor:pointer;line-height:1}.modal-close:hover{color:#fff}
.modal h3{margin:0;font-size:24px;display:flex;align-items:center;justify-content:center;gap:10px}.modal-icon{color:var(--purple2)}
.modal-subtitle{margin:8px 0 22px;color:var(--muted);font-size:14px}
.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.modal-card{padding:20px 16px;border:1px solid #3b2457;border-radius:14px;background:#0c0916;display:flex;flex-direction:column;align-items:center;gap:6px}
.modal-card-icon{font-size:26px;color:var(--purple2)}.modal-card-icon.whatsapp{color:#25d366}
.modal-card strong{font-size:16px}.modal-card>a{color:var(--muted);font-size:13px;text-decoration:none;word-break:break-all}.modal-card>a:hover{color:#fff}
.modal-action{margin-top:10px;width:100%;padding:10px 12px;border:1px solid #5b2f88;border-radius:10px;background:transparent;color:#e7e0f0;font:inherit;font-size:13px;text-decoration:none;cursor:pointer;transition:.2s}.modal-action:hover{background:rgba(154,77,255,.16);border-color:var(--purple2)}
.modal-footer{margin:20px 0 0;color:var(--muted);font-size:13px}
@media(max-width:560px){.modal-grid{grid-template-columns:1fr}.modal h3{font-size:20px}}
.modal h3 .modal-icon{width:26px;height:26px;color:var(--purple2)}
svg.modal-card-icon{width:28px;height:28px;color:var(--purple2)}svg.modal-card-icon.whatsapp{color:#25d366}
.modal-action{display:inline-flex;align-items:center;justify-content:center;gap:8px}.modal-action svg{width:16px;height:16px;flex:none}
.modal-footer .heart{color:var(--purple2)}
.chip-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border:1px solid var(--purple);border-radius:999px;background:rgba(154,77,255,.14);color:#f0e9fa;font:inherit;font-size:13px;cursor:pointer;transition:.2s}.chip-btn:hover{background:rgba(154,77,255,.28);border-color:var(--purple2);transform:translateY(-1px)}
.companies{padding:22px 30px}.company-row{gap:26px}.logo-itau{height:62px}.logo-deloitte{height:40px}.logo-smu{height:46px}.logo-agora{height:36px}.logo-client{height:30px}
.client-group{flex-direction:column;gap:8px;padding-left:24px}.client-logos{display:flex;align-items:center;gap:20px}.client-group em{font-size:9.5px}
.company.divided{padding-left:24px;border-left:1px solid #4b2a6b}
@media(max-width:760px){.client-group,.company.divided{padding-left:0;border-left:0}}
.logo-itau{height:66px}.logo-deloitte{height:46px}.logo-smu{height:50px}.logo-agora{height:42px}.logo-client{height:34px}
.companies{grid-template-columns:150px 1fr;gap:16px;padding:20px 24px}.company-row{gap:18px}
.logo-itau{height:58px}.logo-deloitte{height:40px}.logo-smu{height:44px}.logo-agora{height:36px}.logo-client{height:30px}
.client-group{padding-left:18px}.client-logos{gap:16px}.company.divided{padding-left:18px}
