:root{--navy: #0a192f;--light-navy: #112240;--lightest-navy: #233554;--dark-slate: #495670;--slate: #8892b0;--light-slate: #a8b2d8;--lightest-slate: #ccd6f6;--white: #e6f1ff;--green: #64ffda;--green-tint: rgba(100, 255, 218, .1);--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;--fz-xxs: 12px;--fz-xs: 13px;--fz-sm: 14px;--fz-md: 16px;--fz-lg: 18px;--fz-xl: 20px;--fz-xxl: 22px;--fz-heading: 32px;--border-radius: 4px;--nav-height: 70px;--transition: all .25s cubic-bezier(.645, .045, .355, 1);--easing: cubic-bezier(.645, .045, .355, 1);--navy-shadow: rgba(2, 12, 27, .7);--shadow-sm: 0 10px 30px -15px var(--navy-shadow);--shadow-md: 0 20px 30px -15px var(--navy-shadow);--shadow-lg: 0 25px 50px -12px var(--navy-shadow)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--navy);color:var(--slate);font-size:var(--fz-lg);line-height:1.3;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}ul{list-style:none}a{text-decoration:none;color:var(--green);transition:var(--transition)}a:hover{color:var(--green)}img{max-width:100%;display:block}.section-container{max-width:900px;margin:0 auto;padding:0 25px}.numbered-heading{display:flex;align-items:center;gap:12px;margin-bottom:40px;white-space:nowrap}.numbered-heading:after{content:"";display:block;height:1px;width:100%;background-color:var(--lightest-navy)}.numbered-heading .section-num{font-family:var(--font-mono);font-size:var(--fz-xl);font-weight:400;color:var(--green);margin-right:4px}.numbered-heading h2{font-size:clamp(26px,5vw,var(--fz-heading));font-weight:600;color:var(--lightest-slate);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:1.25rem 1.75rem;border-radius:var(--border-radius);font-family:var(--font-mono);font-size:var(--fz-sm);font-weight:400;cursor:pointer;transition:var(--transition);line-height:1}.btn-primary{background:transparent;color:var(--green);border:1px solid var(--green)}.btn-primary:hover{background:var(--green-tint);color:var(--green);box-shadow:3px 3px 0 0 var(--green);transform:translate(-3px,-3px)}.btn-secondary{background:transparent;color:var(--light-slate);border:1px solid var(--dark-slate)}.btn-secondary:hover{background:var(--lightest-navy);color:var(--lightest-slate);border-color:var(--light-slate)}.mono{font-family:var(--font-mono);font-size:var(--fz-sm);color:var(--green)}#root{display:flex;flex-direction:column;min-height:100vh}.navbar{position:fixed;top:0;left:0;width:100%;height:var(--nav-height);z-index:100;display:flex;align-items:center;padding:0 50px;background:transparent;transition:var(--transition);filter:none}.navbar--scrolled{background:#0a192fd9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 30px -10px var(--navy-shadow)}.navbar-inner{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto}.navbar-logo svg{width:42px;height:42px;transition:var(--transition)}.navbar-logo:hover svg{filter:drop-shadow(0 0 8px var(--green))}.navbar-right{display:flex;align-items:center;gap:32px}.navbar-links{display:flex;align-items:center;gap:8px;list-style:none;counter-reset:item}.navbar-link{display:flex;align-items:center;gap:4px;padding:10px;font-family:var(--font-mono);font-size:var(--fz-xs);color:var(--lightest-slate);transition:var(--transition)}.navbar-link:hover{color:var(--green)}.link-num{color:var(--green);font-size:var(--fz-xxs);margin-right:2px}.resume-btn{font-family:var(--font-mono);font-size:var(--fz-xs);color:var(--green);border:1px solid var(--green);border-radius:var(--border-radius);padding:10px 16px;line-height:1;transition:var(--transition)}.resume-btn:hover{background:var(--green-tint)}.lang-switch{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:var(--fz-xs)}.lang-divider{color:var(--dark-slate)}.lang-btn{background:none;border:none;font-family:var(--font-mono);font-size:var(--fz-xs);color:var(--slate);cursor:pointer;padding:4px;transition:var(--transition)}.lang-btn:hover,.lang-btn.active{color:var(--green)}@media(max-width:768px){.navbar{padding:0 25px}.navbar-links,.resume-btn{display:none}}.hero-section{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:100vh;padding:0 150px;max-width:1000px;margin:0 auto}.hero-inner{max-width:700px}.hero-greeting,.hero-name,.hero-role,.hero-description,.hero-actions{opacity:0;animation:fadeInUp .5s var(--easing) forwards}.hero-greeting{animation-delay:.1s}.hero-name{animation-delay:.2s}.hero-role{animation-delay:.3s}.hero-description{animation-delay:.4s}.hero-actions{animation-delay:.5s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-greeting{margin-bottom:20px;color:var(--green)}.hero-name{font-size:clamp(40px,8vw,80px);font-weight:600;color:var(--lightest-slate);letter-spacing:-1px;line-height:1.1;margin:0 0 10px}.hero-role{font-size:clamp(28px,5vw,60px);font-weight:600;color:var(--slate);letter-spacing:-.5px;line-height:1.1;margin:0 0 20px}.hero-description{max-width:540px;color:var(--slate);font-size:var(--fz-lg);line-height:1.7;margin-bottom:50px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}@media(max-width:1080px){.hero-section{padding:0 100px}}@media(max-width:768px){.hero-section{padding:0 50px;min-height:100svh}}@media(max-width:480px){.hero-section{padding:0 25px}.hero-actions{flex-direction:column;width:100%;max-width:280px}}.skills-section{padding:100px 0}.skills-layout{display:grid;grid-template-columns:3fr 2fr;gap:50px;align-items:start}.skills-bio{display:flex;flex-direction:column;gap:15px}.skills-bio p{color:var(--slate);font-size:var(--fz-lg);line-height:1.7}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.skills-col{display:flex;flex-direction:column;gap:8px}.skills-col-label{font-family:var(--font-mono);font-size:var(--fz-xs);color:var(--green);font-weight:400;margin-bottom:4px;letter-spacing:.05em;text-transform:uppercase}.skills-list{display:flex;flex-direction:column;gap:4px;margin-bottom:24px}.skills-item{display:flex;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:var(--fz-sm);color:var(--light-slate);line-height:1.5}.skills-arrow{color:var(--green);font-size:10px;flex-shrink:0;margin-top:2px}.skills-responsibilities{list-style:none;margin-top:20px;display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:1px solid var(--lightest-navy)}.skills-responsibilities li{display:grid;grid-template-columns:14px 1fr;gap:10px;align-items:baseline;font-size:var(--fz-md);color:var(--slate);line-height:1.65}.skills-responsibilities .skills-arrow{padding-top:4px}@media(max-width:900px){.skills-layout{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.skills-grid{grid-template-columns:1fr 1fr}}.projects-section{padding:100px 0}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;position:relative}.project-card{display:flex;flex-direction:column;background-color:var(--light-navy);padding:2rem 1.75rem;border-radius:4px;transition:var(--transition);cursor:default;position:relative}.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);background-color:var(--lightest-navy)}.project-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.project-folder svg{width:40px;height:40px;color:var(--green)}.project-links{display:flex;align-items:center;gap:12px}.project-links a{color:var(--light-slate);transition:var(--transition);display:flex}.project-links a:hover{color:var(--green);transform:translateY(-3px)}.project-links svg{width:20px;height:20px}.project-title{font-size:var(--fz-xxl);font-weight:600;color:var(--lightest-slate);margin-bottom:12px;line-height:1.3}.project-title a{color:var(--lightest-slate)}.project-title a:hover{color:var(--green)}.project-description{font-size:var(--fz-sm);color:var(--light-slate);line-height:1.65;flex-grow:1;margin-bottom:20px}.project-tech{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;list-style:none}.project-tech li{font-family:var(--font-mono);font-size:var(--fz-xxs);color:var(--slate)}@media(max-width:900px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.projects-grid{grid-template-columns:1fr}}.certs-section{padding:100px 0}.certs-subtitle{color:var(--slate);font-size:var(--fz-lg);line-height:1.7;max-width:600px;margin-bottom:50px}.featured-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:40px}.featured-card{background:var(--light-navy);border-top:2px solid var(--c, var(--green));border-radius:var(--border-radius);padding:28px 24px;transition:var(--transition)}.featured-card:hover{background:var(--lightest-navy);transform:translateY(-5px);box-shadow:var(--shadow-sm)}.feat-issuer{font-family:var(--font-mono);font-size:var(--fz-xxs);letter-spacing:.1em;text-transform:uppercase;color:var(--c, var(--green));margin-bottom:10px}.feat-title{font-size:var(--fz-xl);font-weight:600;color:var(--lightest-slate);margin-bottom:12px;line-height:1.3}.feat-meta{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:var(--fz-xxs);color:var(--slate)}.feat-note{color:var(--dark-slate)}.all-certs{max-height:0;overflow:hidden;transition:max-height .6s var(--easing)}.all-certs.is-open{max-height:5000px}.all-certs-inner{padding:10px 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px 60px}.cert-cat-label{font-family:var(--font-mono);font-size:var(--fz-xxs);letter-spacing:.1em;text-transform:uppercase;color:var(--green);font-weight:400;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--lightest-navy)}.cert-list{display:flex;flex-direction:column;gap:0}.cert-row{display:grid;grid-template-columns:14px 1fr auto auto;align-items:baseline;gap:8px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04);transition:var(--transition)}.cert-row:hover .cert-title{color:var(--green)}.cert-arrow{color:var(--green);font-size:10px;flex-shrink:0}.cert-title{font-size:var(--fz-sm);color:var(--light-slate);line-height:1.4;transition:var(--transition)}.cert-issuer,.cert-date{font-family:var(--font-mono);font-size:var(--fz-xxs);color:var(--dark-slate);white-space:nowrap}.expand-toggle{display:block;margin:20px auto 0;background:none;border:1px solid var(--green);color:var(--green);font-family:var(--font-mono);font-size:var(--fz-sm);padding:14px 28px;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.expand-toggle:hover{background:var(--green-tint);box-shadow:3px 3px 0 0 var(--green);transform:translate(-3px,-3px)}@media(max-width:900px){.featured-row{grid-template-columns:1fr}.all-certs-inner{grid-template-columns:1fr;gap:30px}}.contact-section{padding:100px 0 200px;text-align:center}.contact-section .section-container{display:flex;flex-direction:column;align-items:center}.contact-section .numbered-heading{justify-content:center;width:100%;max-width:500px}.contact-body{max-width:600px}.contact-title{font-size:clamp(40px,5vw,60px);font-weight:600;color:var(--lightest-slate);letter-spacing:-1px;margin-bottom:20px;line-height:1.1}.contact-description{color:var(--slate);font-size:var(--fz-lg);line-height:1.7;margin-bottom:50px;max-width:480px;margin-left:auto;margin-right:auto}.contact-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.contact-section:after{content:"Desenvolvido por Andrey Felipe · andreyfelipe.com";display:block;font-family:var(--font-mono);font-size:var(--fz-xxs);color:var(--dark-slate);margin-top:80px;letter-spacing:.05em}.sidebar{display:flex;flex-direction:column;align-items:center;gap:0;position:fixed;bottom:0;z-index:10;width:40px}.sidebar:after{content:"";display:block;width:1px;height:90px;background-color:var(--light-slate);margin:0 auto}.sidebar-left{left:40px}.sidebar-right{right:40px}.sidebar-links{display:flex;flex-direction:column;align-items:center;gap:20px;list-style:none;margin-bottom:20px}.sidebar-links a{color:var(--light-slate);transition:var(--transition);display:flex;padding:6px}.sidebar-links a:hover{color:var(--green);transform:translateY(-4px)}.sidebar-links svg{width:20px;height:20px}.sidebar-email{font-family:var(--font-mono);font-size:var(--fz-xxs);letter-spacing:.15em;color:var(--light-slate);writing-mode:vertical-rl;margin-bottom:20px;transition:var(--transition)}.sidebar-email:hover{color:var(--green);transform:translateY(-4px)}@media(max-width:1080px){.sidebar{display:none}}
