.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:3rem;display:grid}.project-card-shell{opacity:0;perspective:1000px;transform:translateY(32px)}.project-card-shell.is-visible{animation:.7s cubic-bezier(.22,1,.36,1) both project-card-rise}.project-card{--project-accent:#e8858a;--project-accent-border:#a84c55;background:radial-gradient(circle at var(--spotlight-x,50%) var(--spotlight-y,50%), color-mix(in srgb, var(--project-accent) 16%, transparent), transparent 55%), #0e0e18f2;border-radius:var(--card-radius);color:#f4f4fb;cursor:pointer;min-width:0;height:100%;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transform-style:preserve-3d;will-change:transform;border:1px solid #ffffff14;flex-direction:column;transition:border-color .3s,box-shadow .4s,transform .55s cubic-bezier(.22,1,.36,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d}.project-card:before{background:radial-gradient(circle at var(--spotlight-x,50%) var(--spotlight-y,50%), color-mix(in srgb, var(--project-accent) 34%, transparent), transparent 55%);content:"";mix-blend-mode:screen;opacity:0;pointer-events:none;z-index:3;transition:opacity .3s;position:absolute;inset:0}.project-card:hover{border-color:color-mix(in srgb, var(--project-accent-border) 70%, #ffffff29);box-shadow:0 28px 70px #0009, 0 0 0 1px color-mix(in srgb, var(--project-accent-border) 32%, transparent), 0 0 60px color-mix(in srgb, var(--project-accent) 12%, transparent);transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(1.02)}.project-card:hover:before{opacity:.18}.project-cover{height:200px;transform-style:preserve-3d;position:relative;overflow:hidden}.project-cover-svg{width:100%;height:100%;display:block}.project-terrain-triangle{opacity:.88;transition:opacity .6s}.project-card:hover .project-terrain-triangle{opacity:1}.project-cover-horizon{background:linear-gradient(to right, transparent, var(--project-accent), transparent);opacity:.2;height:1px;transition:opacity .5s;position:absolute;inset:38% 0 auto}.project-card:hover .project-cover-horizon{opacity:.55}.project-cover-atmosphere{background:radial-gradient(ellipse 70% 60% at 50% 50%, color-mix(in srgb, var(--project-accent) 40%, transparent), transparent 70%);mix-blend-mode:screen;opacity:.08;transition:opacity .5s;position:absolute;inset:0}.project-card:hover .project-cover-atmosphere{opacity:.3}.project-cover-fade{background:linear-gradient(#0000,#0e0e18f7);height:60px;position:absolute;inset:auto 0 0}.project-cover-title{background:linear-gradient(#0000 55%,#0e0e18e0);align-items:flex-end;padding:1rem 1.25rem;display:flex;position:absolute;inset:0}.project-cover-title h3{color:#fff;overflow-wrap:anywhere;text-shadow:0 2px 12px #000000b3;margin:0;font-family:Playfair Display,Georgia,serif;font-size:1.38rem;font-weight:400;line-height:1.2;transform:translateZ(20px)}.project-map-code{color:var(--project-accent);letter-spacing:.14em;opacity:.72;background:#00000073;border-radius:.55rem;padding:.18rem .44rem;font-family:DM Mono,Onest,monospace;font-size:.58rem;position:absolute;top:.75rem;right:.9rem}.project-card-body{z-index:4;flex-direction:column;flex:1;padding:1rem 1.25rem 1.35rem;display:flex;position:relative}.project-meta-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.project-location{color:var(--project-accent);font-size:.78rem;font-weight:500}.project-date{color:#ffffff57;letter-spacing:.05em;font-family:DM Mono,Onest,monospace;font-size:.68rem}.project-meta-dot{background:#fff3;border-radius:50%;width:3px;height:3px}.project-card-body p{color:#ffffff8a;flex:1;margin:0 0 1rem;font-size:.82rem;font-weight:300;line-height:1.7;transition:color .3s}.project-card:hover .project-card-body p{color:#ffffffb8}.project-tags{flex-wrap:wrap;gap:.32rem;margin-bottom:1rem;display:flex}.project-tags span{background:color-mix(in srgb, var(--project-accent) 13%, transparent);border:1px solid color-mix(in srgb, var(--project-accent) 30%, transparent);color:var(--project-accent);letter-spacing:.05em;opacity:.7;border-radius:999px;padding:.12rem .5rem;font-family:DM Mono,Onest,monospace;font-size:.64rem;line-height:1.5;transition:opacity .3s,transform .35s cubic-bezier(.22,1,.36,1);transform:translateY(3px)}.project-card:hover .project-tags span{opacity:1;transform:translateY(0)}.project-link{color:#ffffff75;letter-spacing:.08em;border:1px solid #ffffff1a;border-radius:.85rem;justify-content:center;align-items:center;gap:.55rem;padding:.68rem;font-family:DM Mono,Onest,monospace;font-size:.76rem;text-decoration:none;transition:background-color .28s,border-color .28s,color .28s;display:inline-flex}.project-card:hover .project-link,.project-link:focus-visible{background:color-mix(in srgb, var(--project-accent) 16%, transparent);border-color:color-mix(in srgb, var(--project-accent) 48%, #ffffff1a);color:#fff;outline:0}@keyframes project-card-rise{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@media (max-width:991px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.projects-grid{grid-template-columns:1fr;padding-left:.5rem;padding-right:.5rem}.project-cover{height:190px}}
#bottom-frame{background-image:url(../media/city-line.0_z8_zjkwmhmc.png);background-size:contain;width:100%;height:7em}
.timeline-section{margin:7rem auto 0}.timeline-rail{flex-direction:column;gap:0;max-width:1120px;margin:2.4rem auto 0;display:flex;position:relative}.timeline-rail:before{content:"";transform-origin:top;background:linear-gradient(#0000,#f49f2259 7%,#76daff57 50%,#b593e152 93%,#0000);width:1px;animation:1.4s cubic-bezier(.22,1,.36,1) both timeline-draw-line;position:absolute;top:.4rem;bottom:.4rem;left:50%;transform:translate(-50%)}.timeline-row{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);align-items:start;min-height:0;display:grid;position:relative}.timeline-row+.timeline-row{margin-top:-7.2rem}.timeline-slot{min-width:0;display:flex}.timeline-slot-left{justify-content:flex-end;padding-right:1.2rem}.timeline-slot-right{justify-content:flex-start;padding-left:1.2rem}.timeline-node{--timeline-accent:#f49f22;z-index:2;justify-content:center;padding-top:1.7rem;display:flex;position:relative}.timeline-node-ping,.timeline-node-core{border-radius:999px;width:42px;height:42px}.timeline-node-ping{border:1.5px solid var(--timeline-accent);opacity:0;animation:2.1s ease-out infinite timeline-ping;position:absolute;top:1.7rem}.timeline-node-core{color:#080810c7;background:radial-gradient(circle at 34% 30%, #ffffffbd, transparent 18%), var(--timeline-accent);border:2px solid color-mix(in srgb, var(--timeline-accent) 82%, white);box-shadow:0 0 0 6px color-mix(in srgb, var(--timeline-accent) 14%, transparent), 0 0 26px color-mix(in srgb, var(--timeline-accent) 44%, transparent);justify-content:center;align-items:center;animation:.55s cubic-bezier(.22,1,.36,1) both timeline-node-in;display:inline-flex;position:relative}.timeline-signal-card{--timeline-accent:#f49f22;border-radius:var(--card-radius);color:#f4f4fb;background:#0d0d19f0;border:1px solid #ffffff14;width:min(100%,480px);transition:transform .28s,border-color .28s,box-shadow .28s;animation-duration:.7s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;overflow:hidden;transform:translateY(0);box-shadow:0 12px 36px #00000061}.timeline-card-left{animation-name:timeline-slide-left}.timeline-card-right{animation-name:timeline-slide-right}.timeline-signal-card:hover{border-color:color-mix(in srgb, var(--timeline-accent) 48%, #ffffff14);box-shadow:0 22px 62px #0000008a, 0 0 0 1px color-mix(in srgb, var(--timeline-accent) 20%, transparent);transform:translateY(-5px)}.timeline-art-wrap{background:#080812;height:88px;position:relative;overflow:hidden}.timeline-art{width:100%;height:100%;display:block}.timeline-art-code{color:color-mix(in srgb, var(--timeline-accent) 78%, white);letter-spacing:.14em;opacity:.7;font-family:DM Mono,monospace;font-size:.62rem;position:absolute;top:.55rem;right:.85rem}.timeline-art-wrap:after{content:"";background:linear-gradient(#0000,#0d0d19f5);height:48px;position:absolute;inset:auto 0 0}.timeline-card-body{padding:.85rem 1.08rem 1rem}.timeline-card-meta{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.55rem;display:flex}.timeline-type-pill,.timeline-period,.timeline-tags span{letter-spacing:.06em;font-family:DM Mono,monospace}.timeline-type-pill{color:var(--timeline-accent);background:color-mix(in srgb, var(--timeline-accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--timeline-accent) 28%, transparent);text-transform:uppercase;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.65rem;display:inline-flex}.timeline-period{color:#ffffff75;text-align:right;font-size:.68rem}.timeline-signal-card h3{color:#fff;margin:0 0 .2rem;font-family:Playfair Display,serif;font-size:clamp(1.12rem,1.8vw,1.38rem);font-weight:400;line-height:1.15}.timeline-org-row{color:#ffffff6b;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.52rem;font-size:.76rem;display:flex}.timeline-org-row span:first-child{color:var(--timeline-accent);font-weight:600}.timeline-meta-dot{background:#ffffff38;border-radius:999px;width:3px;height:3px}.timeline-signal-card p{color:#ffffffad;margin:0 0 .62rem;font-size:.82rem;line-height:1.42}.timeline-signal-card ul{grid-template-columns:minmax(0,1fr);gap:.2rem;margin:0 0 .68rem;padding:0;list-style:none;display:grid}.timeline-signal-card li{color:#ffffff8c;padding-left:.8rem;font-size:.74rem;line-height:1.38;position:relative}.timeline-signal-card li:before{content:"";background:var(--timeline-accent);border-radius:999px;width:4px;height:4px;position:absolute;top:.55em;left:0}.timeline-tags{flex-wrap:wrap;gap:.28rem;display:flex}.timeline-tags span{color:#ffffff7a;background:#ffffff0d;border:1px solid #ffffff17;border-radius:999px;padding:.14rem .45rem;font-size:.58rem}.timeline-art-grid{animation:18s linear infinite timeline-art-drift}.timeline-art-sparks{animation:3.4s ease-in-out infinite timeline-art-sparkle}.timeline-art-wave{animation:9s linear infinite timeline-art-wave}.timeline-art-wave-alt{animation-duration:13s;animation-direction:reverse}.timeline-art-circuit{stroke-dasharray:22 16;animation:6s linear infinite timeline-art-circuit}.timeline-art-orbit{transform-box:fill-box;transform-origin:50%;animation:18s linear infinite timeline-art-orbit}@keyframes timeline-draw-line{0%{transform:translate(-50%)scaleY(0)}to{transform:translate(-50%)scaleY(1)}}@keyframes timeline-ping{0%{opacity:.55;transform:scale(.9)}72%,to{opacity:0;transform:scale(2.05)}}@keyframes timeline-node-in{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@keyframes timeline-slide-left{0%{opacity:0;transform:translate(34px)translateY(10px)}to{opacity:1;transform:translate(0)translateY(0)}}@keyframes timeline-slide-right{0%{opacity:0;transform:translate(-34px)translateY(10px)}to{opacity:1;transform:translate(0)translateY(0)}}@keyframes timeline-art-drift{0%{transform:translate(0)}to{transform:translate(-52px)}}@keyframes timeline-art-sparkle{0%,to{opacity:.56}50%{opacity:1}}@keyframes timeline-art-wave{0%{transform:translate(0)}to{transform:translate(-360px)}}@keyframes timeline-art-circuit{0%{stroke-dashoffset:0}to{stroke-dashoffset:-76px}}@keyframes timeline-art-orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:900px){.timeline-rail{gap:.65rem;max-width:700px}.timeline-row+.timeline-row{margin-top:0}.timeline-rail:before{left:16px}.timeline-row{grid-template-columns:32px minmax(0,1fr)}.timeline-slot-left,.timeline-slot-right{grid-area:1/2;justify-content:flex-start;padding:0 0 0 .7rem}.timeline-node{grid-area:1/1;padding-top:1.7rem}.timeline-node-ping,.timeline-node-core{width:28px;height:28px}.timeline-node-ping{top:1.7rem}.timeline-node-core{box-shadow:0 0 0 4px color-mix(in srgb, var(--timeline-accent) 12%, transparent), 0 0 18px color-mix(in srgb, var(--timeline-accent) 38%, transparent);border-width:1.5px;font-size:.72rem}.timeline-signal-card{width:100%}}@media (max-width:560px){.timeline-section{margin-top:5rem}.timeline-rail{margin-top:1.8rem}.timeline-card-meta{flex-direction:column;align-items:flex-start;gap:.4rem}.timeline-period{text-align:left}.timeline-art-wrap{height:76px}}
.terminal-window{background:#2121214d;border:1px solid #302f2f69;border-radius:1.2rem 1.2rem 2rem 2rem;margin-top:0;overflow:hidden;box-shadow:6px 4px 9px 3px #00000080}.terminal-window-topbar{-webkit-backdrop-filter:saturate(180%)blur(8px);backdrop-filter:saturate(180%)blur(8px);background:#5555554d;align-items:center;gap:.4rem;height:2rem;padding:0 1rem;display:flex;box-shadow:7px 3px 7px 4px #00000080,inset 0 1px 1px #ffffff4d,inset 0 -1px 1px #0003}.terminal-window-control{border-radius:50%;width:.75rem;height:.75rem;display:inline-block}.terminal-window-control-close{background:#ff5f57}.terminal-window-control-minimize{background:#ffbd2e}.terminal-window-control-expand{background:#28c840}
h1,h2,h3,h4,h5,h6,p,ul,li,button,a,i,input,body{-webkit-tap-highlight-color:transparent;color:inherit;border:0;margin:0;padding:0;text-decoration:none;list-style:none}article p{font-size:1em!important}h1:focus,h2:focus,h3:focus,h4:focus,h5:focus,h6:focus,p:focus,ul:focus,li:focus,button:focus,a:focus,i:focus,input:focus,body:focus{outline:0}body{height:auto;margin:0;padding:0;font-family:Barlow,sans-serif}.wrapper{grid-template-columns:1fr;justify-content:center;align-items:center;height:90vh;display:grid;overflow:clip}.wrapper .container{justify-content:center;align-items:center;margin:0 auto;transition:all .4s;display:flex;position:relative}.wrapper .container .scene{vertical-align:middle;width:100vw;height:100vh;position:absolute}.wrapper .container .one,.wrapper .container .two,.wrapper .container .three,.wrapper .container .circle,.wrapper .container .p404{width:60%;min-width:400px;height:60%;min-height:400px;top:20%!important;left:20%!important}.wrapper .container .one .content,.wrapper .container .two .content,.wrapper .container .three .content,.wrapper .container .circle .content,.wrapper .container .p404 .content{justify-content:center;align-items:center;width:600px;height:600px;animation:.8s cubic-bezier(1,.06,.25,1) backwards content;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes content{0%{width:0}}.wrapper .container .one .content .piece,.wrapper .container .two .content .piece,.wrapper .container .three .content .piece,.wrapper .container .circle .content .piece,.wrapper .container .p404 .content .piece{z-index:1;border-radius:80px;width:200px;height:80px;animation:8s cubic-bezier(1,.06,.25,1) infinite both pieceLeft;display:flex;position:absolute}@keyframes pieceLeft{50%{width:10%;left:80%}}@keyframes pieceRight{50%{width:10%;right:80%}}@media screen and (max-width:799px){.wrapper .container .one,.wrapper .container .two,.wrapper .container .three,.wrapper .container .circle,.wrapper .container .p404{width:90%;min-width:280px;height:90%;min-height:280px;top:5%!important;left:5%!important}}@media screen and (max-height:660px){.wrapper .container .one,.wrapper .container .two,.wrapper .container .three,.wrapper .container .circle,.wrapper .container .p404{width:60%;min-width:280px;height:60%;min-height:280px;top:20%!important;left:20%!important}}.wrapper .container .text{width:60%;min-width:400px;height:40%;min-height:500px;margin:40px 0;animation:.6s 1.8s backwards text;position:absolute}@keyframes text{0%{opacity:0;transform:translateY(40px)}}@media screen and (max-width:799px){.wrapper .container .text{height:80%;min-height:400px}}.wrapper .container .text article{z-index:4;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:400px;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media screen and (max-width:799px){.wrapper .container .text article{width:100%}}.wrapper .container .text article p{color:#fff;letter-spacing:.05em;text-shadow:6px 6px 10px #32243e;margin-bottom:40px;font-size:18px}.wrapper .container .text article button{cursor:pointer;z-index:3;color:#695681;text-transform:uppercase;background-color:#fff;border-radius:50px;height:40px;padding:0 30px;font-size:12px;font-weight:600;transition:all .3s;box-shadow:0 15px 20px #36184f80}.wrapper .container .text article button:hover{color:#fff;background:#fb8a8a;transform:translateY(5px);box-shadow:0 10px 10px -10px #a974d580}.wrapper .container .p404{letter-spacing:4px;color:#fff;z-index:2;justify-content:center;align-items:center;font-size:200px;font-weight:700;animation:.6s cubic-bezier(.3,.8,1,1.05) 1.2s both anime404;position:absolute;display:flex!important}@media screen and (max-width:799px){.wrapper .container .p404{font-size:100px}}@keyframes anime404{0%{opacity:0;transform:scale(10)skew(20deg,20deg)}}.wrapper .container .p404:nth-of-type(2){color:#36184f;z-index:1;filter:blur(10px);opacity:.8;animation-delay:1s}.wrapper .container .circle{position:absolute}.wrapper .container .circle:before{content:"";background-color:#36184f33;border-radius:100%;width:800px;height:800px;animation:.8s cubic-bezier(1,.06,.25,1) backwards circle;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 5px 20px 40px #36184f40,inset 5px 0 5px #32243e4d,inset 5px 5px 20px #32243e40,2px 2px 5px #fff3}@keyframes circle{0%{width:0;height:0}}@media screen and (max-width:799px){.wrapper .container .circle:before{width:400px;height:400px}}.wrapper .container .one .content:before{content:"";background-color:#36184f4d;border-radius:100%;width:600px;height:600px;animation:.8s cubic-bezier(1,.06,.25,1) .4s backwards circle;position:absolute;box-shadow:inset 5px 20px 40px #36184f40,inset 5px 0 5px #32243e4d,inset 5px 5px 20px #32243e40,2px 2px 5px #fff3}@media screen and (max-width:799px){.wrapper .container .one .content:before{width:300px;height:300px}}.wrapper .container .one .content .piece{background:linear-gradient(90deg,#8077ea 13.7%,#eb73ff 94.65%)}.wrapper .container .one .content .piece:first-child{width:120px;height:30px;animation-name:pieceRight;animation-delay:.5s;top:18%;right:15%}.wrapper .container .one .content .piece:nth-child(2){width:150px;height:50px;animation-name:pieceLeft;animation-delay:1s;top:45%;left:15%}.wrapper .container .one .content .piece:nth-child(3){width:70px;height:20px;animation-name:pieceLeft;animation-delay:1.5s;top:75%;left:10%}.wrapper .container .two .content .piece{background:linear-gradient(90deg,#ffedc0 0%,#ff9d87 100%)}.wrapper .container .two .content .piece:first-child{width:120px;height:40px;animation-name:pieceLeft;animation-delay:2s;top:25%;left:0}.wrapper .container .two .content .piece:nth-child(2){width:180px;height:50px;animation-name:pieceRight;animation-delay:2.5s;top:35%;right:15%}.wrapper .container .two .content .piece:nth-child(3){width:160px;height:20px;animation-name:pieceRight;animation-delay:3s;top:80%;right:10%}.wrapper .container .three .content .piece{background:#fb8a8a}.wrapper .container .three .content .piece:first-child{width:80px;height:20px;animation-name:pieceLeft;animation-delay:3.5s;top:35%;left:25%}.wrapper .container .three .content .piece:nth-child(2){width:140px;height:40px;animation-name:pieceRight;animation-delay:4s;top:55%;right:10%}.wrapper .container .three .content .piece:nth-child(3){width:80px;height:20px;animation-name:pieceLeft;animation-delay:4.5s;top:68%;left:40%}
html{scroll-behavior:smooth}#about,#projects,#blogs,#timeline,#compliments{scroll-margin-top:10em}.cl-formFieldInput::placeholder{color:#ffffff8c!important;opacity:1!important}.cl-formFieldInput::-webkit-input-placeholder{color:#ffffff8c!important;opacity:1!important}.cl-providerIcon__github,.cl-socialButtonsProviderIcon__github{filter:invert()brightness(2)!important}.cl-lastAuthenticationStrategyBadge{color:#f6f2ff!important;opacity:1!important;background-color:#b593e133!important;border-color:#d0b6ff8c!important}.cl-formFieldHintText,.cl-formFieldErrorText,.cl-identityPreviewText,.cl-footerActionText{color:#fffc!important}.cl-footer,.cl-footerItem,.cl-footerPages,.cl-footerPagesLink,.cl-logoBox{color:#f8f5ff!important;opacity:1!important}.cl-footerPagesLink:hover{color:#d0b6ff!important}.cl-logoImage{filter:brightness(2.4)contrast(1.08)!important;opacity:1!important}
