.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;background-color:transparent;padding:1.5rem 0;transition:var(--transition)}.navbar.scrolled{background-color:#fffc;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 5px 30px #0000000d;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.3)}.navbar-container{display:flex;justify-content:space-between;align-items:center;width:90%;max-width:var(--container-width);margin:0 auto;padding:0 1.5rem}.logo a{font-size:1.75rem;font-weight:800;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none;letter-spacing:-.5px;transition:var(--transition)}.logo a:hover{transform:translateY(-2px);filter:brightness(1.1)}.nav-menu{display:flex;justify-content:flex-end;align-items:center;list-style:none;margin:0;padding:0}.nav-menu li{margin-left:2.75rem}.nav-menu a{font-size:1.05rem;font-weight:600;color:var(--text-color);position:relative;text-decoration:none;transition:var(--transition);padding:.5rem 0;letter-spacing:-.2px}.nav-menu a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--gradient-bg);transition:var(--transition);border-radius:2px}.nav-menu a:hover{color:var(--primary-color)}.nav-menu a:hover:after{width:100%}.menu-icon{display:none;font-size:1.5rem;cursor:pointer;color:var(--text-color);transition:var(--transition);padding:.5rem;border-radius:50%;background-color:#ffffff80;box-shadow:var(--box-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.menu-icon:hover{color:var(--primary-color);transform:translateY(-2px);box-shadow:var(--hover-shadow)}@media screen and (max-width: 768px){.menu-icon{display:block;z-index:101}.nav-menu{display:flex;flex-direction:column;position:fixed;top:0;right:-100%;width:50%;height:100vh;background-color:#fffffff2;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:-5px 0 30px #0000001a;padding:5rem 1rem 2rem;opacity:0;visibility:hidden;transition:all .4s ease-in-out;z-index:100;border-left:1px solid rgba(255,255,255,.3);overflow-y:auto;justify-content:flex-start}.nav-menu.active{opacity:1;visibility:visible;right:0}.nav-menu li{margin:.6rem 0;text-align:left;width:100%;margin-left:0;opacity:0;transform:translate(20px);transition:opacity .4s ease,transform .4s ease;transition-delay:calc(.1s * var(--item-index, 0))}.nav-menu.active li{opacity:1;transform:translate(0)}.nav-menu a{display:block;padding:.5rem 0;font-size:1.2rem;border-bottom:1px solid rgba(0,0,0,.05);width:fit-content;min-width:45%}.nav-menu a:after{display:none}.navbar-container{padding:0 1rem;width:95%}}@media screen and (max-width: 576px){.navbar-container{padding:0 .8rem;width:95%}.logo a{font-size:1.5rem}.nav-menu{width:55%;padding:5rem .75rem 2rem}.nav-menu a{min-width:35%}}@media screen and (max-width: 400px){.navbar-container{padding:0 .5rem;width:98%}.logo a{font-size:1.3rem}.nav-menu{width:60%;padding:5rem .75rem 2rem}.nav-menu a{font-size:1.1rem;width:fit-content;min-width:30%}.menu-icon{font-size:1.3rem;padding:.4rem}}:root{--primary-color: #4f46e5;--primary-dark: #3730a3;--primary-light: #818cf8;--secondary-color: #06b6d4;--secondary-dark: #0891b2;--accent-color: #fb7185;--text-color: #0f172a;--light-text-color: #475569;--background-color: #f8fafc;--card-background: #ffffff;--border-color: #e2e8f0;--border-radius: 16px;--box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .08);--hover-shadow: 0 20px 40px -15px rgba(0, 0, 0, .12);--transition: all .4s cubic-bezier(.25, 1, .5, 1);--container-width: 1200px;--section-spacing: 120px;--gradient-bg: linear-gradient(120deg, #4f46e5 0%, #06b6d4 100%);--gradient-text: linear-gradient(to right, #4f46e5, #06b6d4)}html{scroll-behavior:smooth;font-size:16px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.8;color:var(--text-color);background-color:var(--background-color);background-image:radial-gradient(circle at 20% 20%,rgba(79,70,229,.05) 0%,transparent 25%),radial-gradient(circle at 80% 80%,rgba(6,182,212,.05) 0%,transparent 25%);background-attachment:fixed;overflow-x:hidden;margin:0;padding:0}#root{width:100%;margin:0;padding:0;text-align:left}.container{width:90%;max-width:var(--container-width);margin:0 auto;padding:0 1rem}.section-title{position:relative;font-size:2.75rem;font-weight:800;margin-bottom:3.5rem;text-align:center;color:var(--text-color);letter-spacing:-.5px}.section-title:after{content:"";position:absolute;left:50%;bottom:-15px;width:80px;height:4px;background:var(--gradient-bg);transform:translate(-50%);border-radius:2px}.loader-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:var(--background-color)}.loader{width:60px;height:60px;border-radius:50%;position:relative;animation:rotate 1s linear infinite}.loader:before,.loader:after{content:"";box-sizing:border-box;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:5px solid var(--primary-color);animation:prixClipFix 2s linear infinite}.loader:after{border-color:var(--secondary-color);animation:prixClipFix 2s linear infinite,rotate .5s linear infinite reverse;top:6px;right:6px;bottom:6px;left:6px}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes prixClipFix{0%{clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}25%{clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0)}50%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}75%{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}to{clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2rem;font-size:1rem;font-weight:600;text-align:center;text-decoration:none;border-radius:50px;cursor:pointer;transition:var(--transition);border:none;margin:.5rem;letter-spacing:.5px;position:relative;overflow:hidden;z-index:1}.primary-btn{background:var(--gradient-bg);color:#fff;box-shadow:0 4px 15px #4f46e54d}.primary-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #4f46e566}.primary-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(120deg,#06b6d4,#4f46e5);z-index:-1;opacity:0;transition:var(--transition)}.primary-btn:hover:before{opacity:1}.secondary-btn{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color);position:relative;z-index:1;overflow:hidden}.secondary-btn:before{content:"";position:absolute;top:0;left:0;width:0%;height:100%;background:var(--gradient-bg);z-index:-1;transition:var(--transition)}.secondary-btn:hover{color:#fff;border-color:transparent;transform:translateY(-3px)}.secondary-btn:hover:before{width:100%}.project-btn{font-size:.9rem;padding:.5rem 1.25rem;margin-right:10px}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;background:transparent;overflow:hidden;padding-top:80px;z-index:1}.hero-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 15% 30%,rgba(79,70,229,.08) 0%,transparent 25%),radial-gradient(circle at 85% 70%,rgba(6,182,212,.08) 0%,transparent 25%);z-index:-1}.hero-content{position:relative;z-index:2;max-width:850px;margin:0 auto;text-align:center}.hero-content h1{font-size:4.5rem;font-weight:800;margin-bottom:1.5rem;color:var(--text-color);letter-spacing:-1.5px;line-height:1.1;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fadeInUp .8s ease-out}.hero-content h2{font-size:2rem;font-weight:500;margin-bottom:1.75rem;color:var(--light-text-color);animation:fadeInUp .8s ease-out .2s forwards;opacity:0}.hero-content p{font-size:1.35rem;color:var(--light-text-color);margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto;animation:fadeInUp .8s ease-out .4s forwards;opacity:0}.hero-buttons{display:flex;justify-content:center;margin-top:2.5rem;gap:1rem;animation:fadeInUp .8s ease-out .6s forwards;opacity:0}.about-content{display:flex;flex-wrap:wrap;align-items:center;gap:4rem}.about-image-container{flex:1;min-width:300px;display:flex;justify-content:center;align-items:center;position:relative}.profile-image{width:320px;height:320px;object-fit:cover;border-radius:50%;box-shadow:var(--box-shadow);border:4px solid rgba(255,255,255,.8);transition:var(--transition);position:relative;z-index:1;aspect-ratio:1/1;filter:drop-shadow(0 0 10px rgba(79,70,229,.15))}.profile-image:before{content:"";position:absolute;top:-15px;left:-15px;width:calc(100% + 30px);height:calc(100% + 30px);border-radius:50%;background:var(--gradient-bg);z-index:-1;opacity:.15;transition:var(--transition)}.profile-image:hover{transform:scale(1.03);border-color:#fff;filter:drop-shadow(0 0 15px rgba(79,70,229,.25))}.profile-image:hover:before{opacity:.25}.about-text{flex:2;min-width:320px}.about-text p{margin-bottom:1.75rem;color:var(--light-text-color);font-size:1.15rem}.personal-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.75rem;margin:2.5rem 0}.info-item{position:relative;padding:1.25rem;border-radius:var(--border-radius);background-color:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--box-shadow);transition:var(--transition)}.info-item:hover{transform:translateY(-5px);box-shadow:var(--hover-shadow)}.info-title{font-weight:600;color:var(--primary-color);display:block;margin-bottom:.5rem}.info-value{color:var(--text-color)}.skills-section{background-color:#f8fafccc;position:relative;overflow:hidden}.skills-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 85% 15%,rgba(79,70,229,.05) 0%,transparent 25%),radial-gradient(circle at 15% 85%,rgba(6,182,212,.05) 0%,transparent 25%);z-index:0}.skills-container{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:3rem}.skill-category{margin-bottom:2.5rem;padding:2rem;border-radius:var(--border-radius);background-color:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--box-shadow);transition:var(--transition)}.skill-category:hover{transform:translateY(-5px);box-shadow:var(--hover-shadow)}.skill-category h3{font-size:1.5rem;margin-bottom:1.75rem;padding-bottom:.75rem;position:relative;color:var(--text-color)}.skill-category h3:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:3px;background:var(--gradient-bg);border-radius:2px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.skill-item{background-color:var(--card-background);padding:1rem;border-radius:12px;text-align:center;box-shadow:0 4px 6px #0000000a;transition:var(--transition);position:relative;overflow:hidden;cursor:default;font-weight:500;border:1px solid var(--border-color)}.skill-item:hover{transform:translateY(-5px);box-shadow:var(--hover-shadow);color:var(--primary-color);border-color:var(--primary-light)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2.5rem}.project-card{background-color:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow);transition:var(--transition);height:100%;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.2)}.project-card:hover{transform:translateY(-10px);box-shadow:var(--hover-shadow);border-color:#ffffff80}.project-image{position:relative;height:220px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.project-image:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.2) 100%);z-index:1;opacity:0;transition:var(--transition)}.project-card:hover .project-image img{transform:scale(1.05)}.project-card:hover .project-image:after{opacity:1}.project-content{padding:1.75rem;flex-grow:1;display:flex;flex-direction:column}.project-content h3{font-size:1.4rem;margin-bottom:1rem;color:var(--text-color);font-weight:700;letter-spacing:-.5px}.project-content p{color:var(--light-text-color);margin-bottom:1.75rem;flex-grow:1}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-tech span{background-color:#4f46e514;color:var(--primary-color);padding:.25rem .75rem;border-radius:50px;font-size:.85rem;font-weight:500;transition:var(--transition)}.project-tech span:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px)}.project-links{display:flex;gap:1rem;margin-top:auto}.contact-section{position:relative;background-color:var(--background-color);overflow:hidden}.contact-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 15% 15%,rgba(79,70,229,.05) 0%,transparent 25%),radial-gradient(circle at 85% 85%,rgba(6,182,212,.05) 0%,transparent 25%);z-index:0}.contact-container{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem}.contact-info,.contact-form{padding:2.5rem;background-color:#fffc;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:var(--border-radius);box-shadow:var(--box-shadow);transition:var(--transition);border:1px solid rgba(255,255,255,.3);height:100%}.contact-info:hover,.contact-form:hover{transform:translateY(-5px);box-shadow:var(--hover-shadow)}.contact-heading,.form-heading{font-size:1.6rem;margin-bottom:1rem;color:var(--text-color);font-weight:700;position:relative;display:inline-block;padding-bottom:.5rem;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.contact-heading:after,.form-heading:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:3px;background:var(--gradient-bg);border-radius:2px}.contact-subtitle,.form-subtitle{color:var(--light-text-color);margin-bottom:2rem;font-size:1.05rem}.contact-item{display:flex;align-items:flex-start;margin-bottom:2rem;padding:1.25rem;background-color:#ffffff80;border-radius:12px;transition:var(--transition);border:1px solid rgba(226,232,240,.6);flex-wrap:wrap}.contact-item:hover{transform:translateY(-3px);box-shadow:0 10px 20px #0000000d;background-color:#ffffffb3;border-color:var(--primary-light)}.contact-icon{margin-right:1rem;min-width:3rem;color:var(--primary-color);background:#4f46e51a;padding:.75rem;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0}.contact-item:hover .contact-icon{transform:scale(1.1);background:var(--primary-color);color:#fff}.contact-details{flex:1;min-width:0;overflow:hidden}.contact-details h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--text-color);font-weight:600}.contact-details p,.contact-details a{margin-bottom:0;font-size:.95rem;display:block;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;max-width:100%;text-overflow:ellipsis}.contact-details a{color:var(--primary-color);text-decoration:none;transition:var(--transition)}.contact-details a:hover{color:var(--primary-dark);text-decoration:underline}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:2rem;position:relative;overflow:hidden}.form-group:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--gradient-bg);transition:width .4s cubic-bezier(.25,1,.5,1)}.form-group:focus-within:after{width:100%}.input-icon{position:absolute;top:50%;left:1rem;transform:translateY(-50%);color:var(--light-text-color);pointer-events:none;transition:var(--transition);z-index:2}.form-group:focus-within .input-icon{color:var(--primary-color);transform:translateY(-50%) scale(1.1)}.form-group textarea~.input-icon{top:1.5rem;transform:none}.form-group:focus-within textarea~.input-icon{transform:scale(1.1)}.form-group input,.form-group textarea,.form-group select{width:100%;background-color:#fff9;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem 1rem 1rem 3rem;font-size:1rem;color:var(--text-color);transition:var(--transition);outline:none;box-shadow:inset 0 1px 3px #0000000d;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group textarea{resize:none;min-height:150px}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 5px 15px #4f46e51a;background-color:#fffc;transform:translateY(-2px)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--light-text-color);opacity:.7;transition:opacity .3s ease}.form-group input:focus::placeholder,.form-group textarea:focus::placeholder{opacity:0}.form-group label{position:absolute;top:-10px;left:2.75rem;font-size:.85rem;padding:0 8px;background-color:#fff;color:var(--primary-color);font-weight:500;border-radius:4px;opacity:0;transform:translateY(10px);transition:var(--transition);pointer-events:none;box-shadow:0 2px 5px #00000005}.form-group input:focus+label,.form-group textarea:focus+label,.form-group input:not(:placeholder-shown)+label,.form-group textarea:not(:placeholder-shown)+label{opacity:1;transform:translateY(0)}.contact-form form{display:flex;flex-direction:column}.contact-form h3{position:relative;display:inline-block;margin-bottom:.75rem;animation:fadeInRight 1s ease-out}.form-submit{display:flex;justify-content:flex-start;margin-top:1rem}.contact-form button{align-self:flex-start;margin-top:0;position:relative;overflow:hidden;padding:.85rem 2.5rem;transition:all .5s cubic-bezier(.25,1,.5,1);display:flex;align-items:center;gap:.75rem}.contact-form button svg{transition:transform .3s ease}.contact-form button:hover svg{transform:translate(3px)}.contact-form button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(120deg,#06b6d4,#4f46e5);z-index:-1;opacity:0;transition:opacity .5s ease}.contact-form button:hover:before{opacity:1}.contact-form button:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:#fff;transition:width .4s cubic-bezier(.25,1,.5,1)}.contact-form button:hover:after{width:100%}.contact-form button:active{transform:scale(.98)}.contact-alert{margin-top:1.5rem;padding:1rem;border-radius:8px;text-align:center;font-weight:500;transition:all .4s cubic-bezier(.25,1,.5,1);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);max-height:0;overflow:hidden;padding:0}.contact-alert.success{background-color:#06b6d41a;color:#0891b2;border:1px solid rgba(6,182,212,.2);opacity:1;transform:translateY(0);max-height:60px;padding:1rem}.contact-alert.error{background-color:#fb71851a;color:#f43f5e;border:1px solid rgba(251,113,133,.2);opacity:1;transform:translateY(0);max-height:60px;padding:1rem}.contact-alert svg{margin-right:8px}.form-group:nth-child(1){animation:fadeInUp .5s ease-out .1s forwards;opacity:0}.form-group:nth-child(2){animation:fadeInUp .5s ease-out .2s forwards;opacity:0}.form-row .form-group{margin-bottom:0}.form-group:nth-child(3){animation:fadeInUp .5s ease-out .3s forwards;opacity:0}.form-group:nth-child(4){animation:fadeInUp .5s ease-out .4s forwards;opacity:0}.form-submit{animation:fadeInUp .5s ease-out .5s forwards;opacity:0}.social-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.social-links a{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;background-color:#fff9;border-radius:50px;transition:var(--transition);color:var(--text-color);font-weight:500;border:1px solid rgba(226,232,240,.8);font-size:.9rem}.social-links a:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-3px);box-shadow:var(--box-shadow)}.social-links a svg{font-size:1.1rem}.footer{padding:3.5rem 0 2rem;background-color:#fffc;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-top:1px solid rgba(226,232,240,.8);position:relative}.footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 15% 15%,rgba(79,70,229,.03) 0%,transparent 25%),radial-gradient(circle at 85% 85%,rgba(6,182,212,.03) 0%,transparent 25%);z-index:0}.footer-content{position:relative;z-index:1;display:grid;grid-template-columns:1fr 2fr 1fr;gap:2rem;align-items:flex-start}.footer-logo a{display:flex;align-items:center;text-decoration:none}.footer-logo-text{font-size:1.75rem;font-weight:800;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px}.footer-logo-dot{width:8px;height:8px;background:var(--accent-color);border-radius:50%;display:inline-block;margin-left:3px}.footer-links{display:flex;justify-content:space-around;gap:2rem}.footer-nav h4,.footer-social h4{font-size:1.1rem;margin-bottom:1.25rem;font-weight:700;color:var(--text-color);position:relative;display:inline-block;padding-bottom:.5rem}.footer-nav h4:after,.footer-social h4:after{content:"";position:absolute;width:40px;height:2px;bottom:0;left:0;background:var(--gradient-bg);border-radius:2px}.footer-nav ul{list-style:none;margin:0;padding:0}.footer-nav ul li{margin-bottom:.75rem}.footer-nav ul li a{color:var(--light-text-color);transition:var(--transition);font-weight:500;position:relative;font-size:.95rem;padding:.25rem 0;display:inline-block}.footer-nav ul li a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background:var(--gradient-bg);transition:var(--transition);border-radius:2px}.footer-nav ul li a:hover{color:var(--primary-color)}.footer-nav ul li a:hover:after{width:100%}.social-icons{display:flex;gap:1rem}.social-icons a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#fff9;border-radius:50%;color:var(--primary-color);transition:var(--transition);border:1px solid rgba(226,232,240,.8);font-size:1.1rem}.social-icons a:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-3px);box-shadow:var(--box-shadow)}.footer-copyright{text-align:right}.footer-copyright p{margin-bottom:.5rem;color:var(--light-text-color);font-size:.9rem;font-weight:500}.footer-credits{font-size:.85rem!important;opacity:.8}@media screen and (max-width: 992px){.footer-content{grid-template-columns:1fr 1fr}.footer-copyright{grid-column:span 2;text-align:center;margin-top:1.5rem}.about-image-container{display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:2rem}.profile-image{width:280px;height:280px}}@media screen and (max-width: 768px){.footer{padding:2.5rem 0 1.5rem}.footer-content{grid-template-columns:1fr;gap:2rem;text-align:center}.footer-logo{justify-content:center;display:flex}.footer-links{flex-direction:column;gap:2rem}.footer-nav h4:after,.footer-social h4:after{left:50%;transform:translate(-50%)}.footer-nav ul li a:after{left:50%;transform:translate(-50%);width:0}.footer-nav ul li a:hover:after{width:50%}.social-icons{justify-content:center}.footer-copyright{grid-column:1;text-align:center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@media screen and (max-width: 1200px){.container{width:90%;max-width:992px}.section{padding:100px 0}.hero-content h1{font-size:3.2rem}}@media screen and (max-width: 992px){html{font-size:15px}.section-title{font-size:2.2rem}.hero-content h1{font-size:2.8rem}.hero-content h2{font-size:1.5rem}.about-content{flex-direction:column;gap:3rem}.about-image-container{display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:2rem}.profile-image{width:280px;height:280px}.projects-grid,.personal-info{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width: 768px){html{font-size:14px}.section{padding:80px 0;margin-bottom:80px}.section-title{font-size:2rem;margin-bottom:2.5rem}.hero-content h1{font-size:2.5rem}.hero-content h2{font-size:1.35rem}.hero-content p{font-size:1rem}.hero-buttons{flex-direction:column;align-items:flex-start;gap:1rem}.hero-buttons .btn{width:100%;text-align:center}.skills-container,.contact-container{flex-direction:column}.skills-grid{grid-template-columns:repeat(2,1fr)}.projects-grid{grid-template-columns:1fr;gap:2rem}.skill-category,.contact-info,.contact-form{width:100%}.social-links{flex-wrap:wrap;justify-content:center}.footer-content{flex-direction:column;text-align:center;gap:2rem}.footer-links{flex-direction:column;gap:2rem}}@media screen and (max-width: 576px){.container{width:95%;padding:0 .8rem}.section{padding:60px 0;margin-bottom:60px}.hero-content h1{font-size:2.2rem}.hero-content h2{font-size:1.2rem}.section-title{font-size:1.8rem;margin-bottom:2rem}.about-text p{font-size:.95rem}.hero-buttons .btn{padding:.75rem 1.5rem}.personal-info{grid-template-columns:1fr}.about-image-container{margin-bottom:1.5rem}.profile-image{width:220px;height:220px}.project-image{height:200px}.project-content{padding:1.5rem}.project-content h3{font-size:1.2rem}.form-group input,.form-group textarea,.form-group select{padding:1rem 1rem 1rem 3rem;font-size:.9rem}.contact-item{flex-direction:column;align-items:flex-start}.contact-icon{margin-bottom:.75rem;margin-right:0}.contact-details{width:100%}}@media screen and (max-width: 400px){html{font-size:13px}.container{width:98%;padding:0 .5rem}.hero-content h1{font-size:2rem}.hero-content h2{font-size:1.1rem}.section-title{font-size:1.6rem}.skills-grid{grid-template-columns:1fr}.project-image{height:180px}.project-content{padding:1.25rem}.project-links{flex-direction:column;gap:.75rem}.project-links .btn{width:100%;margin-right:0;text-align:center}.form-row{flex-direction:column}.form-row .form-group{width:100%}.project-tech{flex-wrap:wrap}.project-tech span{margin-bottom:.5rem}.contact-item{padding:1rem}.contact-details a{font-size:.85rem;line-height:1.4}}:root{--primary-color: #4f46e5;--primary-dark: #3730a3;--primary-light: #818cf8;--secondary-color: #06b6d4;--secondary-dark: #0891b2;--accent-color: #fb7185;--text-color: #0f172a;--light-text-color: #475569;--background-color: #f8fafc;--white-color: #ffffff;--dark-bg-color: #121212;--box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .08);--hover-shadow: 0 20px 40px -15px rgba(0, 0, 0, .12);--transition: all .4s cubic-bezier(.25, 1, .5, 1);--border-radius: 16px;--container-width: 1200px;--gradient-bg: linear-gradient(120deg, #4f46e5 0%, #06b6d4 100%);--gradient-text: linear-gradient(to right, #4f46e5, #06b6d4)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:80px}body{font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.8;color:var(--text-color);background-color:var(--background-color);background-image:radial-gradient(circle at 20% 20%,rgba(79,70,229,.05) 0%,transparent 25%),radial-gradient(circle at 80% 80%,rgba(6,182,212,.05) 0%,transparent 25%);background-attachment:fixed;overflow-x:hidden}a{text-decoration:none;color:var(--primary-color);transition:var(--transition)}a:hover{color:var(--secondary-color)}button{cursor:pointer;border:none;outline:none;background:var(--gradient-bg);color:var(--white-color);padding:.85rem 2rem;border-radius:50px;font-weight:600;transition:var(--transition);box-shadow:0 4px 15px #4f46e54d;letter-spacing:.5px;position:relative;overflow:hidden;z-index:1}button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(120deg,#06b6d4,#4f46e5);z-index:-1;opacity:0;transition:var(--transition)}button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #4f46e566}button:hover:before{opacity:1}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:1rem;font-weight:700;color:var(--text-color);letter-spacing:-.5px}h1{font-size:3.5rem;font-weight:800}h2{font-size:2.5rem}h3{font-size:1.75rem}h4{font-size:1.5rem}p{margin-bottom:1.5rem;color:var(--light-text-color)}.container{width:90%;max-width:var(--container-width);margin:0 auto;padding:0 20px}.section{padding:120px 0;position:relative}.section-title{font-size:2.75rem;text-align:center;margin-bottom:3.5rem;position:relative;font-weight:800;letter-spacing:-.5px}.section-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:80px;height:4px;background:var(--gradient-bg);border-radius:2px}img{max-width:100%;height:auto;display:block}ul,ol{margin-left:1.5rem;margin-bottom:1.5rem}li{margin-bottom:.5rem;color:var(--light-text-color)}.glass-card{background-color:#fffc;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:var(--border-radius);box-shadow:var(--box-shadow);border:1px solid rgba(255,255,255,.3);transition:var(--transition)}.glass-card:hover{transform:translateY(-5px);box-shadow:var(--hover-shadow);border-color:#ffffff80}::selection{background-color:var(--primary-color);color:#fff}@media (max-width: 1200px){.container{padding:0 30px}.section{padding:100px 0}h1{font-size:3.2rem}h2{font-size:2.3rem}}@media (max-width: 992px){html{font-size:15px}.section-title{font-size:2.4rem}h1{font-size:2.8rem}h2{font-size:2.1rem}}@media (max-width: 768px){html{font-size:14px}.section{padding:80px 0}.section-title{font-size:2.2rem;margin-bottom:2.5rem}h1{font-size:2.5rem}h2{font-size:1.8rem}}@media (max-width: 576px){.container{padding:0 20px;width:95%}.section{padding:60px 0}.section-title{font-size:2rem}h1{font-size:2.2rem}h2{font-size:1.6rem}}@media (hover: none) and (pointer: coarse){a,button,.interactive{padding:.75rem;min-height:44px;min-width:44px}.btn{padding:.85rem 1.75rem}a:hover,button:hover,.interactive:hover{transform:none!important}.touch-active{opacity:.7;transform:scale(.97)!important;transition:transform .1s ease-in-out,opacity .1s ease-in-out}*{-webkit-overflow-scrolling:touch}a,button,.interactive{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,select,textarea{font-size:16px!important}.navbar,.fixed-element{-webkit-backface-visibility:hidden;backface-visibility:hidden}html,body{overscroll-behavior-y:contain}}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom))}.navbar{padding-top:max(1rem,env(safe-area-inset-top))}}.orientation-changing{visibility:hidden;pointer-events:none;position:fixed;width:100%;height:100%}.hero-section{min-height:calc(100 * var(--vh, 1vh))}.swiped-left{animation:swipeLeft .3s ease-out}.swiped-right{animation:swipeRight .3s ease-out}@keyframes swipeLeft{0%{transform:translate(0)}50%{transform:translate(-20px)}to{transform:translate(0)}}@keyframes swipeRight{0%{transform:translate(0)}50%{transform:translate(20px)}to{transform:translate(0)}}
