@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,300;0,400;0,600;0,700;0,800;0,900;1,700&family=Instrument+Serif:ital@0;1&family=DM+Sans:wght@300;400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--red:#e8391d;--black:#0a0a0a;--off:#111;--white:#f5f0e8;--dim:#141414;--border:#f5f0e814}html{scroll-behavior:smooth}body{background:var(--black);color:var(--white);cursor:none;font-family:DM Sans,sans-serif;overflow-x:hidden}nav{z-index:100;justify-content:space-between;align-items:center;padding:1.5rem 3rem;transition:background .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;display:flex;position:absolute;top:0;left:0;right:0}.nav-logo{letter-spacing:.1em;text-transform:uppercase;color:var(--white);font-family:Barlow Condensed,sans-serif;font-size:1.4rem;font-weight:900;text-decoration:none}.nav-logo span{color:var(--red)}.nav-links{gap:2.5rem;list-style:none;display:flex}.nav-links a{color:#f5f0e87a;letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--red)}#hero{flex-direction:column;justify-content:flex-end;min-height:100vh;padding:0 3rem 4rem;display:flex;position:relative;overflow:hidden}.hero-bg{background:radial-gradient(at 70% 40%,#e8391d12 0%,#0000 60%),radial-gradient(at 20% 80%,#e8391d0a 0%,#0000 50%);position:absolute;inset:0}.hero-grain{opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px;position:absolute;inset:0}.hero-big{color:#f5f0e806;-webkit-user-select:none;user-select:none;letter-spacing:-.02em;font-family:Barlow Condensed,sans-serif;font-size:clamp(180px,26vw,360px);font-weight:900;line-height:.85;position:absolute;top:50%;right:-1rem;transform:translateY(-50%)}.hero-tag{background:var(--red);color:var(--white);letter-spacing:.2em;text-transform:uppercase;opacity:0;align-items:center;gap:.6rem;width:fit-content;margin-bottom:2rem;padding:.4rem 1rem;font-size:.7rem;animation:.8s 2s forwards fadeUp;display:inline-flex}.hero-tag:before{content:"";background:var(--white);border-radius:50%;width:6px;height:6px}.hero-title{letter-spacing:-.02em;text-transform:uppercase;opacity:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(70px,12vw,160px);font-weight:900;line-height:.88;animation:.9s .4s forwards fadeUp}.hero-title em{color:var(--red);font-family:Instrument Serif,serif;font-size:.95em;font-style:italic;font-weight:400}.hero-sub{opacity:0;justify-content:space-between;align-items:center;margin-top:2.5rem;animation:.9s .7s forwards fadeUp;display:flex}.hero-desc{color:#f5f0e87a;max-width:440px;font-size:.95rem;font-weight:300;line-height:1.7}.hero-cta{letter-spacing:.08em;text-transform:uppercase;color:var(--white);white-space:nowrap;border:1px solid #f5f0e833;align-items:center;gap:1rem;padding:1rem 2rem;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s;display:flex}.hero-cta:hover{background:var(--red);border-color:var(--red)}.dev-portal-icon{color:#f5f0e866;cursor:pointer;z-index:101;background:#0a0a0a;border:none;border-radius:4px;outline:none;justify-content:center;align-items:center;width:42px;height:42px;transition:all .3s;display:inline-flex;position:fixed;top:6rem;right:3rem}.dev-border-svg{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.dev-border-rect{fill:none;stroke:#f5f0e81f;stroke-width:1.5px;rx:4;ry:4;transition:stroke .3s}.dev-border-flow{fill:none;stroke:#00e85e;stroke-width:1.5px;rx:4;ry:4;stroke-dasharray:40 120;stroke-dashoffset:160px;opacity:.6;animation:3s linear infinite devDashFlow}@keyframes devDashFlow{to{stroke-dashoffset:0}}@keyframes devSymbolBreathe{0%,to{filter:drop-shadow(0 0 1px #00ff660d);color:#f5f0e859}50%{filter:drop-shadow(0 0 5px #00ff6673);color:#0f69}}.dev-portal-icon .dev-icon-code{transition:filter .3s,color .3s;animation:4s ease-in-out infinite devSymbolBreathe}.dev-portal-icon:hover{color:#0f6;box-shadow:0 0 15px #00ff6640}.dev-portal-icon:hover .dev-icon-code{filter:drop-shadow(0 0 4px #0f6c);color:#0f6;animation:none}.dev-portal-icon:hover .dev-border-rect{stroke:#0f63;filter:drop-shadow(0 0 2px #00ff664d)}.dev-portal-icon:hover .dev-border-flow{opacity:1;stroke-width:2px;filter:drop-shadow(0 0 3px #0f69)}.dev-portal-icon.active{color:#0f6;box-shadow:0 0 25px #00ff6673}.dev-portal-icon.active .dev-icon-code{filter:drop-shadow(0 0 6px #00ff66e6);color:#0f6;animation:none}.dev-portal-icon.active .dev-border-rect{stroke:#0f6;filter:drop-shadow(0 0 4px #00ff6680)}.dev-portal-icon.active .dev-border-flow{display:none}@media (width<=768px){.dev-portal-icon{width:36px;height:36px;top:5rem;right:1.5rem}}#about{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:6rem;padding:8rem 3rem;display:grid}.about-label{letter-spacing:.25em;text-transform:uppercase;color:var(--red);margin-bottom:1.5rem;font-size:.7rem}.about-heading{text-transform:uppercase;margin-bottom:2rem;font-family:Barlow Condensed,sans-serif;font-size:clamp(42px,5vw,72px);font-weight:900;line-height:.92}.about-heading em{color:#f5f0e861;font-family:Instrument Serif,serif;font-size:.9em;font-style:italic;font-weight:400}.about-text{color:#f5f0e87a;margin-bottom:2.5rem;font-size:.95rem;font-weight:300;line-height:1.8}.about-stats{border:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.stat{border-right:1px solid var(--border);padding:1.5rem;transition:background .3s}.stat:last-child{border-right:none}.stat-label{letter-spacing:.1em;text-transform:uppercase;color:#f5f0e84d;font-size:.62rem}.about-visual{position:relative}.photo-frame{aspect-ratio:4/5;background:0 0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.photo-frame:after{content:"";border:1px solid var(--red);pointer-events:none;z-index:2;width:calc(100% - 20px);height:calc(100% - 20px);position:absolute;bottom:-12px;right:-12px}.photo-frame img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.photo-label-tag{background:var(--red);letter-spacing:.1em;text-transform:uppercase;z-index:3;padding:.3rem .8rem;font-family:Barlow Condensed,sans-serif;font-size:.75rem;font-weight:700;position:absolute;top:1.5rem;left:1.5rem}.about-deco{color:#f5f0e808;white-space:nowrap;-webkit-user-select:none;user-select:none;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:5rem;font-weight:900;position:absolute;bottom:1rem;left:-3rem}.section-header{justify-content:space-between;align-items:flex-end;margin-bottom:4rem;display:flex}.section-label{letter-spacing:.25em;text-transform:uppercase;color:var(--red);margin-bottom:.8rem;font-size:.7rem}.section-title{text-transform:uppercase;letter-spacing:-.02em;font-family:Barlow Condensed,sans-serif;font-size:clamp(50px,7vw,100px);font-weight:900;line-height:.88}#work{border-top:1px solid var(--border);padding:8rem 3rem}.section-count{color:#f5f0e833;letter-spacing:.1em;padding-bottom:.5rem;font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:700}.projects-list{flex-direction:column;display:flex}.project-item{border-top:1px solid var(--border);color:var(--white);grid-template-columns:80px 2fr 1fr 1fr 60px;align-items:center;gap:2rem;padding:2.5rem 0;text-decoration:none;display:grid;position:relative;overflow:hidden}.project-item:before{content:"";background:#e8391d0a;width:0;transition:width .4s;position:absolute;top:0;bottom:0;left:0}.project-item:hover:before{width:100%}.project-item:last-child{border-bottom:1px solid var(--border)}.project-num{color:#f5f0e82e;letter-spacing:.1em;font-family:Barlow Condensed,sans-serif;font-size:.9rem;font-weight:700;transition:color .3s}.project-item:hover .project-num{color:var(--red)}.project-name{text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:clamp(28px,4vw,52px);font-weight:800;line-height:1}.project-sub{color:#f5f0e854;max-width:420px;margin-top:.4rem;font-size:.78rem;line-height:1.5}.project-type{letter-spacing:.15em;text-transform:uppercase;color:#f5f0e866;background:#f5f0e80d;border:1px solid #f5f0e817;width:fit-content;padding:.3rem .9rem;font-size:.62rem;display:inline-flex}.project-type.red{color:var(--red);background:#e8391d1f;border-color:#e8391d38}.project-result strong{color:var(--white);font-family:Barlow Condensed,sans-serif;font-size:1.3rem;font-weight:700;display:block}.project-result span{color:#f5f0e84d;font-size:.72rem}.project-arrow{opacity:.18;color:var(--red);justify-self:end;transition:all .3s}.project-item:hover .project-arrow{opacity:1;transform:translate(4px)}#tools{border-top:1px solid var(--border);background:var(--dim);padding:8rem 3rem}.tools-categories{flex-direction:column;gap:3rem;margin-top:4rem;display:flex}.tool-cat-label{letter-spacing:.25em;text-transform:uppercase;color:#f5f0e842;border-bottom:1px solid var(--border);margin-bottom:1rem;padding-bottom:.8rem;font-size:.65rem}.tools-row{flex-wrap:wrap;gap:.6rem;display:flex}#cv{border-top:1px solid var(--border);padding:8rem 3rem}.cv-layout{grid-template-columns:320px 1fr;align-items:start;gap:6rem;display:grid}.cv-sticky{position:sticky;top:100px}.cv-sticky-title{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:1.5rem;font-family:Barlow Condensed,sans-serif;font-size:clamp(42px,5vw,68px);font-weight:900;line-height:.88}.cv-sticky-title em{color:var(--red);font-family:Instrument Serif,serif;font-style:italic;font-weight:400}.cv-sticky-text{color:#f5f0e866;margin-bottom:2rem;font-size:.85rem;font-weight:300;line-height:1.7}.cv-dl{letter-spacing:.1em;text-transform:uppercase;color:var(--white);border:1px solid #f5f0e829;align-items:center;gap:.8rem;padding:.9rem 1.8rem;font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.cv-dl:hover{background:var(--red);border-color:var(--red)}.accordion{flex-direction:column;gap:0;display:flex}.acc-item{border-bottom:1px solid var(--border);overflow:hidden}.acc-trigger{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:1.8rem 0;display:flex}.acc-trigger-left{align-items:center;gap:1.5rem;display:flex}.acc-index{color:#f5f0e833;letter-spacing:.1em;flex-shrink:0;width:28px;font-family:Barlow Condensed,sans-serif;font-size:.8rem;font-weight:700;transition:color .3s}.acc-trigger:hover .acc-index{color:var(--red)}.acc-role{text-transform:uppercase;letter-spacing:-.01em;color:var(--white);font-family:Barlow Condensed,sans-serif;font-size:clamp(20px,2.5vw,30px);font-weight:800;line-height:1;transition:color .3s}.acc-trigger:hover .acc-role{color:#f5f0e8e6}.acc-company{color:var(--red);letter-spacing:.04em;margin-top:.25rem;font-size:.78rem;font-weight:400}.acc-meta{flex-shrink:0;align-items:center;gap:1.2rem;display:flex}.acc-tag{letter-spacing:.13em;text-transform:uppercase;color:#f5f0e861;border:1px solid #f5f0e814;padding:.25rem .8rem;font-size:.6rem;display:inline-flex}.acc-tag.red{color:var(--red);background:#e8391d12;border-color:#e8391d33}.acc-date{color:#f5f0e840;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-family:Barlow Condensed,sans-serif;font-size:.78rem;font-weight:600}.acc-arrow{color:var(--red);opacity:.5;flex-shrink:0;transition:transform .4s cubic-bezier(.4,0,.2,1)}.acc-item.open .acc-arrow{opacity:1;transform:rotate(45deg)}.acc-item.open .acc-index{color:var(--red)}.acc-body{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1);display:grid}.acc-item.open .acc-body{grid-template-rows:1fr}.acc-inner{overflow:hidden}.acc-content{padding:0 0 2rem calc(28px + 1.5rem)}.acc-highlight{border-left:2px solid var(--red);align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding-left:1rem;display:inline-flex}.acc-highlight-num{color:var(--red);font-family:Barlow Condensed,sans-serif;font-size:2rem;font-weight:900;line-height:1}.acc-bullets{flex-direction:column;gap:0;list-style:none;display:flex}.acc-bullets li{color:#f5f0e873;border-bottom:1px solid #f5f0e80a;gap:.8rem;padding:.28rem 0;font-size:.82rem;line-height:1.6;display:flex}.acc-skills-row{flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;display:flex}.acc-skill-chip{letter-spacing:.05em;color:#f5f0e866;background:#f5f0e80a;border:1px solid #f5f0e812;padding:.3rem .8rem;font-size:.68rem;transition:all .3s}#journey{border-top:1px solid var(--border);padding:8rem 3rem;position:relative;overflow:hidden}.journey-bg-word{color:#f5f0e805;text-transform:uppercase;-webkit-user-select:none;user-select:none;white-space:nowrap;letter-spacing:-.02em;pointer-events:none;z-index:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(100px,18vw,240px);font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.journey-header{justify-content:space-between;align-items:flex-end;margin-bottom:5rem;display:flex;position:relative}.journey-years{color:#f5f0e833;letter-spacing:.15em;font-family:Barlow Condensed,sans-serif;font-size:.85rem;font-weight:700}.timeline-wrap{padding-left:2px;position:relative}.timeline-spine{background:var(--border);width:1px;position:absolute;top:0;bottom:0;left:0;overflow:hidden}.timeline-spine-fill{background:linear-gradient(to bottom, var(--red), #e8391d4d);width:1px;height:0%;transition:height .1s linear;position:absolute;top:0;left:0}.journey-entry{opacity:0;padding:0 0 4rem 3.5rem;transition:opacity .7s,transform .7s;position:relative;transform:translate(-20px)}.journey-entry.visible{opacity:1;transform:translate(0)}.journey-dot{background:var(--black);z-index:2;border:1px solid #f5f0e833;border-radius:50%;width:11px;height:11px;transition:background .4s,border-color .4s,transform .4s;position:absolute;top:.55rem;left:-5px}.journey-entry.visible .journey-dot{background:var(--red);border-color:var(--red);box-shadow:0 0 0 4px #e8391d1f}.journey-card{border:1px solid var(--border);background:#f5f0e805;grid-template-columns:1fr auto;align-items:start;gap:1.5rem;padding:1.6rem 2rem;transition:border-color .4s,background .4s;display:grid;position:relative;overflow:hidden}.journey-entry:hover .journey-card{background:#e8391d08;border-color:#e8391d33}.journey-role{text-transform:uppercase;letter-spacing:-.01em;margin-bottom:.4rem;font-family:Barlow Condensed,sans-serif;font-size:clamp(18px,2.2vw,26px);font-weight:800;line-height:1}.journey-company{color:var(--red);letter-spacing:.04em;margin-bottom:.6rem;font-size:.8rem;font-weight:400}.journey-date{letter-spacing:.1em;text-transform:uppercase;color:#f5f0e838;white-space:nowrap;margin-bottom:.5rem;font-family:Barlow Condensed,sans-serif;font-size:.82rem;font-weight:700}.journey-badge{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;padding:.22rem .8rem;font-size:.58rem;display:inline-flex}.journey-badge.now{color:var(--red);background:#e8391d26;border:1px solid #e8391d4d}.journey-badge.past{color:#f5f0e84d;background:#f5f0e80a;border:1px solid #f5f0e814}.journey-edu-divider{align-items:center;gap:1.5rem;padding:2.5rem 0 3rem 3.5rem;display:flex;position:relative}.edu-line{background:#f5f0e80d;flex:1;height:1px}.edu-word{letter-spacing:.25em;text-transform:uppercase;color:#f5f0e833;font-family:Barlow Condensed,sans-serif;font-size:.65rem;font-weight:700}.journey-edu-cards{background:var(--border);grid-template-columns:1fr 1fr;gap:1px;margin-left:3.5rem;display:grid}.edu-card{background:var(--black);opacity:0;padding:1.5rem 2rem;transition:opacity .7s,transform .7s;transform:translateY(16px)}.edu-card.visible{opacity:1;transform:translateY(0)}.edu-degree{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem;font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:700}.edu-year{color:var(--red);letter-spacing:.08em;font-family:Barlow Condensed,sans-serif;font-size:.78rem;font-weight:700}#skills{border-top:1px solid var(--border);background:var(--dim);padding:8rem 3rem}.skills-grid{background:var(--border);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:4rem;display:grid}.skill-card{background:#0f0f0f;padding:2.5rem 2rem;transition:background .3s;position:relative;overflow:hidden}.skill-card:before{content:"";background:var(--red);width:0;height:2px;transition:width .4s;position:absolute;bottom:0;left:0}.skill-card:hover:before{width:100%}.skill-card:hover{background:#e8391d0a}.skill-icon{color:var(--red);opacity:.4;margin-bottom:1.5rem;font-family:Barlow Condensed,sans-serif;font-size:3rem;font-weight:900;line-height:1}.skill-name{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;font-weight:700}.skill-desc{color:#f5f0e857;font-size:.76rem;font-weight:300;line-height:1.6}#contact{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:6rem;padding:10rem 3rem;display:grid}.contact-title{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:2rem;font-family:Barlow Condensed,sans-serif;font-size:clamp(60px,9vw,120px);font-weight:900;line-height:.88}.contact-title em{color:var(--red);font-family:Instrument Serif,serif;font-style:italic;font-weight:400}.contact-text{color:#f5f0e866;margin-bottom:3rem;font-size:.92rem;font-weight:300;line-height:1.7}.contact-link{color:var(--white);border:1px solid var(--border);align-items:center;gap:1.5rem;padding:1.2rem 1.5rem;text-decoration:none;transition:all .3s;display:flex;position:relative;overflow:hidden}.contact-link:before{content:"";background:var(--red);transform-origin:bottom;width:3px;transition:transform .3s;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.contact-link:hover:before{transform:scaleY(1)}.contact-link-icon{color:var(--red);text-align:center;width:28px;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;font-weight:900}.contact-link-label{letter-spacing:.15em;text-transform:uppercase;color:#f5f0e83d;margin-bottom:.1rem;font-size:.6rem;display:block}.contact-link-text{color:#f5f0e894;font-size:.88rem}.contact-visual{justify-content:center;align-items:center;display:flex;position:relative}.contact-big{color:#0000;-webkit-text-stroke:1px #f5f0e80a;text-transform:uppercase;letter-spacing:-.04em;-webkit-user-select:none;user-select:none;font-family:Barlow Condensed,sans-serif;font-size:20vw;font-weight:900;line-height:.8}.contact-badge{background:var(--red);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:150px;height:150px;animation:14s linear infinite rotateBadge;display:flex;position:absolute}.contact-badge span{text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:1.3rem;font-weight:900;line-height:1.1;animation:14s linear infinite reverse rotateBadge}.contact-badge small{letter-spacing:.12em;text-transform:uppercase;opacity:.7;margin-top:.25rem;font-size:.58rem;animation:14s linear infinite reverse rotateBadge}footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:2rem 3rem;display:flex}.footer-logo{letter-spacing:.1em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;font-weight:900}.footer-logo span{color:var(--red)}.footer-copy{color:#f5f0e82e;letter-spacing:.08em;font-size:.7rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollDown{0%{opacity:0;top:20%}30%{opacity:1}70%{opacity:1}to{opacity:0;top:80%}}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes rotateBadge{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(40px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=1100px){.cv-layout{grid-template-columns:1fr}.cv-sticky{position:static}.skills-grid{grid-template-columns:repeat(2,1fr)}.journey-edu-cards{grid-template-columns:1fr}}@media (width<=900px){#about,#contact{grid-template-columns:1fr;gap:3rem}.nav-links{display:none}#hero,#about,#tools,#cv,#journey,#skills,#contact{padding-left:1.5rem;padding-right:1.5rem}.acc-meta{display:none}.acc-content{padding-left:0}.journey-card{grid-template-columns:1fr}}.cursor{background:var(--red);pointer-events:none;z-index:9999;border-radius:50%;width:12px;height:12px;transition:width .3s,height .3s;position:fixed;transform:translate(-50%,-50%)}.cursor-ring{pointer-events:none;z-index:9998;border:1px solid #e8391d66;border-radius:50%;width:36px;height:36px;transition:width .3s,height .3s;position:fixed;transform:translate(-50%,-50%)}.cursor.hovered{width:20px;height:20px}.cursor-ring.hovered{width:58px;height:58px}.scroll-line{background:linear-gradient(#0000,#f5f0e81a 30% 70%,#0000);width:1px;position:absolute;top:0;bottom:0;right:3rem}.scroll-dot{background:var(--red);border-radius:50%;width:9px;height:9px;animation:2.5s ease-in-out infinite scrollDown;position:absolute;right:calc(3rem - 4px)}@media (width<=900px){.scroll-line,.scroll-dot{right:1.5rem}}.btn{letter-spacing:.08em;text-transform:uppercase;color:var(--white);white-space:nowrap;background:0 0;border:1px solid #f5f0e833;align-items:center;gap:1rem;padding:1rem 2rem;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.btn:hover{background:var(--red);border-color:var(--red)}.btn.cv-dl{letter-spacing:.1em;border:1px solid #f5f0e829;gap:.8rem;padding:.9rem 1.8rem;font-size:1rem}.marquee-section{background:var(--red);padding:1.2rem 0;overflow:hidden}.marquee-track{white-space:nowrap;animation:22s linear infinite marqueeScroll;display:flex}.marquee-item{letter-spacing:.15em;text-transform:uppercase;color:#f5f0e8e6;align-items:center;gap:2rem;padding:0 2.5rem;font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:700;display:inline-flex}.marquee-dot{background:#f5f0e899;border-radius:50%;flex-shrink:0;width:6px;height:6px}.stat-num{color:var(--red);margin-bottom:.3rem;font-family:Barlow Condensed,sans-serif;font-size:2.5rem;font-weight:900;line-height:1}.tool-pill{letter-spacing:.03em;color:#f5f0e885;background:#f5f0e808;border:1px solid #f5f0e812;align-items:center;gap:.7rem;padding:.65rem 1.1rem;font-size:.78rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.tool-pill:before{content:"";background:#e8391d1a;width:0;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.tool-pill:hover:before{width:100%}.tool-pill:hover{color:var(--white);border-color:#e8391d42}.tool-dot{z-index:1;background:#f5f0e826;border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:background .3s;position:relative}.tool-pill:hover .tool-dot{background:var(--red)}.contact-link{color:var(--white);border:1px solid var(--border);background:0 0;align-items:center;gap:1.5rem;padding:1.2rem 1.5rem;text-decoration:none;transition:all .3s;display:flex;position:relative;overflow:hidden}.contact-link:hover{border-color:#e8391d42;padding-left:2rem}.contact-link-icon{color:var(--red);font-family:Barlow Condensed,sans-serif;font-size:1.8rem;font-weight:900;line-height:1}.contact-link-label{letter-spacing:.1em;text-transform:uppercase;color:#f5f0e84d;font-size:.62rem}.contact-link-text{color:var(--white);margin-top:.2rem;font-size:1rem;font-weight:500}.dev-page{--dev-green:#00e85e;--dev-green-dim:#00e85e14;--dev-green-border:#00e85e26;--dev-bg:#060606;--dev-surface:#0c0c0c;--dev-surface-2:#111;--dev-text:#e8e8e8;--dev-text-dim:#e8e8e873;--dev-border:#ffffff0f;background:var(--dev-bg);color:var(--dev-text);cursor:auto;opacity:0;min-height:100vh;font-family:DM Sans,sans-serif;transition:opacity .5s,transform .5s;transform:translateY(12px)}.dev-page.visible{opacity:1;transform:translateY(0)}.dev-nav{border-bottom:1px solid var(--dev-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#060606eb;justify-content:space-between;align-items:center;padding:1.2rem 3rem;display:flex;position:sticky;top:0}.dev-nav-back{border:1px solid var(--dev-border);color:var(--dev-text-dim);cursor:pointer;letter-spacing:.02em;background:0 0;align-items:center;gap:.6rem;padding:.55rem 1.2rem;font-family:inherit;font-size:.82rem;transition:all .3s;display:inline-flex}.dev-nav-back:hover{color:var(--dev-text);border-color:#fff3}.dev-nav-github{color:var(--dev-text-dim);border:1px solid var(--dev-border);align-items:center;gap:.5rem;padding:.55rem 1.2rem;font-size:.82rem;text-decoration:none;transition:all .3s;display:inline-flex}.dev-nav-github:hover{color:var(--dev-green);border-color:var(--dev-green-border);background:var(--dev-green-dim)}.dev-hero-grid{grid-template-columns:1.2fr .8fr;align-items:center;gap:4rem;padding:6rem 3rem 5rem;display:grid}@media (width<=1024px){.dev-hero-grid{grid-template-columns:1fr;gap:3rem}}.dev-hero-label{letter-spacing:.25em;text-transform:uppercase;color:var(--dev-green);align-items:center;gap:.6rem;margin-bottom:1.2rem;font-size:.7rem;display:flex}.dev-hero-label:before{content:"";background:var(--dev-green);border-radius:50%;width:6px;height:6px}.dev-hero-title{letter-spacing:-.02em;text-transform:uppercase;margin:0 0 2rem;font-family:Barlow Condensed,sans-serif;font-size:clamp(60px,10vw,120px);font-weight:900;line-height:.88}.dev-hero-title em{color:var(--dev-green);font-family:Instrument Serif,serif;font-style:italic;font-weight:400}.dev-hero-desc{color:var(--dev-text-dim);max-width:560px;margin:0;font-size:1rem;font-weight:300;line-height:1.8}.github-chart-container{background:var(--dev-surface);border:1px solid var(--dev-border);border-radius:4px;flex-direction:column;gap:1.2rem;padding:2rem;display:flex}.github-chart-header{justify-content:space-between;align-items:center;font-family:Barlow Condensed,sans-serif;display:flex}.github-chart-title{letter-spacing:.08em;color:var(--dev-text-dim);text-transform:uppercase;font-size:.85rem;font-weight:700}.github-live-dot{background-color:var(--dev-green);width:7px;height:7px;box-shadow:0 0 8px var(--dev-green);border-radius:50%;animation:2s ease-in-out infinite githubLivePulse;display:inline-block}@keyframes githubLivePulse{0%,to{opacity:.6;transform:scale(.9)}50%{opacity:1;box-shadow:0 0 12px var(--dev-green);transform:scale(1.25)}}.github-total-commits{color:var(--dev-green);font-size:.85rem;font-weight:700}.github-grid-scroll{padding-bottom:.5rem;overflow-x:auto}.github-grid-scroll::-webkit-scrollbar{height:4px}.github-grid-scroll::-webkit-scrollbar-track{background:0 0}.github-grid-scroll::-webkit-scrollbar-thumb{background:var(--dev-border);border-radius:2px}.github-grid-weeks{grid-auto-flow:column;gap:4px;display:grid}.github-grid-week{grid-template-rows:repeat(7,10px);gap:4px;display:grid}.github-grid-day{background:#ffffff0d;border-radius:2px;width:10px;height:10px;transition:background .25s}.github-grid-day[data-level="1"]{background:#0e4429}.github-grid-day[data-level="2"]{background:#006d32}.github-grid-day[data-level="3"]{background:#26a641}.github-grid-day[data-level="4"]{background:#39d353}.github-chart-footer{color:var(--dev-text-dim);justify-content:flex-end;align-items:center;gap:.5rem;font-size:.7rem;display:flex}.github-legend{gap:3px;display:flex}.dev-stats{border-top:1px solid var(--dev-border);gap:3rem;margin-top:3.5rem;padding-top:2.5rem;display:flex}.dev-stat-value{color:var(--dev-green);font-family:Barlow Condensed,sans-serif;font-size:2.2rem;font-weight:900;line-height:1}.dev-stat-label{color:var(--dev-text-dim);text-transform:uppercase;letter-spacing:.08em;margin-top:.4rem;font-size:.72rem}.dev-section{border-top:1px solid var(--dev-border);padding:5rem 3rem}.recruiter-card{position:relative;overflow:hidden}.recruiter-card:before{content:"";background:var(--dev-green);width:0;height:2px;transition:width .3s;position:absolute;top:0;left:0}.recruiter-card:hover:before{width:100%}.recruiter-card:hover{border-color:var(--dev-green-border)!important;background:#00e85e05!important}.dev-section-header{margin-bottom:3rem}.dev-section-label{letter-spacing:.25em;text-transform:uppercase;color:var(--dev-green);margin-bottom:.8rem;font-size:.7rem;display:block}.dev-section-title{text-transform:uppercase;letter-spacing:-.02em;margin:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(42px,6vw,80px);font-weight:900;line-height:.9}.dev-skills-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2rem;display:grid}.dev-skill-category{background:var(--dev-surface);border:1px solid var(--dev-border);padding:2rem 1.8rem;transition:border-color .3s}.dev-skill-category:hover{border-color:var(--dev-green-border)}.dev-skill-cat-title{text-transform:uppercase;letter-spacing:.1em;color:var(--dev-green);margin:0 0 1.2rem;font-family:Barlow Condensed,sans-serif;font-size:.9rem;font-weight:700}.dev-skill-pills{flex-wrap:wrap;gap:.5rem;display:flex}.dev-skill-pill{background:var(--dev-green-dim);border:1px solid var(--dev-green-border);color:#e8e8e8b3;letter-spacing:.02em;padding:.35rem .8rem;font-family:JetBrains Mono,monospace;font-size:.68rem;font-weight:400}.dev-projects-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=768px){.dev-projects-grid{grid-template-columns:1fr}}.dev-project-card{background:var(--dev-surface);border:1px solid var(--dev-border);color:var(--dev-text);flex-direction:column;gap:1rem;padding:2.5rem 2rem;text-decoration:none;transition:all .3s;display:flex;position:relative;overflow:hidden}.dev-project-card:before{content:"";background:var(--dev-green);width:0;height:2px;transition:width .4s;position:absolute;top:0;left:0}.dev-project-card:hover:before{width:100%}.dev-project-card:hover{border-color:var(--dev-green-border);background:#00e85e05}.dev-project-num{color:#00e85e59;letter-spacing:.1em;font-family:Barlow Condensed,sans-serif;font-size:.8rem;font-weight:700}.dev-project-name{text-transform:uppercase;letter-spacing:-.01em;margin:0;font-family:Barlow Condensed,sans-serif;font-size:1.6rem;font-weight:800;line-height:1}.dev-project-desc{color:var(--dev-text-dim);flex-grow:1;margin:0;font-size:.82rem;font-weight:300;line-height:1.7}.dev-project-tech{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.dev-tech-tag{border:1px solid var(--dev-green-border);color:var(--dev-green);letter-spacing:.04em;padding:.25rem .65rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.dev-project-link-arrow{color:#00e85e40;align-self:flex-end;transition:all .3s}.dev-project-card:hover .dev-project-link-arrow{color:var(--dev-green);transform:translate(4px)}.dev-github-cta{border-top:1px solid var(--dev-border);padding:5rem 3rem}.dev-github-cta-inner{background:var(--dev-surface);border:1px solid var(--dev-green-border);text-align:center;padding:4rem 3rem;position:relative;overflow:hidden}.dev-github-cta-inner:before{content:"";pointer-events:none;background:radial-gradient(at 50% 0,#00e85e0f 0%,#0000 70%);position:absolute;inset:0}.dev-github-title{text-transform:uppercase;letter-spacing:-.01em;margin:0 0 1rem;font-family:Barlow Condensed,sans-serif;font-size:2.2rem;font-weight:900;position:relative}.dev-github-text{color:var(--dev-text-dim);margin:0 0 2.5rem;font-size:.9rem;font-weight:300;position:relative}.dev-github-btn{letter-spacing:.06em;text-transform:uppercase;color:var(--dev-bg);background:var(--dev-green);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.8rem;padding:1rem 2.5rem;font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.dev-github-btn:hover{background:#0f6;transform:translateY(-1px);box-shadow:0 0 20px #00e85e4d}.dev-cta-buttons{z-index:5;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:2.5rem;display:flex;position:relative}.dev-linkedin-btn{letter-spacing:.06em;text-transform:uppercase;color:var(--dev-text);border:1px solid var(--dev-green-border);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.8rem;padding:1rem 2.5rem;font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.dev-linkedin-btn:hover{color:var(--dev-green);background:var(--dev-green-dim);border-color:var(--dev-green);transform:translateY(-1px);box-shadow:0 0 20px #00e85e26}.dev-email-contact{z-index:5;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;font-family:JetBrains Mono,monospace;font-size:.9rem;display:flex;position:relative}.dev-email-label{color:var(--dev-text-dim)}.dev-email-link{color:var(--dev-green);border-bottom:1px dashed var(--dev-green-border);padding-bottom:2px;text-decoration:none;transition:color .3s,border-color .3s}.dev-email-link:hover{color:#0f6;border-bottom-color:#0f6}.dev-footer{border-top:1px solid var(--dev-border);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:2rem 3rem;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;font-weight:900;display:flex}.dev-footer-accent{color:var(--dev-green)}.dev-footer-copy{color:#e8e8e82e;letter-spacing:.08em;text-transform:none;font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:300}@media (width<=768px){.dev-nav{padding:1rem 1.5rem}.dev-hero{padding:4rem 1.5rem 3rem}.dev-section,.dev-github-cta,.dev-github-cta-inner{padding:3rem 1.5rem}.dev-footer{padding:1.5rem}.dev-stats{flex-wrap:wrap;gap:1.5rem}.dev-skills-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.dev-skills-grid{grid-template-columns:1fr}.dev-stats{gap:1rem}}
