:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:#646cff;text-decoration:none}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1;margin:0}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s ease}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){a:hover{color:#747bff}button{background-color:#f9f9f9}}body{background-color:#000;color:#fff;overflow-x:hidden;scroll-behavior:smooth}*{scroll-behavior:smooth}a:focus,button:focus{outline:2px solid #fff;outline-offset:2px}*{transition:color .3s ease,background-color .3s ease,border-color .3s ease}@media (max-width: 768px){*{-webkit-tap-highlight-color:transparent}}.header{position:fixed;top:0;left:0;right:0;height:70px;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;padding:0 clamp(1rem,3vw,2rem);z-index:1000;transition:all .3s ease}.header:hover{background:#000000fa;border-bottom-color:#fff3}.header-left{display:flex;align-items:center;gap:clamp(.5rem,2vw,1rem)}.header-left img{width:clamp(35px,8vw,45px);height:clamp(35px,8vw,45px);border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.2);transition:all .3s ease}.header-left img:hover{border-color:#fff6;transform:scale(1.05)}.header-left span{font-size:clamp(.9rem,2.5vw,1.1rem);font-weight:500;color:#fff;white-space:nowrap}.header-links{display:flex;gap:clamp(1rem,3vw,2rem);align-items:center}.header-links a{color:#ccc;text-decoration:none;font-weight:500;font-size:clamp(.8rem,2vw,.95rem);transition:all .3s ease;position:relative;padding:.5rem 0;white-space:nowrap}.header-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,#fff,#e0e0e0);transition:width .3s ease}.header-links a:hover{color:#fff}.header-links a:hover:after{width:100%}@media (max-width: 768px){.header{height:60px;padding:0 1rem}.header-links{gap:.8rem}.header-links a{font-size:.8rem;padding:.3rem 0}}@media (max-width: 480px){.header{height:55px;padding:0 .8rem}.header-left span{display:none}.header-links{gap:.6rem}.header-links a{font-size:.75rem}}@media (min-width: 1200px){.header{height:75px;padding:0 3rem}.header-links{gap:2.5rem}.header-links a{font-size:1rem}}.hero{width:100%;background:linear-gradient(135deg,#000,#1a1a1a);color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:5rem 1.5rem;text-align:center}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.1) 0%,transparent 50%);animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:1rem;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;z-index:1;line-height:1.2}.hero p{font-size:clamp(1rem,2.5vw,1.3rem);margin-bottom:.5rem;opacity:.9;position:relative;z-index:1;line-height:1.4;max-width:800px}.hero p:last-of-type{font-size:clamp(.9rem,2vw,1.1rem);opacity:.7;margin-bottom:2.5rem;max-width:600px}.hero-buttons{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;position:relative;z-index:1;max-width:600px}.hero-buttons a{padding:clamp(.7rem,2vw,1rem) clamp(1.2rem,3vw,1.8rem);border:2px solid #fff;background:#ffffff1a;color:#fff;text-decoration:none;border-radius:8px;font-size:clamp(.9rem,2vw,1.1rem);font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;white-space:nowrap;min-width:140px;text-align:center}.hero-buttons a:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.hero-buttons a:hover:before{left:100%}.hero-buttons a:hover{background:#fff3;color:#fff;transform:translateY(-2px);box-shadow:0 10px 20px #0000004d}@media (max-width: 768px){.hero{padding:3rem 1rem;min-height:90vh}.hero-buttons{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:280px}.hero-buttons a{width:100%;min-width:unset}}@media (max-width: 480px){.hero{padding:2rem 1rem}.hero h1{margin-bottom:.8rem}.hero p{margin-bottom:.4rem}.hero p:last-of-type{margin-bottom:2rem}}@media (min-width: 1200px){.hero{padding:6rem 2rem}.hero-buttons{gap:1.5rem}.hero-buttons a{padding:1rem 2rem}}.about{padding:clamp(3rem,8vw,5rem) 0;background:linear-gradient(180deg,#000,#0a0a0a);position:relative;overflow:hidden}.about:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="1" fill="rgba(74,144,226,0.1)"/></svg>') repeat;animation:float 20s ease-in-out infinite;pointer-events:none}.about h2{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:clamp(1.5rem,4vw,2.5rem);background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;position:relative}.about h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:clamp(40px,8vw,60px);height:3px;background:linear-gradient(90deg,#fff,#e0e0e0);border-radius:2px}.about p{color:#ccc;line-height:1.8;font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:clamp(2rem,5vw,3.5rem);text-align:center;max-width:800px;margin-left:auto;margin-right:auto;padding:0 clamp(1rem,3vw,2rem)}.about h3{font-size:clamp(1.5rem,4vw,2rem);color:#fff;margin-bottom:clamp(1rem,3vw,1.5rem);text-align:center;font-weight:600}.education-content{display:flex;align-items:center;gap:clamp(2rem,5vw,3rem);max-width:900px;margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem);background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.education-list{flex:1;list-style:none;padding:0;margin:0}.education-list li{margin-bottom:clamp(1rem,3vw,1.5rem);padding:clamp(1rem,3vw,1.5rem);background:#ffffff08;border-radius:8px;border-left:3px solid rgba(255,255,255,.2);transition:all .3s ease}.education-list li:hover{background:#ffffff0d;border-left-color:#fff6;transform:translate(5px)}.education-list li strong{color:#fff;font-size:clamp(1rem,2.5vw,1.2rem);font-weight:600;display:block;margin-bottom:.5rem;line-height:1.3}.education-list li br+span{color:#ccc;font-size:clamp(.9rem,2vw,1rem);line-height:1.4}.education-logo{width:clamp(80px,20vw,120px);height:auto;opacity:.9;transition:all .3s ease;flex-shrink:0}.education-logo:hover{opacity:1;transform:scale(1.05)}@media (max-width: 768px){.education-content{flex-direction:column;text-align:center;gap:2rem;padding:1.5rem;margin:0 1rem}.education-logo{width:100px}}@media (max-width: 480px){.about{padding:2rem 0}.about p{padding:0 1rem;font-size:.95rem}.education-content{padding:1rem;margin:0 .5rem}.education-list li{padding:.8rem}.education-logo{width:80px}}@media (min-width: 1200px){.about{padding:6rem 0}.education-content{padding:3rem}.education-list li{padding:2rem}}.experience{padding:clamp(3rem,8vw,5rem) 0;background:linear-gradient(180deg,#000,#0a0a0a);position:relative;overflow:hidden}.experience:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="1" fill="rgba(74,144,226,0.1)"/></svg>') repeat;animation:float 20s ease-in-out infinite;pointer-events:none}.experience h2{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:clamp(1.5rem,4vw,2.5rem);background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;position:relative}.experience h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:clamp(40px,8vw,60px);height:3px;background:linear-gradient(90deg,#fff,#e0e0e0);border-radius:2px}.company-header{display:flex;justify-content:space-between;align-items:center;margin-top:clamp(1.5rem,4vw,2.5rem);padding:clamp(1rem,3vw,1.5rem);background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.company-header:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.logo-wrapper{background:#ffffff1a;padding:clamp(8px,2vw,12px);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.org-logo{width:clamp(50px,12vw,80px);height:auto;opacity:.9;display:block;transition:all .3s ease}.logo-wrapper:hover .org-logo{opacity:1;transform:scale(1.05)}@media (max-width: 600px){.logo-wrapper{display:none}.company-header{flex-direction:column;text-align:center;gap:1rem}}.company-group h3{font-size:clamp(1.1rem,3vw,1.5rem);color:#fff;margin:0;font-weight:600;line-height:1.3}.location{font-weight:400;color:#aaa;font-size:clamp(.8rem,2vw,1rem);margin-top:.25rem}.role-item{margin-left:clamp(.5rem,2vw,1.5rem);margin-bottom:clamp(1.5rem,4vw,2.5rem);padding:clamp(1rem,3vw,1.5rem);background:#ffffff08;border-radius:8px;border-left:3px solid rgba(255,255,255,.2);transition:all .3s ease}.role-item:hover{background:#ffffff0d;border-left-color:#fff6;transform:translate(5px)}.role-item h4{font-size:clamp(1rem,2.5vw,1.3rem);margin:0 0 .5rem;color:#fff;font-weight:500;line-height:1.3}.period{font-size:clamp(.8rem,2vw,.95rem);color:#aaa;margin-bottom:1rem;font-weight:500;display:inline-block;padding:.25rem .75rem;background:#ffffff1a;border-radius:15px}.role-item ul{list-style-type:none;margin:0;color:#ccc}.role-item ul li{margin-bottom:clamp(.5rem,2vw,.75rem);line-height:1.6;position:relative;padding-left:1.5rem;font-size:clamp(.9rem,2vw,1rem)}.role-item ul li:before{content:"▸";position:absolute;left:0;color:#fff;font-weight:700}@media (max-width: 768px){.role-item{margin-left:.5rem;padding:1rem}.company-header{margin-top:1.5rem;padding:1rem}}@media (max-width: 480px){.experience{padding:2rem 0}.company-header{margin-top:1rem;padding:.8rem}.role-item{margin-left:.3rem;padding:.8rem}.role-item ul li{padding-left:1.2rem}}@media (min-width: 1200px){.experience{padding:6rem 0}.company-header{margin-top:3rem;padding:2rem}.role-item{margin-left:2rem;padding:2rem}}.contact{padding:clamp(3rem,8vw,5rem) 0;background:linear-gradient(180deg,#0a0a0a,#000);position:relative;overflow:hidden}.contact:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="1" fill="rgba(74,144,226,0.1)"/></svg>') repeat;animation:float 20s ease-in-out infinite;pointer-events:none}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}.contact h2{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:clamp(1rem,3vw,1.5rem);background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;position:relative}.contact h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:clamp(40px,8vw,60px);height:3px;background:linear-gradient(90deg,#fff,#e0e0e0);border-radius:2px}.contact p{text-align:center;color:#ccc;font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:clamp(2rem,5vw,3rem);max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;padding:0 clamp(1rem,3vw,2rem)}.contact-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:clamp(.8rem,2vw,1.2rem);max-width:500px;margin:0 auto;padding:0 clamp(1rem,3vw,2rem)}.contact-list li{margin:0}.contact-list a{display:flex;align-items:center;padding:clamp(1rem,3vw,1.3rem) clamp(1.2rem,3vw,1.5rem);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;text-decoration:none;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;font-size:clamp(.9rem,2vw,1rem)}.contact-list a:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.contact-list a:hover:before{left:100%}.contact-list a:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-3px);box-shadow:0 10px 25px #0000004d}.contact-list a span{margin-left:clamp(.8rem,2vw,1rem);font-weight:500;word-break:break-word}@media (max-width: 768px){.contact-list{gap:1rem;padding:0 1rem}.contact-list a{padding:1rem 1.2rem}}@media (max-width: 480px){.contact{padding:2rem 0}.contact p{padding:0 1rem;font-size:.95rem}.contact-list{padding:0 .5rem}.contact-list a{padding:.8rem 1rem;font-size:.85rem}.contact-list a span{margin-left:.6rem}}@media (min-width: 1200px){.contact{padding:6rem 0}.contact-list{max-width:600px}.contact-list a{padding:1.5rem 2rem}}.project-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;height:100%;display:flex;flex-direction:column}.project-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}.project-img-wrapper{position:relative;overflow:hidden;height:clamp(180px,25vw,220px);background:linear-gradient(135deg,#1a1a1a,#2a2a2a);display:flex;align-items:center;justify-content:center}.project-img-wrapper img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transition:transform .3s ease;aspect-ratio:auto;flex-shrink:0}.project-card:hover .project-img-wrapper img{transform:scale(1.05)}.project-date{position:absolute;top:clamp(.8rem,2vw,1rem);right:clamp(.8rem,2vw,1rem);background:#000c;color:#fff;padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,2vw,1rem);border-radius:20px;font-size:clamp(.75rem,2vw,.85rem);font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-card h3{color:#fff;font-size:clamp(1.1rem,3vw,1.4rem);margin:clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem) clamp(.8rem,2vw,1rem) clamp(1.2rem,3vw,1.5rem);font-weight:600;line-height:1.4}.project-card p{color:#ccc;margin:0 clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem);line-height:1.6;font-size:clamp(.85rem,2vw,.95rem);flex-grow:1}.project-link{display:inline-block;margin:0 clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem);color:#fff;text-decoration:none;font-weight:500;padding:clamp(.6rem,2vw,.8rem) clamp(1.2rem,3vw,1.5rem);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;transition:all .3s ease;position:relative;overflow:hidden;font-size:clamp(.85rem,2vw,.95rem);align-self:flex-start}.project-links{display:flex;flex-direction:column;gap:.8rem;margin:0 clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem) clamp(1.2rem,3vw,1.5rem)}.project-link.primary-link{align-self:flex-start;margin:0}.project-link.additional-link{align-self:flex-start;margin:0;background:#ffffff14;border-color:#ffffff26;font-size:clamp(.8rem,2vw,.9rem);padding:clamp(.5rem,2vw,.7rem) clamp(1rem,3vw,1.3rem)}.project-link.additional-link:hover{background:#ffffff26;border-color:#ffffff4d}.project-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.project-link:hover:before{left:100%}.project-link:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px);box-shadow:0 8px 20px #0000004d}@media (max-width: 768px){.project-img-wrapper{height:200px;display:flex;align-items:center;justify-content:center}.project-card h3{font-size:1.2rem;margin:1.2rem 1.2rem .8rem}.project-card p{font-size:.9rem;margin:0 1.2rem 1.2rem}.project-links{margin:0 1.2rem 1.2rem;gap:.6rem}.project-link{font-size:.85rem;padding:.6rem 1.2rem}.project-link.additional-link{font-size:.8rem;padding:.5rem 1rem}}@media (max-width: 480px){.project-img-wrapper{height:180px;display:flex;align-items:center;justify-content:center}.project-card h3{font-size:1.1rem;margin:1rem 1rem .6rem}.project-card p{font-size:.85rem;margin:0 1rem 1rem}.project-links{margin:0 1rem 1rem;gap:.5rem}.project-link{font-size:.8rem;padding:.5rem 1rem}.project-link.additional-link{font-size:.75rem;padding:.4rem .8rem}.project-date{font-size:.7rem;padding:.3rem .6rem}}.project-filter{margin-bottom:clamp(2rem,4vw,3rem);width:100%}.filter-tabs{display:flex;flex-wrap:wrap;gap:clamp(.5rem,2vw,1rem);justify-content:center;align-items:center}.filter-tab{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:clamp(20px,4vw,30px);padding:clamp(.6rem,2vw,1rem) clamp(1.2rem,3vw,1.8rem);color:#fffc;font-size:clamp(.85rem,2vw,1rem);font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;white-space:nowrap;display:flex;align-items:center;gap:.5rem}.filter-tab:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.filter-tab:hover:before{left:100%}.filter-tab:hover{background:#ffffff26;border-color:#ffffff4d;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #0003}.filter-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#fff6;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.filter-tab.active:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-3px);box-shadow:0 12px 30px #667eea66}.tab-text{font-weight:600;letter-spacing:.5px}.tab-count{background:#fff3;border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600;min-width:20px;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.filter-tab.active .tab-count{background:#ffffff40;color:#fff}@media (max-width: 768px){.filter-tabs{gap:.5rem;justify-content:flex-start;overflow-x:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{flex-shrink:0;padding:.5rem 1rem;font-size:.85rem;min-width:max-content}.tab-count{font-size:.7rem;padding:.15rem .4rem}}@media (max-width: 480px){.filter-tabs{gap:.4rem;padding:.3rem 0}.filter-tab{padding:.4rem .8rem;font-size:.8rem;min-width:max-content;white-space:nowrap}.tab-text{font-weight:500}.tab-count{font-size:.65rem;padding:.1rem .3rem}}.filter-tab{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.filter-tab.active{animation:activeTabPulse .3s ease-out}@keyframes activeTabPulse{0%{transform:translateY(-2px) scale(1)}50%{transform:translateY(-2px) scale(1.05)}to{transform:translateY(-2px) scale(1)}}.projects-page{padding:clamp(3rem,8vw,5rem) 0;background:linear-gradient(180deg,#000,#0a0a0a);min-height:100vh}.projects-page h1{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:clamp(1.5rem,4vw,2.5rem);background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;position:relative}.projects-page h1:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:clamp(40px,8vw,60px);height:3px;background:linear-gradient(90deg,#fff,#e0e0e0);border-radius:2px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(300px,40vw,400px),1fr));gap:clamp(1.5rem,4vw,2.5rem);max-width:1400px;margin:0 auto;padding:0 clamp(1rem,3vw,2rem);animation:fadeInUp .6s ease-out}.no-projects{text-align:center;padding:clamp(3rem,8vw,5rem) 0;color:#ffffffb3;font-size:clamp(1rem,2.5vw,1.2rem);animation:fadeIn .5s ease-out}.no-projects p{margin:0;font-style:italic}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}}@media (max-width: 480px){.projects-page{padding:2rem 0}.projects-grid{gap:1rem;padding:0 .5rem}}@media (min-width: 1200px){.projects-page{padding:6rem 0}.projects-grid{gap:3rem;padding:0 3rem}}@media (min-width: 768px) and (max-width: 1199px){.projects-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}}
