@import"https://fonts.googleapis.com/css2?family=Libre+Bodoni:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:Inter,Helvetica,Arial,sans-serif;background:#0a0a0a;color:#fff;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#333}:root{--black: #0a0a0a;--white: #fff;--orange: #ff4500;--gray: #888;--gray-dark:#222;--serif: "Libre Bodoni", "Times New Roman", serif;--sans: "Inter", Helvetica, Arial, sans-serif;--container: 1400px;--pad: clamp(24px, 4vw, 64px);--radius: 24px}.container{max-width:var(--container);margin:0 auto;padding:0 var(--pad)}.display{font-family:var(--serif);font-size:clamp(56px,10vw,140px);font-weight:700;line-height:.9;letter-spacing:-.02em}.h1{font-family:var(--serif);font-size:clamp(32px,4vw,56px);font-weight:600;line-height:1.1}.h2{font-family:var(--serif);font-size:clamp(24px,3vw,40px);font-weight:500}.body{font-size:15px;line-height:1.7;color:#ffffffb3}.body-large{font-size:17px;line-height:1.75;color:#fffc;max-width:480px}.caption{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--gray)}.label{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.1em}.tag{font-size:12px;padding:4px 12px;border-radius:8px;font-weight:500;border:1px solid rgba(255,255,255,.2);color:#fffc;background:#ffffff0d}.btn-orange{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;font-size:13px;font-weight:600;background:var(--orange);color:#fff;transition:background .2s}.btn-orange:hover{background:#e63e00}.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.2);transition:all .2s}.btn-ghost:hover{border-color:#fff;background:#fff;color:#000}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;height:72px;display:flex;align-items:center;background:transparent;transition:background .3s}.navbar--scrolled{background:#0a0a0ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--container);margin:0 auto;padding:0 var(--pad);width:100%;height:72px}.navbar__logo{font-family:var(--serif);font-size:28px;font-weight:700;letter-spacing:-.02em}.navbar__logo:hover{color:var(--orange)}.navbar__links{display:flex;gap:32px;position:absolute;left:50%;transform:translate(-50%)}.navbar__link{font-size:12px;font-weight:500;color:#fff9;transition:color .2s}.navbar__link:hover,.navbar__link.active{color:#fff}.navbar__cta{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:10px 24px;color:#fff;transition:color .2s}.navbar__cta:hover{color:var(--orange)}.navbar__burger{display:none;flex-direction:column;gap:5px;padding:8px}.navbar__actions{display:none}.navbar__burger span{display:block;width:24px;height:2px;background:#fff;transition:all .25s}.navbar__mobile{position:fixed;top:0;right:0;bottom:0;width:320px;background:var(--black);z-index:200;padding:80px 40px;display:flex;flex-direction:column;gap:24px;border-left:1px solid rgba(255,255,255,.1)}.navbar__mobile .navbar__link{font-size:18px;color:#fff9}.navbar__mobile .navbar__link:hover{color:#fff}.navbar__mobile-close{position:absolute;top:20px;right:20px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#0a0a0af2,#0a0a0ab3,#0a0a0a66),url(/fundo.jpg) center center / cover no-repeat;z-index:0}.hero__content{position:relative;z-index:1;width:100%;padding-top:80px}.hero__text{max-width:800px}.hero__subtitle{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.25em;color:var(--orange);margin-bottom:20px}.hero__name{margin-bottom:28px}.hero__desc{margin-bottom:36px;font-size:16px;line-height:1.75;color:#ffffffb3;max-width:440px}.hero__desc strong{color:#fff;font-weight:600}.hero__actions{display:flex;gap:12px;margin-bottom:48px;flex-wrap:wrap}.btn-ghost-hero{display:inline-flex;align-items:center;padding:14px 24px;font-size:13px;font-weight:600;color:#ffffffb3;border:1px solid rgba(255,255,255,.15);transition:all .2s}.btn-ghost-hero:hover{border-color:#fff6;color:#fff}.hero__stats-row{display:flex;gap:40px;padding-top:32px;border-top:1px solid rgba(255,255,255,.08)}.hero__stat-inline{display:flex;flex-direction:column;gap:4px}.hero__stat-num{font-family:var(--serif);font-size:32px;font-weight:700;color:#fff;line-height:1}.hero__stat-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--gray)}.hero__scroll{position:absolute;bottom:40px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:#ffffff4d;font-size:10px;letter-spacing:.15em;text-transform:uppercase;z-index:1}.hero__scroll-icon{width:24px;height:24px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--orange);margin-bottom:24px;display:flex;align-items:center;gap:16px}.section-label:before{content:"";width:24px;height:2px;background:var(--orange)}.about{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-text{display:flex;flex-direction:column;gap:24px}.about-p{font-size:17px;line-height:1.8;color:#ffffffb3}.about-p strong{color:#fff;font-weight:600}.about-p em{color:var(--orange);font-style:normal;font-weight:500}.about-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;padding:40px;background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.stat__number{font-family:var(--serif);font-size:48px;font-weight:700;color:#fff;line-height:1;margin-bottom:8px}.stat__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--gray)}.experience{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.experience-list{display:flex;flex-direction:column}.experience-item{display:grid;grid-template-columns:160px 1fr;gap:48px;padding:48px 0;border-bottom:1px solid rgba(255,255,255,.06)}.experience-item:first-child{border-top:1px solid rgba(255,255,255,.06)}.experience-period{font-size:12px;font-weight:500;color:var(--gray);padding-top:4px}.experience-content{display:flex;flex-direction:column;gap:12px}.experience-title{font-family:var(--serif);font-size:28px;font-weight:600}.experience-company{font-size:14px;color:var(--orange);font-weight:500}.experience-details{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:8px}.experience-details li{font-size:15px;line-height:1.7;color:#fff9;padding-left:16px;position:relative}.experience-details li:before{content:"—";position:absolute;left:0;color:#ffffff4d}.skills{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06)}.skill-group{padding:40px 32px;background:var(--black)}.skill-group__name{font-family:var(--serif);font-size:22px;font-weight:600;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.skill-list{list-style:none;display:flex;flex-direction:column;gap:10px}.skill-list li{font-size:14px;color:#fff9;padding-left:16px;position:relative}.skill-list li:before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;background:var(--orange)}.projects{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.projects-scroll{display:flex;gap:2px;overflow-x:auto;padding-bottom:24px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.projects-scroll::-webkit-scrollbar{display:none}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.project-card.github-card{min-width:unset;display:flex;flex-direction:column;cursor:pointer}.project-card.github-card:hover{background:#ffffff0f;transform:translateY(-4px)}.project-card{min-width:380px;padding:40px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);scroll-snap-align:start;display:flex;flex-direction:column;gap:20px;transition:background .2s}.project-card:hover{background:#ffffff0f}.project-card__header{display:flex;justify-content:space-between;align-items:baseline}.project-card__title{font-family:var(--serif);font-size:24px;font-weight:600}.project-card__status{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--gray)}.project-card__status.done{color:#ffffff80}.project-card__status.wip{color:var(--orange)}.project-card__desc{font-size:14px;line-height:1.7;color:#fff9;flex:1}.project-card__tags{display:flex;flex-wrap:wrap;gap:8px}.project-card__tag{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:4px 10px;background:#ffffff0f}.project-card__link{font-size:12px;font-weight:600;color:var(--orange)}.project-card__link:hover{text-decoration:underline}.repo-card{display:flex;flex-direction:column;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;transition:all .3s ease}.repo-card:hover{background:#ffffff0a;border-color:#ffffff1f;transform:translateY(-6px);box-shadow:0 16px 48px #0000004d}.repo-card__banner{position:relative;display:flex;justify-content:space-between;align-items:flex-start;padding:24px;min-height:80px}.repo-card__icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;font-family:var(--sans);letter-spacing:.05em}.repo-card__banner .repo-card__arrow{opacity:0;transform:translate(-4px,4px);transition:all .3s ease;color:#ffffff80}.repo-card:hover .repo-card__banner .repo-card__arrow{opacity:1;transform:translate(0)}.repo-card__body{padding:0 24px 24px;display:flex;flex-direction:column;gap:12px}.repo-card__name{font-family:var(--serif);font-size:22px;font-weight:600;color:#fff;line-height:1.2}.repo-card__desc{font-size:14px;line-height:1.6;color:#ffffff8c;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.repo-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;margin-top:auto;border-top:1px solid rgba(255,255,255,.06)}.repo-card__lang-badge{font-size:13px;font-weight:500;color:#ffffffb3}.repo-card__stats{display:flex;gap:12px}.repo-card__stats-stat{display:flex;align-items:center;gap:4px;font-size:12px;color:#ffffff73}.repo-card__stats-stat svg{opacity:.7}.repo-card__date{font-size:11px;color:var(--gray);opacity:.7}.projects-section{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.repo-list{display:flex;flex-direction:column}.repo-item{display:grid;grid-template-columns:100px 1fr 40px;gap:32px;align-items:baseline;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.06)}.repo-item:first-child{border-top:1px solid rgba(255,255,255,.06)}.repo-item__date{font-size:12px;color:var(--gray)}.repo-item__name{font-family:var(--serif);font-size:24px;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:12px}.repo-item__lang{font-family:var(--sans);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:3px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.15);color:var(--orange)}.repo-item__desc{font-size:14px;color:#fff9;line-height:1.6}.repo-item__arrow{color:#fff3;font-size:20px;transition:all .2s;text-align:center}.repo-item:hover .repo-item__arrow{color:var(--orange);transform:translate(4px)}.blog-section{padding:120px 0;border-top:1px solid rgba(255,255,255,.08)}.blog-list{display:flex;flex-direction:column}.blog-item{display:grid;grid-template-columns:100px 1fr 40px;gap:32px;align-items:baseline;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.06)}.blog-item:first-child{border-top:1px solid rgba(255,255,255,.06)}.blog-item__date{font-size:12px;color:var(--gray)}.blog-item__title{font-family:var(--serif);font-size:24px;font-weight:600;margin-bottom:8px}.blog-item__excerpt{font-size:14px;color:#fff9;line-height:1.6}.blog-item__arrow{color:#fff3;font-size:20px;transition:all .2s;text-align:center}.blog-item:hover .blog-item__arrow{color:var(--orange);transform:translate(4px)}.contact-section{padding:120px 0;border-top:1px solid rgba(255,255,255,.08);text-align:center}.contact-email{display:inline-block;font-family:var(--serif);font-size:clamp(28px,4vw,48px);font-weight:600;color:#fff;margin:32px 0 48px;transition:color .2s}.contact-email:hover{color:var(--orange)}.contact-email:after{content:"";display:block;width:60px;height:3px;background:var(--orange);margin:12px auto 0}.contact-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.contact-link{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:12px 24px;border:1px solid rgba(255,255,255,.15);transition:all .2s}.contact-link:hover{border-color:var(--orange);color:var(--orange)}.footer{padding:40px 0;border-top:1px solid rgba(255,255,255,.08)}.footer__inner{display:flex;justify-content:space-between;align-items:center}.footer__copy{font-size:12px;color:var(--gray)}.footer__links{display:flex;gap:24px}.footer__link{font-size:12px;color:var(--gray);transition:color .2s}.footer__link:hover{color:#fff}.page-hero{padding:140px 0 80px;border-bottom:1px solid rgba(255,255,255,.08)}.blog-post{padding:80px 0;max-width:720px;margin:0 auto}.blog-post__back{font-size:12px;font-weight:600;color:var(--gray);margin-bottom:48px;display:inline-block}.blog-post__back:hover{color:var(--orange)}.blog-post__title{font-family:var(--serif);font-size:clamp(32px,4vw,48px);font-weight:700;line-height:1.1;margin-bottom:24px}.blog-post__meta{display:flex;gap:24px;font-size:13px;color:var(--gray);padding:20px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:40px}.prose-blog h1{font-family:var(--serif);font-size:2rem;font-weight:700;margin:2.5rem 0 1rem}.prose-blog h2{font-family:var(--serif);font-size:1.5rem;font-weight:600;margin:2rem 0 1rem;color:var(--orange)}.prose-blog h3{font-family:var(--serif);font-size:1.25rem;font-weight:600;margin:1.5rem 0 .75rem}.prose-blog p{color:#ffffffb3;margin-bottom:1.5rem;line-height:1.85;font-size:16px}.prose-blog ul,.prose-blog ol{color:#ffffffb3;margin:1.5rem 0;padding-left:1.5rem}.prose-blog li{margin:.5rem 0;line-height:1.7}.prose-blog a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}.prose-blog strong{color:#fff;font-weight:600}.prose-blog code{font-family:SF Mono,Fira Code,monospace;background:#ffffff0f;padding:2px 6px;font-size:.88em}.prose-blog pre{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:24px;overflow-x:auto;margin:2rem 0}.prose-blog pre code{background:none;padding:0}.prose-blog blockquote{border-left:3px solid var(--orange);padding-left:1.5rem;font-style:italic;color:#fff9;margin:2rem 0}.prose-blog img{max-width:100%;border-radius:16px;margin:24px 0;box-shadow:0 4px 24px #0006}@media(max-width:1024px){.hero__content{grid-template-columns:1fr;gap:48px}.hero__visual{display:none}.hero__stats-row{justify-content:flex-start}.about-grid{grid-template-columns:1fr;gap:48px}.skills-grid{grid-template-columns:repeat(2,1fr)}.experience-item{grid-template-columns:1fr;gap:16px}}@media(max-width:768px){.navbar__links{display:none}.navbar__burger{display:flex}.hero{min-height:auto;padding-top:120px;padding-bottom:80px}.skills-grid{grid-template-columns:1fr}.project-card{min-width:300px}.projects-grid{grid-template-columns:1fr}.blog-item{grid-template-columns:1fr;gap:8px}.blog-item__arrow{display:none}.footer__inner{flex-direction:column;gap:16px;text-align:center}.contact-links{flex-direction:column;align-items:center}}
