@import"https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";:root{--bg-gradient-onyx: linear-gradient(to bottom right, hsl(240, 1%, 25%) 3%, hsl(0, 0%, 19%) 97%);--bg-gradient-jet: linear-gradient(to bottom right, hsla(240, 1%, 18%, .251) 3%, hsla(240, 2%, 11%, 0) 100%), hsl(240, 2%, 13%);--bg-gradient-yellow1: linear-gradient(to bottom right, hsl(45, 100%, 71%) 0%, hsla(36, 100%, 69%, 0) 50%);--bg-gradient-yellow2: linear-gradient(135deg, hsla(45, 100%, 71%, .251) 0%, hsla(35, 100%, 68%, 0) 59.86%), hsl(240, 2%, 13%);--border-gradient-onyx: linear-gradient(to bottom right, hsl(0, 0%, 25%) 0%, hsla(0, 0%, 25%, 0) 50%);--text-gradient-yellow: linear-gradient(to right, hsl(45, 100%, 72%), hsl(35, 100%, 68%));--jet: hsl(0, 0%, 22%);--onyx: hsl(240, 1%, 17%);--eerie-black1: hsl(240, 2%, 13%);--eerie-black2: hsl(240, 2%, 12%);--smoky-black: hsl(0, 0%, 7%);--white1: hsl(0, 0%, 100%);--white2: hsl(0, 0%, 98%);--orange-yellow-crayola: hsl(45, 100%, 72%);--vegas-gold: hsl(45, 54%, 58%);--light-gray: hsl(0, 0%, 84%);--light-gray70: hsla(0, 0%, 84%, .7);--bittersweet-shimmer: hsl(0, 43%, 51%);--ff-poppins: "Poppins", sans-serif;--fs1: 24px;--fs2: 18px;--fs3: 17px;--fs4: 16px;--fs5: 15px;--fs6: 14px;--fs7: 13px;--fs8: 12px;--fw300: 300;--fw400: 400;--fw500: 500;--fw600: 600;--shadow1: -4px 8px 24px hsla(0, 0%, 0%, .25);--shadow2: 0px 16px 30px hsla(0, 0%, 0%, .25);--shadow3: 0px 16px 40px hsla(0, 0%, 0%, .25);--shadow4: 0px 25px 50px hsla(0, 0%, 0%, .15);--shadow5: 0px 24px 80px hsla(0, 0%, 0%, .25);--transition1: .25s ease;--transition2: .5s ease-in-out}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}a{text-decoration:none}li{list-style:none}img,ion-icon,a,button,time,span{display:block}button{font:inherit;background:none;border:none;text-align:left;cursor:pointer}input,textarea{display:block;width:100%;background:none;font:inherit}::selection{background:var(--orange-yellow-crayola);color:var(--smoky-black)}:focus{outline-color:var(--orange-yellow-crayola)}html{font-family:var(--ff-poppins)}body{background:var(--smoky-black)}main{margin:15px 12px 75px;min-width:259px}.sidebar,article{background:var(--eerie-black2);border:1px solid var(--jet);border-radius:20px;box-shadow:var(--shadow1);z-index:1;padding:15px}.sidebar.active{max-height:405px}.separator{width:100%;height:1px;background:var(--jet);margin:16px 0}.icon-box{position:relative;background:var(--border-gradient-onyx);width:30px;height:30px;border-radius:8px;display:flex;justify-content:center;align-items:center;font-size:16px;color:var(--orange-yellow-crayola);box-shadow:var(--shadow1);z-index:1}.icon-box:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--eerie-black1);border-radius:inherit;z-index:-1}.icon-box ion-icon{--ionicon-stroke-width: 35px}body{font-family:cursive;background:var(--bg-gradient-jet);font-family:Times New Roman,Times,serif}.sidebar{margin-bottom:15px;max-height:112px;overflow:hidden;padding:15px;display:flex;justify-content:space-around;background-color:transparent;transition:var(--transition2);animation:fadeIn 1s ease-in-out}.sidebar.expanded{max-height:500px;transition:max-height .5s ease-in-out}.sidebar-info{position:relative;display:flex;justify-content:flex-start;align-items:center;gap:15px}.avatar-box{background:transparent;border-radius:20px;transition:transform .3s ease}.avatar-box:hover{animation:rotate 2s linear infinite}.info-content .name{color:var(--white2);font-size:var(--fs3);font-weight:var(--fw500);letter-spacing:-.25px;margin-bottom:10px}.info-content .title{color:var(--white1);background:var(--onyx);font-size:var(--fs8);font-weight:var(--fw300);width:max-content;padding:3px 12px;border-radius:8px}.resume-button{color:#fff;background-color:#353839;font-size:16px;font-weight:400;padding:3px 12px;border-radius:8px;animation:pulse 2s infinite;transition:transform .3s ease,background-color .3s ease}.resume-button:hover{background-color:#5953539e;transform:scale(1.05)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.info-more-btn{position:absolute;top:-15px;right:-15px;border-radius:0 15px;font-size:13px;color:var(--orange-yellow-crayola);background:var(--border-gradient-onyx);padding:10px;box-shadow:var(--shadow2);transition:var(--transition1);z-index:1}.info-more-btn:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:var(--bg-gradient-jet);transition:var(--transition1);z-index:-1}.info-more-btn:hover,.info-more-btn:focus{background:var(--bg-gradient-yellow1);animation:bounce .5s ease-in-out}.info-more-btn:hover:before,.info-more-btn:focus:before{background:var(--bg-gradient-yellow2)}.info-more-btn:focus{animation:focusAnimation .5s ease-in-out}.info-more-btn span{display:none}.sidebar-info-more{display:flex;justify-content:center;align-items:center;gap:15px;transition:var(--transition2)}.social-list{display:flex;justify-content:center;align-items:center;gap:20px;padding-bottom:4px;animation:slideIn 1s ease-in-out .5s}.social-item .social-link{color:var(--light-gray70);font-size:30px;transition:transform .3s ease,color .3s ease}.social-item .social-link:hover{color:var(--light-gray);transform:scale(1.2)}@media (max-width: 768px){.sidebar{max-height:unset;padding:10px;display:flex;flex-direction:column;justify-content:center}.sidebar.expanded{animation:slideUp .5s ease-in-out}.sidebar-info-more{padding-top:20px;display:flex}.avatar-box{width:60px;height:60px}.info-content .name{font-size:var(--fs2);margin-bottom:3px}.info-content .title{font-size:var(--fs7);padding:2px 10px}.sidebar-info{flex-direction:column;align-items:center}.social-list{flex-direction:row;gap:15px}.social-item .social-link{font-size:22px;width:45px;height:45px}}@media (max-width: 480px){.sidebar{padding:8px}.avatar-box{width:50px;height:50px}.info-content .name{font-size:var(--fs1);margin-bottom:2px}.info-content .title{font-size:var(--fs6)}.social-list{flex-direction:row;gap:12px}.social-item .social-link{font-size:20px;width:40px;height:40px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes focusAnimation{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.navbar{position:fixed;bottom:0;left:0;width:100%;background:#2b2b2cbf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--jet);border-radius:12px 12px 0 0;box-shadow:var(--shadow2);z-index:5;height:80px;animation:slideUp .5s ease-in-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.navbar-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:0 10px;gap:25px;height:100%}.navbar-link{color:var(--light-gray);font-size:1.3rem;padding:20px 7px;transition:color var(--transition1),transform .3s ease-in-out;display:flex;align-items:center;height:100%;position:relative;overflow:hidden}.navbar-link:before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--orange-yellow-crayola);transform:scaleX(0);transform-origin:right;transition:transform .3s ease-in-out}.navbar-link:hover:before,.navbar-link:focus:before{transform:scaleX(1);transform-origin:left}.navbar-link:hover,.navbar-link:focus{color:var(--light-gray70)}.navbar-link.active{color:var(--orange-yellow-crayola);font-weight:700;transform:scale(1.1)}.navbar-link.active:after{content:"";position:absolute;bottom:-5px;left:50%;width:0;height:2px;background:var(--orange-yellow-crayola);border-radius:5px;animation:centerGrow .3s ease-in-out forwards}@keyframes centerGrow{0%{width:0;left:50%}to{width:100%;left:0}}.navbar-item{position:relative;animation:bounce 1s ease-in-out infinite}@media (max-width: 768px){.navbar{height:70px}.navbar-list{gap:15px}.navbar-link{font-size:1.1rem;padding:15px 5px}}@media (max-width: 480px){.navbar{height:60px}.navbar-list{gap:10px;padding:0 5px}.navbar-link{font-size:1rem;padding:10px 3px}.navbar-link.active{transform:scale(1.05)}.navbar-item{animation:bounce .8s ease-in-out infinite}}article{background-color:transparent;animation:backgroundAnimation 10s infinite alternate}@keyframes backgroundAnimation{0%{background-color:#0000001a}to{background-color:#0000004d}}.about-text{color:var(--light-gray);font-size:1.25rem;line-height:1.8;text-shadow:0 1px 2px rgba(0,0,0,.3);max-width:1200px;margin:0 auto}header{display:flex;flex-direction:column;align-items:center;font-size:clamp(1.5rem,4vw,2.5rem);justify-content:center;color:#ffffffe3;animation:fadeIn 1.5s cubic-bezier(.22,1,.36,1);text-align:center;margin-bottom:2rem;position:relative}header:after{content:"";display:block;width:100px;height:3px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);margin-top:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.about-content{display:flex;align-items:center;font-size:1.1rem;gap:40px;animation:slideIn 1.5s cubic-bezier(.22,1,.36,1);margin:2rem 0}@keyframes slideIn{0%{transform:translate(-5%);opacity:0}to{transform:translate(0);opacity:1}}.about-image{flex-shrink:0;perspective:1000px}.about-image img{width:220px;height:auto;border-radius:16px;box-shadow:0 8px 20px #0000004d;border:2px solid rgba(255,255,255,.1);transition:all .4s cubic-bezier(.22,1,.36,1);transform-style:preserve-3d}.about-image img:hover{transform:scale(1.05) rotateY(5deg);box-shadow:0 12px 25px #0006;border-color:#fff3}.about-description{flex:1;position:relative}.about-text p{margin-bottom:1.5rem;text-align:justify;padding:0 10px;font-size:var(--fs9);position:relative;z-index:1}.service{margin-bottom:3rem}.service-title{margin:2rem 0;font-size:1.5rem;font-weight:var(--fw400);color:#ffffffe3;text-align:center;position:relative}.service-title:after{content:"";display:block;width:60px;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);margin:.5rem auto}.service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.service-item{position:relative;background:var(--border-gradient-onyx);padding:25px;border-radius:16px;box-shadow:var(--shadow2);transition:all .4s cubic-bezier(.22,1,.36,1);overflow:hidden;z-index:1}.service-item:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1}.service-item:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);transform:scale(0);transition:transform .6s cubic-bezier(.22,1,.36,1);z-index:-1}.service-item:hover:after{transform:scale(1)}.service-item:hover{transform:translateY(-8px);box-shadow:0 15px 30px #0000004d}.service-icon-box{margin-bottom:1rem;display:flex;justify-content:center}.service-icon-box img{width:50px;height:50px;object-fit:contain;transition:all .4s cubic-bezier(.22,1,.36,1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.service-icon-box img:hover{transform:rotate(15deg) scale(1.1);filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.service-content-box{text-align:center}.service-item-title{margin-bottom:.75rem;font-size:1.2rem;font-weight:var(--fw500);color:#fff}.service-item-text{color:var(--light-gray);font-size:var(--fs7);font-weight:var(--fw300);line-height:1.7}.list_p{list-style-type:none;padding-left:0;display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap;margin:2rem 0}.list_p li{position:relative;animation:fadeInUp .6s cubic-bezier(.22,1,.36,1) both}.list_p li:nth-child(1){animation-delay:.1s}.list_p li:nth-child(2){animation-delay:.2s}.list_p li:nth-child(3){animation-delay:.3s}.list_p li:nth-child(4){animation-delay:.4s}.list_p li:nth-child(5){animation-delay:.5s}.list_p li:nth-child(6){animation-delay:.6s}.p{display:flex;justify-content:center;align-items:center;height:70px;width:70px;border-radius:16px;background:#ffffff0d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.1);transition:all .3s ease;box-shadow:0 4px 6px #0000001a}.p:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 8px 15px #0003;background:#ffffff1a;border-color:#fff3}@media (max-width: 992px){.about-content{flex-direction:column;text-align:center;gap:30px}.about-image img{width:180px}.about-text,.about-text p{text-align:center}}@media (max-width: 768px){article{padding:1.5rem}.about-text{font-size:1rem}.service-list{grid-template-columns:1fr}.p{height:60px;width:60px}}@media (max-width: 480px){article{padding:1rem;border-radius:12px}.about-image img{width:150px}.service-item{padding:20px}.p{height:50px;width:50px}}.testimonials{margin-bottom:30px}.testimonials-title{margin-bottom:20px}.testimonials-list{display:flex;justify-content:flex-start;align-items:flex-start;gap:15px;margin:0 -15px;padding:25px 15px 35px;overflow-x:auto;scroll-behavior:smooth;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory}.testimonials-item{min-width:100%;scroll-snap-align:center}.testimonials-avatar-box{position:absolute;top:0;left:0;transform:translate(15px,-25px);background:var(--bg-gradient-onyx);border-radius:14px;box-shadow:var(--shadow1)}.testimonials-text{color:var(--light-gray);font-size:var(--fs6);font-weight:var(--fw300);line-height:1.6;display:-webkit-box;line-clamp:4;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.article-title{margin-bottom:30px;font-size:2.2rem;background:linear-gradient(90deg,#f0e,#0ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 4px rgba(0,0,0,.1)}.timeline{margin-bottom:40px;position:relative}.timeline:before{content:"";position:absolute;top:0;left:20px;height:100%;width:3px;background:linear-gradient(to bottom,#ff00ee80,#00ffff80);border-radius:3px;z-index:0}.timeline .title-wrapper{display:flex;align-items:center;gap:15px;margin-bottom:25px;color:#f0ec;font-size:1.5rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;position:relative;padding-left:40px}.timeline .title-wrapper:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:25px;height:3px;background:linear-gradient(90deg,#f0e,#0ff);border-radius:3px}.timeline-list{font-size:1rem;margin-left:45px;position:relative;z-index:1}.timeline-list span{color:#fff;font-weight:400;line-height:1.6}.timeline-item{position:relative;padding:20px;background:#1e1e2880;border-radius:8px;margin-bottom:25px;box-shadow:0 4px 15px #0003;transition:all .3s ease;border-left:3px solid transparent}.timeline-item:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000004d;border-left:3px solid #ff00ee;background:#282832b3}.timeline-item:not(:last-child){margin-bottom:25px}.timeline-item:not(:last-child):before{content:"";position:absolute;top:-25px;left:-30px;width:1px;height:calc(100% + 50px);background:linear-gradient(to bottom,transparent,var(--jet),transparent)}.timeline-item:after{content:"";position:absolute;top:25px;left:-38px;height:12px;width:12px;border-radius:50%;background:linear-gradient(135deg,#f0e,#0ff);box-shadow:0 0 0 4px #1e1e28cc;z-index:1;transition:all .3s ease}.timeline-item:hover:after{transform:scale(1.2);box-shadow:0 0 0 4px #1e1e28cc,0 0 15px #f0e}.timeline-item-title{font-size:1.2rem;line-height:1.3;margin-bottom:10px;color:#0ffc;font-weight:600;position:relative;display:inline-block}.timeline-item-title:after{content:"";position:absolute;bottom:-5px;left:0;width:50px;height:2px;background:linear-gradient(90deg,#00ffff,transparent)}.timeline-text{color:#ffffffe6;font-weight:300;line-height:1.7;text-align:justify;font-size:1rem;margin-bottom:0}.skills-title{margin-bottom:25px;font-size:1.8rem;background:linear-gradient(90deg,#f0e,#0ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 4px rgba(0,0,0,.1);position:relative;padding-bottom:10px}.skills-title:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:linear-gradient(90deg,#f0e,#0ff);border-radius:3px}.skills-list{padding:25px;background:#1e1e284d;border-radius:12px;box-shadow:0 4px 20px #00000026;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff}.skills-item:not(:last-child){margin-bottom:20px;padding-bottom:20px;border-bottom:1px dashed rgba(255,255,255,.1)}.skill .title-wrapper{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.skill .title-wrapper .title{color:#fffffff2;font-size:1.1rem;font-weight:500;display:flex;align-items:center;gap:8px}.skill .title-wrapper .title:before{content:"▹";color:#00ffffb3;font-size:1.2rem}.skill .title-wrapper data{color:#ffc0cbe6;font-size:.9rem;font-weight:400;background:#ffffff1a;padding:3px 8px;border-radius:12px}.skills-progress-bg{background:#32323c80;width:100%;height:10px;border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0003}.skills-progress-fill{background:linear-gradient(90deg,#f0ec,#0ffc);height:100%;border-radius:inherit;position:relative;transition:width 1.5s cubic-bezier(.22,.61,.36,1)}.skills-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#ffffff1a,#ffffff4d,#ffffff1a);animation:shine 2.5s infinite;border-radius:inherit}@keyframes shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skill:hover .skills-progress-fill{box-shadow:0 0 10px #ff00ee80}.skill:hover .title-wrapper data{transform:translate(5px);transition:transform .3s ease}.project-details-container{margin-bottom:40px;padding:20px;background:var(--eerie-black);border-radius:20px;min-height:100vh;animation:fadeInUp .6s ease-out}.project-details-header{display:flex;flex-direction:column;gap:20px;margin-bottom:40px;position:relative}.back-btn{display:flex;align-items:center;gap:8px;background:var(--eerie-black2);color:var(--light-gray);border:1px solid var(--jet);padding:12px 20px;border-radius:25px;cursor:pointer;transition:all .3s ease-in-out;font-size:var(--fs6);font-weight:var(--fw500);align-self:flex-start;text-decoration:none}.back-btn:hover{background:var(--jet);color:#ffb6c1;transform:translate(-5px)}.back-btn ion-icon{font-size:1.2rem;transition:transform .3s ease}.back-btn:hover ion-icon{transform:translate(-3px)}.project-details-header .h2.article-title{font-size:2.5rem;font-weight:600;background:linear-gradient(135deg,var(--orange-yellow-crayola),#d8a0d1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;text-align:center}.project-overview{display:grid;grid-template-columns:1fr;gap:30px;margin-bottom:40px;background:var(--eerie-black2);border:1px solid var(--jet);border-radius:20px;padding:30px;box-shadow:0 8px 32px #0000004d}.project-image-container{position:relative;width:100%;height:300px;border-radius:15px;overflow:hidden;box-shadow:0 8px 25px #0006}.project-detail-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-image-container:hover .project-detail-image{transform:scale(1.05)}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffb6c11a,#0000004d);display:flex;align-items:flex-start;justify-content:flex-end;padding:20px}.project-status-badge{background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffb6c1;border-radius:20px;padding:8px 16px}.status-indicator{font-size:var(--fs7);font-weight:var(--fw600);text-transform:uppercase;letter-spacing:.5px}.status-in-progress,.status-working{color:#ffb6c1}.status-planned{color:#6366f1}.project-meta{display:flex;flex-direction:column;gap:25px}.project-header-info{text-align:center}.project-detail-title{font-size:2rem;font-weight:600;color:var(--white2);margin:0 0 10px;line-height:1.2}.project-category-detail{font-size:var(--fs5);color:#ffb6c1;font-weight:var(--fw500);text-transform:uppercase;letter-spacing:1px;margin:0}.project-stats{display:grid;grid-template-columns:1fr;gap:20px}.stat-item{display:flex;align-items:center;gap:15px;background:var(--jet);padding:20px;border-radius:15px;border:1px solid transparent;transition:all .3s ease}.stat-item:hover{border-color:#ffb6c1;transform:translateY(-2px);box-shadow:0 8px 25px #ffb6c11a}.stat-item ion-icon{font-size:1.5rem;color:#ffb6c1;min-width:24px}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:var(--fs7);color:var(--light-gray70);font-weight:var(--fw300);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--fs6);color:var(--white2);font-weight:var(--fw500)}.project-section{background:var(--eerie-black2);border:1px solid var(--jet);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px #0003;transition:all .3s ease}.section-header{display:flex;align-items:center;gap:15px;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--jet)}.section-header ion-icon{font-size:1.5rem;color:#ffb6c1}.section-header h4{font-size:1.4rem;font-weight:600;color:var(--white2);margin:0}.section-content{color:var(--light-gray);line-height:1.7}.project-description{font-size:var(--fs5);color:var(--light-gray);line-height:1.8;margin:0;text-align:justify}.tech-stack-grid{display:grid;grid-template-columns:1fr;gap:20px}.tech-category-card{background:var(--jet);border:1px solid rgba(255,182,193,.2);border-radius:15px;padding:20px;transition:all .3s ease}.tech-category-card:hover{border-color:#ffb6c1;transform:translateY(-3px);box-shadow:0 8px 25px #ffb6c11a}.tech-category-title{font-size:var(--fs6);font-weight:600;color:#ffb6c1;margin:0 0 15px;text-transform:uppercase;letter-spacing:.5px}.tech-items{display:flex;flex-wrap:wrap;gap:10px}.tech-tag{background:var(--eerie-black);color:var(--white2);padding:8px 16px;border-radius:20px;font-size:var(--fs7);font-weight:var(--fw500);border:1px solid var(--jet);transition:all .3s ease}.tech-tag:hover{background:#ffb6c1;color:var(--eerie-black);transform:translateY(-2px)}.features-grid{display:grid;grid-template-columns:1fr;gap:15px}.feature-card{display:flex;align-items:flex-start;gap:15px;background:var(--jet);padding:20px;border-radius:15px;border:1px solid transparent;transition:all .3s ease}.feature-card:hover{border-color:#ffb6c1;transform:translate(5px);box-shadow:0 4px 15px #ffb6c11a}.feature-icon{color:#ffb6c1;font-size:1.2rem;margin-top:2px;min-width:20px}.feature-text{font-size:var(--fs6);color:var(--light-gray);line-height:1.6;margin:0}.project-links{display:grid;grid-template-columns:1fr;gap:20px}.project-link{display:flex;align-items:center;gap:20px;background:var(--jet);border:1px solid var(--jet);border-radius:15px;padding:20px;text-decoration:none;color:var(--white2);transition:all .3s ease;position:relative;overflow:hidden}.project-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,182,193,.1),transparent);transition:left .5s ease}.project-link:hover:before{left:100%}.project-link:hover{border-color:#ffb6c1;transform:translateY(-3px);box-shadow:0 8px 25px #ffb6c133}.link-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:var(--eerie-black);border:2px solid #ffb6c1;border-radius:50%;color:#ffb6c1;font-size:1.5rem;transition:all .3s ease}.project-link:hover .link-icon{background:#ffb6c1;color:var(--eerie-black);transform:rotate(360deg)}.link-content{flex:1;display:flex;flex-direction:column;gap:5px}.link-title{font-size:var(--fs5);font-weight:600;color:var(--white2)}.link-subtitle{font-size:var(--fs6);color:var(--light-gray70);font-weight:var(--fw300)}.link-arrow{color:#ffb6c1;font-size:1.2rem;transition:transform .3s ease}.project-link:hover .link-arrow{transform:translate(5px)}.no-links-message{display:flex;align-items:center;justify-content:center;gap:15px;background:var(--jet);padding:30px;border-radius:15px;border:1px dashed var(--light-gray70);text-align:center}.no-links-message ion-icon{color:#ffb6c1;font-size:1.5rem}.no-links-message p{color:var(--light-gray70);font-size:var(--fs6);margin:0}.error-message{display:flex;align-items:center;justify-content:center;min-height:200px;background:var(--eerie-black2);border:1px solid var(--jet);border-radius:20px;margin-top:20px}.error-message p{color:var(--light-gray);font-size:var(--fs5);text-align:center;margin:0}@media screen and (min-width: 768px){.project-details-container{padding:40px}.project-overview{grid-template-columns:1fr 1fr;padding:40px}.project-image-container{height:350px}.project-stats{grid-template-columns:1fr}.tech-stack-grid,.features-grid,.project-links{grid-template-columns:repeat(2,1fr)}.project-details-header{flex-direction:row;align-items:center;justify-content:space-between}.project-details-header .h2.article-title{text-align:left;flex:1;margin-left:20px}}@media screen and (min-width: 1024px){.project-details-container{padding:60px}.project-overview{padding:50px}.project-image-container{height:400px}.project-details-header .h2.article-title{font-size:3rem}.project-stats,.tech-stack-grid{grid-template-columns:repeat(3,1fr)}.project-section{padding:40px}}@media screen and (min-width: 1400px){.project-overview{grid-template-columns:1.2fr .8fr}.project-image-container{height:450px}.features-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.project-details-container{padding:15px}.project-overview{padding:20px}.project-image-container{height:250px}.project-details-header .h2.article-title{font-size:2rem;text-align:center}.project-section{padding:20px}.section-header{flex-direction:column;align-items:flex-start;gap:10px}.project-link{padding:15px}}:root{--light-pink: #ffb6c1;--light-pink-dark: #ff8fab}.portfolio{margin-bottom:40px;padding:20px;background:var(--eerie-black);border-radius:20px;min-height:100vh;animation:fadeInUp .6s ease-out;text-align:center;align-items:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}header{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--white2);margin-bottom:40px;text-align:center}.h2.article-title{font-size:2.5rem;font-weight:600;background:#fff;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px}.portfolio-subtitle{font-size:var(--fs5);color:var(--light-gray70);font-weight:var(--fw300);margin:0;max-width:600px}.projects{width:100%}.filter-list{display:none;list-style:none;padding:0;margin:0 0 30px}.filter-item{margin:0}.filter-item button{background:var(--eerie-black2);color:var(--light-gray);border:1px solid var(--jet);font-size:var(--fs6);padding:12px 20px;border-radius:25px;cursor:pointer;transition:all .3s ease-in-out;font-weight:var(--fw500);display:flex;align-items:center;gap:8px;position:relative}.filter-count{background:var(--jet);color:var(--light-pink);font-size:var(--fs7);font-weight:var(--fw600);padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.filter-item button:hover{background:var(--jet);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;border-color:#ffb6c180}.filter-item button.active{background:linear-gradient(135deg,var(--light-pink),#ff8fab);color:var(--eerie-black);border-color:var(--light-pink);font-weight:600}.filter-item button.active .filter-count{background:#0003;color:var(--eerie-black)}.filter-select-box{position:relative;margin-bottom:20px}.filter-select{background:var(--eerie-black2);color:var(--light-gray);border:1px solid var(--jet);display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 20px;border-radius:15px;font-size:var(--fs6);font-weight:var(--fw300);cursor:pointer;transition:all .3s ease-in-out}.filter-select:hover{background:var(--jet);border-color:var(--light-pink)}.filter-select.active{border-color:var(--light-pink);background:var(--jet)}.filter-select.active .select-icon{transform:rotate(180deg);color:var(--light-pink)}.select-value{display:flex;align-items:center;gap:8px}.current-count{color:var(--light-pink);font-weight:var(--fw500)}.select-icon{transition:all .3s ease-in-out;font-size:1.2rem}.select-list{background:var(--eerie-black2);border:1px solid var(--jet);position:absolute;top:calc(100% + 8px);width:100%;padding:8px;border-radius:15px;z-index:10;opacity:0;visibility:hidden;pointer-events:none;transition:all .3s ease-in-out;transform:translateY(-10px);list-style:none;margin:0;box-shadow:0 8px 32px #0006}.select-list.active{opacity:1;visibility:visible;pointer-events:all;transform:translateY(0)}.select-item{margin:0}.select-item button{background:none;border:none;color:var(--light-gray);font-size:var(--fs6);font-weight:var(--fw300);width:100%;padding:12px 16px;border-radius:10px;text-align:left;cursor:pointer;transition:all .3s ease-in-out}.select-item button:hover{background:var(--jet);color:var(--light-pink)}.projects-summary{margin-bottom:30px;padding:15px 20px;background:var(--eerie-black2);border:1px solid var(--jet);border-radius:15px}.summary-info{display:flex;align-items:center;justify-content:space-between;gap:15px}.showing-text{color:var(--light-gray);font-size:var(--fs6)}.showing-text strong{color:var(--light-pink);font-weight:var(--fw600)}.clear-filter-btn{background:none;border:1px solid var(--light-pink);color:var(--light-pink);padding:8px 15px;border-radius:20px;font-size:var(--fs7);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:5px}.clear-filter-btn:hover{background:var(--light-pink);color:var(--eerie-black);transform:scale(1.05)}.project-list{display:grid;grid-template-columns:1fr;gap:25px;list-style:none;padding:0;margin:0}.project-item{opacity:0;transform:translateY(30px);animation:slideInUp .6s ease-out forwards}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}.project-card{display:block;width:100%;text-decoration:none;color:inherit;border-radius:20px;overflow:hidden;background:var(--eerie-black2);border:1px solid var(--jet);box-shadow:0 4px 20px #0000004d;transition:all .3s ease-in-out;cursor:pointer;position:relative}.project-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0006;border-color:var(--light-pink)}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,182,193,.05),transparent);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:1}.project-card:hover:before{opacity:1}.project-img{position:relative;width:100%;height:220px;overflow:hidden;margin:0}.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease-in-out}.project-card:hover .project-img img{transform:scale(1.1)}.project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#8b8883cc,#9b9994cc);opacity:0;transition:opacity .3s ease;display:flex;align-items:flex-start;justify-content:flex-end;padding:15px;z-index:2}.project-card:hover .project-overlay{opacity:1}.project-status{background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:6px 12px}.status-badge{font-size:var(--fs7);font-weight:var(--fw600);text-transform:uppercase;letter-spacing:.5px}.status-completed{color:#10b981}.status-working,.status-in-progress{color:var(--light-pink)}.project-item-icon-box{background:var(--eerie-black2);color:var(--light-pink);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.7);font-size:24px;padding:16px;border-radius:50%;opacity:0;transition:all .3s ease-in-out;z-index:3;border:2px solid var(--light-pink)}.project-card:hover .project-item-icon-box{transform:translate(-50%,-50%) scale(1);opacity:1}.project-content{padding:20px;position:relative;z-index:2}.project-header{margin-bottom:15px}.project-title{color:var(--white2);font-size:var(--fs5);font-weight:var(--fw600);margin:0 0 8px;line-height:1.3}.project-category{color:var(--light-pink);font-size:var(--fs7);font-weight:var(--fw500);text-transform:uppercase;letter-spacing:.5px;margin:0}.project-description-preview{margin-bottom:15px}.project-description-preview p{color:var(--light-gray70);font-size:var(--fs6);line-height:1.5;margin:0}.project-tech-preview{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.tech-preview-tag{background:var(--jet);color:var(--light-gray);padding:4px 10px;border-radius:12px;font-size:var(--fs7);font-weight:var(--fw400);border:1px solid transparent;transition:all .3s ease}.tech-preview-tag:hover{border-color:var(--light-pink);color:var(--light-pink)}.tech-more{color:var(--light-pink);font-size:var(--fs7);font-weight:var(--fw500);padding:4px 10px}.project-actions{display:flex;align-items:center;justify-content:space-between;gap:15px}.view-project-btn{background:linear-gradient(135deg,var(--light-pink),#96777e);color:var(--eerie-black);border:none;padding:12px 20px;border-radius:25px;font-size:var(--fs6);font-weight:var(--fw600);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;flex:1;justify-content:center}.view-project-btn:hover{background:var(--eerie-black);color:var(--light-pink);border:1px solid var(--light-pink);transform:translateY(-2px);box-shadow:0 8px 25px #ffb6c14d}.quick-links{display:flex;gap:10px}.quick-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--jet);border:1px solid var(--jet);border-radius:50%;color:var(--light-gray);text-decoration:none;transition:all .3s ease;font-size:1.1rem}.quick-link:hover{border-color:var(--light-pink);color:var(--light-pink);transform:translateY(-3px) scale(1.1);box-shadow:0 4px 15px #ffb6c133}.quick-link.github:hover{background:#333;color:#fff;border-color:#333}.quick-link.demo:hover{background:var(--light-pink);color:var(--eerie-black);border-color:var(--light-pink)}.no-projects{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:var(--eerie-black2);border:1px dashed var(--jet);border-radius:20px;margin-top:20px}.no-projects-icon{font-size:4rem;color:var(--light-pink);margin-bottom:20px;opacity:.7}.no-projects h3{color:var(--white2);font-size:var(--fs4);font-weight:var(--fw600);margin:0 0 10px}.no-projects p{color:var(--light-gray70);font-size:var(--fs6);margin:0 0 30px;max-width:400px;line-height:1.6}.reset-filter-btn{background:var(--light-pink);color:var(--eerie-black);border:none;padding:12px 24px;border-radius:25px;font-size:var(--fs6);font-weight:var(--fw600);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.reset-filter-btn:hover{background:var(--eerie-black2);color:var(--light-pink);border:1px solid var(--light-pink);transform:translateY(-2px)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:var(--eerie-black2);border:1px solid var(--jet);border-radius:20px;margin-top:20px}.loading-spinner{font-size:3rem;color:var(--light-pink);margin-bottom:20px;animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text,.error-text{color:var(--light-gray);font-size:var(--fs5);margin:0 0 20px}.error-icon{font-size:3rem;color:#ef4444;margin-bottom:20px}.retry-btn{background:var(--light-pink);color:var(--eerie-black);border:none;padding:12px 24px;border-radius:25px;font-size:var(--fs6);font-weight:var(--fw600);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.retry-btn:hover{background:var(--eerie-black2);color:var(--light-pink);border:1px solid var(--light-pink);transform:translateY(-2px)}@media screen and (min-width: 768px){.project-list{grid-template-columns:repeat(2,1fr);gap:30px}.project-img{height:250px}.filter-list{display:flex;justify-content:center;gap:15px;margin-bottom:30px}.filter-select-box{display:none}.portfolio{padding:40px}.projects-summary{padding:20px 30px}.summary-info{flex-direction:row}}@media screen and (min-width: 1024px){.project-list{grid-template-columns:repeat(3,1fr);gap:35px}.project-img{height:280px}.h2.article-title{font-size:3rem}.project-content{padding:25px}}@media screen and (min-width: 1400px){.project-list{grid-template-columns:repeat(4,1fr)}.project-img{height:300px}.portfolio{padding:60px}}@media (max-width: 600px){.portfolio{padding:15px}.h2.article-title{font-size:2rem}.project-content{padding:15px}.project-actions{flex-direction:column;gap:15px}.view-project-btn{width:100%}.quick-links{justify-content:center;width:100%}.summary-info{flex-direction:column;align-items:stretch;gap:15px}.clear-filter-btn{align-self:center}}.contact{text-align:center}.contact-details{margin-bottom:60px;animation:fadeIn 1s ease-out}.contact-heading{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:30px;color:#fff;text-transform:uppercase;letter-spacing:2px;position:relative;display:inline-block;padding-bottom:10px}.contact-heading:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:3px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.contact-icons{display:flex;justify-content:center;flex-wrap:wrap;gap:40px;margin-top:40px}.contact-icon{font-size:2.5rem;color:#fff;transition:all .4s cubic-bezier(.22,1,.36,1);position:relative;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 15px #0000001a}.contact-icon:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:currentColor;opacity:0;transform:scale(.8);transition:all .4s ease;z-index:-1}.contact-icon:hover{transform:translateY(-8px) scale(1.1);box-shadow:0 8px 25px #0003;color:#fff}.contact-icon:hover:before{opacity:.1;transform:scale(1)}.insta:hover{color:#e1306c;text-shadow:0 0 15px rgba(225,48,108,.5)}.mail:hover{color:#d44638;text-shadow:0 0 15px rgba(212,70,56,.5)}.linkedin:hover{color:#0077b5;text-shadow:0 0 15px rgba(0,119,181,.5)}.github:hover{color:#333;text-shadow:0 0 15px rgba(51,51,51,.5)}.call:hover{color:#25d366;text-shadow:0 0 15px rgba(37,211,102,.5)}.contact-form{max-width:700px;margin:0 auto;padding:40px;background:#141414cc;border-radius:25px;box-shadow:0 15px 40px #0000004d;transition:all .5s cubic-bezier(.22,1,.36,1);border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.contact-form:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(149,118,125,.138) 0%,transparent 70%);transform:scale(0);transition:transform .8s ease;z-index:-1}.contact-form:hover{transform:translateY(-8px);box-shadow:0 20px 50px #0006;border-color:#ffffff1a}.contact-form:hover:before{transform:scale(1)}.form-title{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:30px;color:var(--orange-yellow-crayola);text-transform:uppercase;letter-spacing:1.5px;position:relative}.form-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:2px;background:var(--orange-yellow-crayola)}.contact-form h2{font-size:clamp(1rem,2vw,1.2rem);margin-bottom:20px;color:#f5deb3e6;transition:all .3s ease;display:inline-block;padding:10px 20px;border-radius:30px;background:#ffffff0d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.contact-form h2:hover{color:var(--orange-yellow-crayola);transform:translateY(-3px);box-shadow:0 5px 15px #0003}.contact-form h2 a{color:inherit;text-decoration:none;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.contact-form h2 a:hover{color:var(--yellow-orange)}.input-wrapper{display:grid;gap:25px;margin-bottom:30px}@media (max-width: 768px){.contact{padding:60px 15px}.contact-icons{gap:25px}.contact-icon{width:60px;height:60px;font-size:2rem}.contact-form{padding:30px}.input-wrapper{grid-template-columns:1fr;gap:20px}}@media (max-width: 480px){.contact{padding:50px 10px}.contact-icons{gap:15px}.contact-icon{width:50px;height:50px;font-size:1.8rem}.contact-form{padding:25px 20px;border-radius:20px}.contact-form h2{padding:8px 15px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.contact-icon{animation:float 3s ease-in-out infinite}.contact-icon:hover{animation:none}.background-container{position:relative;height:100vh;width:100%;overflow:hidden}.background-svg{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.9;pointer-events:none;z-index:-1;animation:easeInOut 3s ease-in-out infinite,blink 2s ease-in-out infinite,lightEffect 4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.9}50%{opacity:.6}}@keyframes dash{to{stroke-dashoffset:0}}.path-animation{stroke-dasharray:1000;stroke-dashoffset:1000;animation:dash 5s ease-in-out infinite,pulse 3s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes lightEffect{0%{filter:drop-shadow(0 0 2px rgba(255,255,255,.437));opacity:.7}50%{filter:drop-shadow(0 0 2px rgba(0,238,255,.811));opacity:.4}to{filter:drop-shadow(0 0 2px rgba(255,255,255,.8));opacity:.7}}
