.header{z-index:100;padding:20px 0;position:absolute;top:0;left:0;right:0}.header-container{align-items:center;max-width:1280px;margin:0 auto;padding:0 40px;display:flex}.logo{align-items:center;gap:2px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:1.25rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.logo-bracket,.logo-text{color:#fff;transition:all .2s}.logo:hover .logo-bracket{color:#b0c4de}.logo:hover .logo-text{color:#fff}@media (max-width:768px){.header{padding:16px 0}.header-container{padding:0 24px}}
.footer{background:linear-gradient(#0000,#08101e99);padding:40px 0}.footer-container{text-align:center;max-width:1440px;margin:0 auto;padding:0 30px}.copyright{color:var(--base-300);font-size:.9rem}
.gradient-animation-container{background:linear-gradient(40deg, var(--gradient-background-start,#0a1628), var(--gradient-background-end,#0a1628));width:100%;height:100%;position:relative;top:0;left:0;overflow:hidden}.gradient-animation-container .hidden{display:none}.gradients-container{z-index:50;text-align:center;color:#fff;pointer-events:none;justify-content:center;align-items:center;padding:1rem;font-weight:700;display:flex;position:absolute;inset:0}.gradients-wrapper{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 0% 15%,#0000 30% 70%,#000 85% 100%);mask-image:linear-gradient(90deg,#000 0% 15%,#0000 30% 70%,#000 85% 100%)}.gradients-wrapper.blur-normal{filter:url(#blurMe)blur(12px);opacity:.6}.gradients-wrapper.blur-safari{filter:blur(12px);opacity:.6}.gradient-orb{width:var(--size,80%);height:var(--size,80%);mix-blend-mode:var(--blending-value,screen);opacity:1;top:calc(50% - var(--size,80%) / 2);left:calc(50% - var(--size,80%) / 2);transform-origin:50%;border-radius:50%;position:absolute}.gradient-first{background:radial-gradient(circle at center, rgba(var(--first-color,255, 255, 255), .8) 0, rgba(var(--first-color,255, 255, 255), 0) 50%) no-repeat}.gradient-second{background:radial-gradient(circle at center, rgba(var(--second-color,176, 196, 222), .8) 0, rgba(var(--second-color,176, 196, 222), 0) 50%) no-repeat}.gradient-third{background:radial-gradient(circle at center, rgba(var(--third-color,200, 220, 240), .8) 0, rgba(var(--third-color,200, 220, 240), 0) 50%) no-repeat}.gradient-fourth{background:radial-gradient(circle at center, rgba(var(--fourth-color,255, 255, 255), .8) 0, rgba(var(--fourth-color,255, 255, 255), 0) 50%) no-repeat}.gradient-fifth{background:radial-gradient(circle at center, rgba(var(--fifth-color,176, 196, 222), .8) 0, rgba(var(--fifth-color,176, 196, 222), 0) 50%) no-repeat}.gradient-sixth{background:radial-gradient(circle at center, rgba(var(--sixth-color,220, 240, 255), .75) 0, rgba(var(--sixth-color,220, 240, 255), 0) 50%) no-repeat}.gradient-interactive{background:radial-gradient(circle at center, rgba(var(--pointer-color,200, 220, 240), .8) 0, rgba(var(--pointer-color,200, 220, 240), 0) 50%) no-repeat;opacity:.7;width:100%;height:100%;top:-50%;left:-50%}.animate-first{animation:30s infinite moveVertical}.animate-second{animation:20s infinite reverse moveInCircle}.animate-third{animation:40s linear infinite moveInCircle}.animate-fourth{animation:40s infinite moveHorizontal}.animate-fifth{animation:20s infinite moveInCircle}.animate-sixth{animation:26s infinite reverse moveHorizontal}@keyframes moveHorizontal{0%{transform:translate(-50%)translateY(-10%)}50%{transform:translate(50%)translateY(10%)}to{transform:translate(-50%)translateY(-10%)}}@keyframes moveInCircle{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}@keyframes moveVertical{0%{transform:translateY(-50%)}50%{transform:translateY(50%)}to{transform:translateY(-50%)}}@media (max-width:1024px){.gradient-interactive{display:none}}
.aurora-bg{z-index:0;position:absolute;inset:0 0 -200px;overflow:visible}.aurora-layer{--aurora:repeating-linear-gradient(100deg, #fff9 10%, #b0c4de66 15%, #c8dcf080 20%, #fff9 25%, #b0c4de66 30%);--dark-gradient:repeating-linear-gradient(100deg, #0a1628 0%, #0a1628 7%, transparent 10%, transparent 12%, #0a1628 16%);pointer-events:none;background-image:var(--dark-gradient), var(--aurora);opacity:.2;filter:blur(14px);will-change:transform;background-position:50%,50%;background-size:300%,200%;position:absolute;inset:-10px;-webkit-mask-image:radial-gradient(at 100% 0,#000 10%,#0000 70%);mask-image:radial-gradient(at 100% 0,#000 10%,#0000 70%)}.aurora-layer:after{content:"";background-image:var(--dark-gradient), var(--aurora);mix-blend-mode:screen;background-size:200%,100%;background-attachment:fixed;animation:60s linear infinite aurora;position:absolute;inset:0}@keyframes aurora{0%{background-position:50%,50%}to{background-position:350%,350%}}
.hero{--hero-wireframe-opacity:.5;--hero-wireframe-opacity-active:.72;background:0 0;align-items:center;width:100vw;min-height:100vh;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-top:100px;display:flex;position:relative;overflow:hidden}.hero-bg-gradient{z-index:0;position:absolute;inset:0 0 -200px;overflow:hidden}.hero-bg-gradient .gradients-wrapper{overflow:hidden;-webkit-mask-image:none;mask-image:none}.hero-bg-gradient.gradient-animation-container{background:0 0;overflow:hidden}.hero-bg-gradient .gradients-wrapper.blur-normal{filter:url(#blurMe)blur(4px);opacity:.16}.hero-bg-gradient .gradients-wrapper.blur-safari{filter:blur(4px);opacity:.16}.hero-bg-gradient .gradient-orb{opacity:.22}.hero-wireframe{object-fit:contain;object-position:center;width:350%;max-width:none;height:350%;opacity:var(--hero-wireframe-opacity);z-index:-1;pointer-events:none;transition:opacity .8s;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.hero.is-in-view .hero-wireframe{opacity:var(--hero-wireframe-opacity-active)}.hero-grid{display:none}.hero-bubble{pointer-events:none;z-index:0;filter:blur(36px);background:radial-gradient(circle,#d2e6ff8c 0%,#b0c4de2e 45%,#0000 75%);border-radius:50%;animation:16s ease-in-out infinite heroBubbleDrift;position:absolute}.bubble-one{width:180px;height:180px;top:16%;left:9%}.bubble-two{width:140px;height:140px;animation-duration:20s;animation-delay:-4s;top:62%;left:78%}.bubble-three{width:110px;height:110px;animation-duration:14s;animation-delay:-7s;top:28%;left:74%}@keyframes heroBubbleDrift{0%,to{opacity:.45;transform:translate(0,0)scale(1)}50%{opacity:.7;transform:translate(16px,-14px)scale(1.08)}}.hero-container{z-index:1;justify-content:space-between;align-items:center;gap:80px;max-width:1280px;margin:0 auto;padding:0 40px;display:flex;position:relative}.hero-info{flex:1;max-width:580px;position:relative}.hero-greeting{color:#7b9ec4;align-items:center;margin-bottom:16px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:1rem;display:flex}.greeting-text{color:#b0c4de}.cursor{color:#fff;margin-left:1px;animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-name{letter-spacing:-.02em;color:#fff;white-space:nowrap;align-items:center;min-height:1.3em;margin-bottom:16px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:3rem;font-weight:600;line-height:1.2;display:flex}.hero-name .cursor{color:#fff;margin-left:2px;font-weight:400;animation:1s step-end infinite blink}.hero-role{color:#b0c4de;align-items:center;min-height:1.5em;margin-bottom:24px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:1.125rem;display:flex}.hero-role .cursor{color:#fff;margin-left:2px;animation:1s step-end infinite blink}.hero-description{color:#7b9ec4;opacity:0;margin-bottom:32px;font-size:1.125rem;line-height:1.7;transition:all .5s;transform:translateY(10px)}.hero-info.visible .hero-description{opacity:1;transform:translateY(0)}.hero-actions{opacity:0;gap:16px;margin-bottom:32px;transition:all .5s .3s;display:flex;transform:translateY(10px)}.hero-info.visible .hero-actions{opacity:1;transform:translateY(0)}.btn{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:.9375rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{color:#0a1628;background:#fff}.btn-primary:hover{background:#ffffffd9;transform:translateY(-2px)}.btn-secondary{color:#b0c4de;background:0 0;border:1px solid #ffffff4d}.btn-secondary:hover{color:#fff;border-color:#fff;transform:translateY(-2px)}.hero-socials{opacity:0;gap:12px;transition:all .5s .4s;display:flex;transform:translateY(10px)}.hero-info.visible .hero-socials{opacity:1;transform:translateY(0)}.social-link{background:#0a1628cc;border:1px solid #fff3;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:.875rem;text-decoration:none;transition:all .2s;display:flex}.social-link .bracket{color:#fff6;transition:color .2s}.social-link img{opacity:.9;background:#ffffff26;border-radius:50%;width:28px;height:28px;padding:4px;transition:all .2s}.social-link .link-text{color:#7b9ec4;transition:color .2s}.social-link:hover{background:#ffffff14;border-color:#fff}.social-link:hover .bracket{color:#fff}.social-link:hover img{opacity:1;background:#ffffff40}.social-link:hover .link-text{color:#fff}.hero-picture{flex-shrink:0;position:relative}.picture-glow{pointer-events:none;background:radial-gradient(circle,#ffffff2e 0%,#ffffff0f 40%,#0000 70%);width:400px;height:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.profile-image{object-fit:cover;z-index:1;filter:grayscale(10%);border:1px solid #fff3;border-radius:24px;width:380px;height:380px;transition:all .3s;position:relative}.profile-image:hover{filter:grayscale(0%);border-color:#fff6}@media (max-width:1024px){.hero-container{text-align:center;flex-direction:column;gap:60px}.hero-info{order:2;max-width:100%}.hero-picture{order:1}.hero-greeting,.hero-name,.hero-role,.hero-actions,.hero-socials{justify-content:center}}@media (max-width:768px){.hero{padding-top:80px}.hero-bubble{filter:blur(28px)}.bubble-one{width:120px;height:120px;left:4%}.bubble-two{width:100px;height:100px;left:72%}.bubble-three{display:none}.hero-container{gap:40px;padding:0 24px}.hero-name{font-size:1.75rem}.hero-role,.hero-description{font-size:1rem}.profile-image{border-radius:20px;width:280px;height:280px}.picture-glow{width:300px;height:300px}.hero-actions{flex-direction:column;align-items:center}.btn{width:100%;max-width:240px}}@media (max-width:480px){.hero-name{font-size:1.4rem}.profile-image{width:220px;height:220px}}
.handwritten-title{display:block;position:relative}.handwritten-title-fallback{opacity:0;display:inline-block}.handwritten-title-fallback.is-hidden{opacity:0}.handwritten-title-canvas{opacity:0;pointer-events:none;place-items:center;width:100%;display:grid;position:absolute;inset:0}.handwritten-title-canvas.is-visible{opacity:1}.handwritten-title-canvas svg{overflow:visible;width:min(100%,640px)!important;height:auto!important}@media (prefers-reduced-motion:reduce){.handwritten-title-fallback{opacity:1}.handwritten-title-canvas{display:none}}
.tech-section{background:0 0;width:100%;padding:20px 0}.tech-container{width:100%;max-width:900px;margin:0 auto;padding:0 30px}.tech-header{text-align:center;opacity:0;margin-bottom:32px;transform:translateY(16px)}.tech-label{color:#b0c4de;text-align:left;width:100%;margin-bottom:12px;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:.875rem;display:block}.tech-title{color:#fff;letter-spacing:-.02em;font-size:2.5rem;font-weight:700}.tech-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.tech-item{-webkit-backdrop-filter:blur(10px);cursor:default;opacity:0;background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;transition:all .3s;display:flex;transform:translateY(16px)scale(.98)}.tech-section.is-visible .tech-header{animation:.6s forwards fadeInUp}.tech-section.is-visible .tech-item{animation:.6s forwards fadeInUp;animation-delay:var(--delay)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.tech-item:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-4px);box-shadow:0 8px 32px #0000004d,0 0 20px #ffffff1a}.tech-icon{justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex}.tech-icon svg{width:40px;height:40px;transition:all .3s}.tech-item:hover .tech-icon svg{filter:brightness(1.2);transform:scale(1.1)}.tech-icon-fallback{color:#fff;background:#ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;font-weight:600;display:flex}.tech-name{color:#5a7fa0;text-align:center;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:.75rem;transition:color .3s}.tech-item:hover .tech-name{color:#fff}@media (max-width:700px){.tech-section{padding:40px 0}.tech-container{padding:0 24px}.tech-title{font-size:2rem}.tech-grid{grid-template-columns:repeat(3,1fr);gap:12px}.tech-item{padding:20px 12px}.tech-icon svg{width:32px;height:32px}}@media (max-width:480px){.tech-header{margin-bottom:40px}.tech-title{font-size:1.75rem}}@media (prefers-reduced-motion:reduce){.tech-header,.tech-item{opacity:1;transform:none;animation:none!important}}
.about{--about-blueprint-opacity:.5;--about-blueprint-opacity-active:.72;background:0 0;justify-content:center;align-items:center;padding:40px 0 100px;display:flex;position:relative;overflow:visible}.about-blueprint{width:350px;height:350px;opacity:var(--about-blueprint-opacity);pointer-events:none;z-index:0;background-position:50%;background-repeat:no-repeat;background-size:contain;transition:opacity .8s;position:absolute;top:50%;transform:translateY(-50%)}.about.is-in-view .about-blueprint{opacity:var(--about-blueprint-opacity-active)}.about-blueprint-left{left:-150px}.about-blueprint-right{right:-150px}.about-grid{display:none}.about-label{font-family:var(--font-mono);color:var(--base-500);letter-spacing:.05em;margin-bottom:12px;font-size:.85rem;display:block}.about-container{width:100%;max-width:900px;padding:0 30px}.about .section-title{font-size:3rem}.glow-card{border-radius:var(--radius-md);border:2px solid #ffffff4d;position:relative;overflow:visible}.glow-card:after{content:"";border-radius:calc(var(--radius-md) - 6px);pointer-events:none;border:1px solid #fff3;position:absolute;inset:6px}.dimension{pointer-events:none;z-index:3;position:absolute}.dimension-top{align-items:center;height:20px;display:flex;top:-30px;left:0;right:0}.dimension-top:before{content:"";background:#ffffff4d;height:1px;position:absolute;top:50%;left:0;right:0}.dimension-top:after{content:"";border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:8px solid #ffffff4d;width:0;height:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.dimension-left{justify-content:center;align-items:center;width:20px;display:flex;top:0;bottom:0;left:-35px}.dimension-left:before{content:"";background:#ffffff4d;width:1px;position:absolute;top:0;bottom:0;left:50%}.dimension-top .dimension-arrow-end{border-top:4px solid #0000;border-bottom:4px solid #0000;border-right:8px solid #ffffff4d;width:0;height:0;position:absolute;top:50%;right:0;transform:translateY(-50%)}.dimension-left:after{content:"";border-top:8px solid #ffffff4d;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;position:absolute;top:0;left:50%;transform:translate(-50%)}.dimension-left .dimension-arrow-end{border-bottom:8px solid #ffffff4d;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.dimension-label{font-family:var(--font-mono);color:#fff6;letter-spacing:.05em;background:var(--base-950,#0a0a0a);z-index:1;padding:0 6px;font-size:.65rem;position:relative}.dimension-top .dimension-label{margin:0 auto}.dimension-left .dimension-label{writing-mode:vertical-lr;padding:6px 0;transform:rotate(180deg)}.dimension-top .dimension-label:before,.dimension-top .dimension-label:after{content:"";background:#ffffff4d;width:1px;position:absolute;top:-4px;bottom:-4px}.dimension-top .dimension-label:before{left:-20px}.dimension-top .dimension-label:after{right:-20px}.dimension-left .dimension-label:before,.dimension-left .dimension-label:after{content:"";background:#ffffff4d;height:1px;position:absolute;left:-4px;right:-4px}.dimension-left .dimension-label:before{top:-20px}.dimension-left .dimension-label:after{bottom:-20px}.glow-card-content{border-radius:calc(var(--radius-md) - 2px);background:0 0;padding:40px 50px}.glow-card .card-corner{pointer-events:none;z-index:2;opacity:.25;width:20px;height:20px;transition:opacity .4s;position:absolute}.glow-card:hover .card-corner{opacity:.6}.glow-card .card-corner.tl{border-top:1px solid #ffffff80;border-left:1px solid #ffffff80;top:6px;left:6px}.glow-card .card-corner.tr{border-top:1px solid #ffffff80;border-right:1px solid #ffffff80;top:6px;right:6px}.glow-card .card-corner.bl{border-bottom:1px solid #ffffff80;border-left:1px solid #ffffff80;bottom:6px;left:6px}.glow-card .card-corner.br{border-bottom:1px solid #ffffff80;border-right:1px solid #ffffff80;bottom:6px;right:6px}.glow-card-content p{color:var(--base-200);margin-bottom:20px;font-weight:700;line-height:1.8}.glow-card-content p:last-child{margin-bottom:0}@media (max-width:1200px){.about{--about-blueprint-opacity:.1;--about-blueprint-opacity-active:.2}.about-blueprint{width:250px;height:250px}}@media (max-width:768px){.about-blueprint{display:none}.about{padding:20px 0}.about-container{padding:0 15px}.about .section-title{font-size:2.3rem}.dimension{display:none}.glow-card-content{padding:25px 20px}.glow-card-content p{font-size:1rem}}
.project-card-wrapper{perspective:1000px;height:100%}.project-card{border-radius:var(--radius-md);will-change:transform;height:100%;transition:transform .3s;position:relative;overflow:hidden}.project-card:before{content:"";border-radius:var(--radius-md);background:conic-gradient(from var(--card-angle,0deg), #fff9, #b0c4de4d, #ffffff1a, #b0c4de4d, #fff9);filter:blur(20px);opacity:0;z-index:-1;padding:2px;transition:opacity .4s;animation:4s linear infinite cardBorderRotate;position:absolute;inset:0}.project-card:hover:before{opacity:.25}.card-border-gradient{border-radius:var(--radius-md);background:conic-gradient(from var(--card-angle,0deg), #fffc, #b0c4de66, #ffffff1a, #b0c4de66, #fffc);-webkit-mask-composite:xor;opacity:.15;padding:2px;transition:opacity .4s;animation:4s linear infinite cardBorderRotate;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.project-card:hover .card-border-gradient{opacity:1}.project-card:hover .card-border-gradient,.project-card:hover:before{animation-duration:2s}@keyframes cardBorderRotate{0%{--card-angle:0deg}to{--card-angle:360deg}}@property --card-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.card-spotlight{pointer-events:none;opacity:0;z-index:1;border-radius:7px;transition:opacity .3s;position:absolute;inset:0}.project-card:hover .card-spotlight{opacity:1}.card-content{z-index:2;border-radius:calc(var(--radius-md) - 2px);background:#0a1628;border:1px solid #b0c4de1a;flex-direction:column;height:320px;padding:28px;transition:border-color .4s;display:flex;position:relative}.project-card:hover .card-content{border-color:#b0c4de33}.card-content:before{content:"";border-radius:calc(var(--radius-md) - 2px);pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:12px 12px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000,#0000);mask-image:radial-gradient(80% 80%,#000,#0000)}.card-header{align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.logo-container{flex-shrink:0;position:relative}.project-logo{border-radius:var(--radius-sm);object-fit:contain;background:#ffffff08;border:1px solid #b0c4de26;width:60px;height:60px;padding:6px;transition:border-color .3s}.project-card:hover .project-logo{border-color:#b0c4de66}.logo-glow{border-radius:var(--radius-sm);opacity:0;pointer-events:none;z-index:-1;background:radial-gradient(circle,#b0c4de1f,#0000 70%);transition:opacity .3s;position:absolute;inset:-4px}.project-card:hover .logo-glow{opacity:1}.card-title-section{flex:1;min-width:0}.project-title{color:var(--base-100);letter-spacing:-.02em;margin-bottom:6px;font-size:1.35rem;font-weight:600;line-height:1.3}.title-underline{background:var(--accent-secondary);opacity:.3;transform-origin:0;width:32px;height:1px;transition:all .4s cubic-bezier(.4,0,.2,1);transform:scaleX(1)}.project-card:hover .title-underline{opacity:.7;background:linear-gradient(90deg, var(--accent-secondary), transparent);width:100%}.project-description{color:var(--base-200);flex:1;margin-bottom:20px;font-size:1rem;line-height:1.6;overflow:hidden}.technologies-container{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.tech-tag{font-size:.7rem;font-weight:500;font-family:var(--font-mono);color:var(--accent-secondary);border-radius:var(--radius-sm);cursor:default;letter-spacing:.03em;text-transform:uppercase;background:#b0c4de0d;border:1px solid #b0c4de1f;align-items:center;padding:4px 10px;transition:all .2s;display:inline-flex}.tech-tag:hover{color:var(--base-100);background:#b0c4de1a;border-color:#b0c4de4d}.project-link{font-size:.8rem;font-weight:500;font-family:var(--font-mono);color:var(--accent-secondary);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.03em;background:0 0;border:1px solid #b0c4de33;align-self:flex-start;align-items:center;gap:8px;padding:8px 16px;text-decoration:none;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.project-link:before{content:"";opacity:0;background:#b0c4de26;transition:opacity .3s;position:absolute;inset:0}.project-link:hover:before{opacity:1}.project-link:hover{color:var(--base-100);border-color:#b0c4de80}.project-link span{z-index:1;position:relative}.link-arrow{z-index:1;width:16px;height:16px;transition:transform .3s;position:relative}.project-link:hover .link-arrow{transform:translate(2px,-2px)}.corner-accent{pointer-events:none;z-index:3;opacity:.25;width:20px;height:20px;transition:opacity .4s;position:absolute}.corner-accent.top-left{border-top:1px solid #ffffff80;border-left:1px solid #ffffff80;top:6px;left:6px}.corner-accent.top-right{border-top:1px solid #ffffff80;border-right:1px solid #ffffff80;top:6px;right:6px}.corner-accent.bottom-left{border-bottom:1px solid #ffffff80;border-left:1px solid #ffffff80;bottom:6px;left:6px}.corner-accent.bottom-right{border-bottom:1px solid #ffffff80;border-right:1px solid #ffffff80;bottom:6px;right:6px}.project-card:hover .corner-accent{opacity:.6}.hover-indicator{pointer-events:none;background:linear-gradient(135deg,#ffffff05 0%,#ffffff03 100%);border-radius:8px;position:absolute;inset:0}@media (max-width:1024px){.card-content{height:300px;padding:24px}.project-logo{width:52px;height:52px}.project-title{font-size:1.25rem}}@media (max-width:768px){.card-content{height:auto;min-height:260px;padding:22px}.card-header{gap:14px;margin-bottom:14px}.project-logo{border-radius:var(--radius-sm);width:48px;height:48px;padding:5px}.project-title{font-size:1.15rem}.project-description{margin-bottom:16px;font-size:1rem}.technologies-container{margin-bottom:16px}.tech-tag{padding:4px 10px;font-size:.7rem}.project-link{justify-content:center;width:100%;padding:12px 16px}}@media (max-width:480px){.card-content{min-height:240px;padding:18px}.card-header{gap:12px;margin-bottom:12px}.project-logo{width:44px;height:44px}.project-title{font-size:1.1rem}.project-description{margin-bottom:14px;font-size:1rem;line-height:1.5}.technologies-container{gap:5px;margin-bottom:14px}.tech-tag{padding:3px 8px;font-size:.65rem}.project-link{padding:10px 14px;font-size:.8rem}}@media (prefers-reduced-motion:reduce){.card-border-gradient,.project-card:before{animation:none}.project-card,.card-spotlight,.title-underline,.corner-accent,.logo-glow,.project-logo,.project-link:before,.link-arrow{transition:none}}
.projects{--projects-row-gap:32px;--projects-col-gap:40px;--projects-blueprint-opacity:.5;--projects-blueprint-opacity-active:.72;background:0 0;padding:120px 0 116px;position:relative;overflow:visible}.projects-blueprint{width:350px;height:350px;opacity:var(--projects-blueprint-opacity);pointer-events:none;z-index:0;background-position:50%;background-repeat:no-repeat;background-size:contain;transition:opacity .8s;position:absolute;top:50%;transform:translateY(-50%)}.projects.is-in-view .projects-blueprint{opacity:var(--projects-blueprint-opacity-active)}.projects-blueprint-left{left:-150px}.projects-blueprint-right{right:-150px}.projects:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);height:1px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 24px #ffffff4d,0 0 40px #ffffff26,0 0 80px #ffffff0d}.projects-grid-overlay{display:none}.projects-label{font-family:var(--font-mono);color:var(--base-500);letter-spacing:.05em;margin-bottom:12px;font-size:.85rem;display:block}.projects-container{max-width:900px;margin:0 auto;padding:0 30px}.projects-grid{row-gap:var(--projects-row-gap);column-gap:var(--projects-col-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}@media (max-width:1200px){.projects{--projects-blueprint-opacity:.1;--projects-blueprint-opacity-active:.2}.projects-blueprint{width:250px;height:250px}}@media (max-width:1024px){.projects{--projects-row-gap:28px;--projects-col-gap:32px;padding:80px 0}}@media (max-width:768px){.projects-blueprint{display:none}.projects{--projects-row-gap:24px;--projects-col-gap:24px;padding:60px 0}.projects-grid{grid-template-columns:1fr}}@media (max-width:480px){.projects{--projects-row-gap:20px;--projects-col-gap:20px;padding:50px 0}}
.contact{--contact-blueprint-opacity:.5;--contact-blueprint-opacity-active:.72;padding:80px 0;position:relative;overflow:visible}.contact-blueprint{width:350px;height:350px;opacity:var(--contact-blueprint-opacity);pointer-events:none;z-index:0;background-position:50%;background-repeat:no-repeat;background-size:contain;transition:opacity .8s;position:absolute;top:50%;transform:translateY(-50%)}.contact.is-in-view .contact-blueprint{opacity:var(--contact-blueprint-opacity-active)}.contact-blueprint-left{left:-150px}.contact-blueprint-right{right:-150px}.contact-container{text-align:center;max-width:900px;margin:0 auto;padding:0 30px}.contact-label{font-family:var(--font-mono);color:var(--base-500);text-align:left;letter-spacing:.05em;width:100%;margin-bottom:12px;font-size:.85rem;display:block}.contact-subtitle{color:var(--base-300);margin-top:12px;margin-bottom:50px;font-size:1.1rem}.contact-content{flex-direction:column;align-items:center;gap:40px;width:100%;max-width:600px;margin:0 auto;display:flex}.contact-form{flex-direction:column;gap:16px;width:100%;display:flex}.contact-form input,.contact-form textarea{width:100%;color:var(--base-100);transition:border-color var(--transition-normal);background:0 0;border:none;border-bottom:1px solid #ffffff26;padding:16px 0;font-size:1rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--base-400)}.contact-form input:-webkit-autofill{-webkit-text-fill-color:var(--base-100);transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #0000}.contact-form input:-webkit-autofill:hover{-webkit-text-fill-color:var(--base-100);transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #0000}.contact-form input:-webkit-autofill:focus{-webkit-text-fill-color:var(--base-100);transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #0000}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--base-100);outline:none}.contact-form input.error,.contact-form textarea.error{border-bottom-color:#ff6b6b}.contact-form textarea{resize:none;min-height:100px}.submit-btn{color:var(--base-100);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal);background:0 0;border:1px solid #ffffff4d;align-self:flex-start;margin-top:8px;padding:12px 32px;font-size:.95rem;font-weight:500}.submit-btn:hover{background:var(--base-100);color:var(--base-900);border-color:var(--base-100)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.success-animation{flex-direction:column;align-items:center;padding:20px 0;display:flex}.success-message{color:var(--base-100);text-align:center;font-size:1.1rem;font-family:var(--font-mono);white-space:nowrap;border-right:2px solid var(--base-100);text-shadow:0 0 #0000;width:0;animation:.8s steps(13,end) .2s forwards typing,.6s step-end .2s 6 blink,.4s ease-out 1s forwards glow;display:inline-block;overflow:hidden}@keyframes typing{to{width:13ch}}@keyframes blink{50%{border-color:#0000}}@keyframes glow{to{text-shadow:0 0 12px #fff6,0 0 30px #ffffff26;border-color:#0000}}.contact-links{color:var(--base-400);align-items:center;gap:16px;font-size:.95rem;display:flex}.contact-links a{color:var(--base-300);transition:color var(--transition-normal)}.contact-links a:hover{color:var(--base-100)}.contact-links .divider{color:var(--base-500)}@media (max-width:1200px){.contact{--contact-blueprint-opacity:.1;--contact-blueprint-opacity-active:.2}.contact-blueprint{width:250px;height:250px}}@media (max-width:768px){.contact-blueprint{display:none}.contact{padding:80px 0}.contact-container{padding:0 24px}.contact-subtitle{margin-bottom:40px}.submit-btn{text-align:center;width:100%}.contact-form input,.contact-form textarea{font-size:1rem}}@media (max-width:480px){.contact{padding:60px 0}.contact-container{padding:0 20px}.contact-subtitle{margin-bottom:32px;font-size:1rem}.contact-content{gap:32px}.contact-links{flex-direction:column;gap:8px}.contact-links .divider{display:none}}
.back-to-top{cursor:pointer;z-index:50;opacity:0;visibility:hidden;width:60px;height:60px;transition:all var(--transition-normal);background:0 0;border:2px solid #fff9;border-radius:50%;justify-content:center;align-items:center;animation:4s ease-in-out infinite float;display:flex;position:fixed;bottom:30px;right:30px;transform:translateY(20px);box-shadow:0 0 15px #ffffff26}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:#ffffff1a;border-color:#fff;transform:translateY(-5px)scale(1.1);box-shadow:0 0 25px #ffffff4d}.back-to-top img{filter:brightness(0)invert();width:30px;height:30px}@media (max-width:768px){.back-to-top{width:50px;height:50px;bottom:20px;right:20px}.back-to-top img{width:24px;height:24px}}
.beams-container{background:#0a1628;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.beams-container.min-h-screen{min-height:750px}@media (max-width:768px){.beams-container.min-h-screen{min-height:auto}.beam,.beams-collision-line{display:none}}.beams-content{z-index:20;width:100%;position:relative}.beam{background:linear-gradient(#0000,#b0c4de80,#ffffffb3);border-radius:9999px;width:2px;position:absolute;top:0;left:0;box-shadow:0 0 20px #fff6,0 0 40px #fff3,0 0 60px #ffffff1a}.beams-collision-line{background:linear-gradient(90deg,#0000,#fff6,#0000);width:100%;height:1px;position:absolute;bottom:0;transform:translateY(50%);box-shadow:0 0 24px #ffffff4d,0 0 40px #ffffff26,0 0 80px #ffffff0d}.explosion{z-index:50;pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.particle{background:#fff;border-radius:50%;width:4px;height:4px;display:block;position:absolute;box-shadow:0 0 10px #fffc,0 0 20px #fff9}.explosion-ring{background:radial-gradient(circle,#ffffff80 0%,#0000 70%);border-radius:50%;width:16px;height:16px;display:block;position:absolute;transform:translate(-50%,-50%)}.beams-title{text-align:center;color:#fff;letter-spacing:-.02em;font-size:3rem;font-weight:700;line-height:1.2}.gradient-text-wrapper{display:inline-block;position:relative}.gradient-text-shadow{background:linear-gradient(90deg,#fff,#b0c4de,#fff);-webkit-text-fill-color:transparent;filter:blur();opacity:.5;-webkit-background-clip:text;background-clip:text;position:absolute;top:2px;left:0}.gradient-text{background:linear-gradient(90deg,#fff,#b0c4de,#fff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;position:relative}@media (min-width:768px){.beams-title{font-size:4rem}}@media (min-width:1024px){.beams-title{font-size:5rem}}
.tracing-beam{width:100%;max-width:1280px;margin:0 auto;position:relative}.tracing-beam-line{z-index:10;pointer-events:none;position:absolute;top:12px;bottom:0;left:-20px}.tracing-beam-dot{border:1px solid #fff3;border-radius:9999px;justify-content:center;align-items:center;width:16px;height:16px;margin-left:27px;display:flex}.tracing-beam-dot-inner{background-color:#fff;border:1px solid #fff;border-radius:9999px;width:8px;height:8px}.tracing-beam-svg{margin-left:16px;display:block}.tracing-beam-content{position:relative}@media (max-width:768px){.tracing-beam-line{display:none}}@media (min-width:769px) and (max-width:1024px){.tracing-beam-line{left:-4px}}
