:root{--p-h:207;--p-s:98%;--p-l:31%;--primary:hsl(var(--p-h), var(--p-s), var(--p-l));--primary-light:hsl(var(--p-h), 98%, 50%);--primary-dark:hsl(var(--p-h), 98%, 20%);--primary-glow:hsla(var(--p-h), var(--p-s), 50%, .15);--accent-h:350;--accent:hsl(var(--accent-h), 100%, 70%);--flutter-gradient:linear-gradient(135deg, #02579d 0%, #0281c0 50%, #02aef2 100%);--flutter-gradient-soft:linear-gradient(135deg, #02579d0d 0%, #02aef20d 100%);--bg-main:#f9fafb;--bg-card:#fff;--text-main:#1f2933;--text-muted:#516170;--text-light:#7e8c9a;--border-subtle:#c2ccd64d;--border-glow:hsla(var(--p-h), var(--p-s), 50%, .2);--shadow-soft:0 4px 20px -4px #0000000d;--shadow-premium:0 20px 40px -12px #02569b1f;--shadow-glow:0 0 20px hsla(var(--p-h), var(--p-s), 50%, .15);--glass-bg:#ffffffb3;--glass-border:#fff6;--glass-blur:16px;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:32px;--radius-full:9999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--transition-premium:.6s var(--ease-out);--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--z-fixed:1030}[data-theme=dark]{--bg-main:#0c0f13;--bg-card:#131a20;--text-main:#f3f5f7;--text-muted:#b8bfc7;--text-light:#8f99a3;--border-subtle:#3d4d5c4d;--border-glow:hsla(var(--p-h), 98%, 60%, .2);--glass-bg:#0f1419b3;--glass-border:#ffffff14;--shadow-soft:0 4px 20px -4px #0000004d;--shadow-premium:0 25px 50px -12px #00000080;--shadow-glow:0 0 25px hsla(var(--p-h), 98%, 60%, .1);--white:var(--bg-card)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--flutter-gradient);border-radius:var(--radius-full);border:2px solid var(--bg-main)}::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}.progress-bar{background:var(--flutter-gradient);z-index:2000;width:0%;height:4px;transition:width .1s ease-out;position:fixed;top:0;left:0}body{color:var(--text-main);background-color:var(--bg-main);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;line-height:1.6;transition:background-color .5s;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%), #1389fd0d, transparent 40%);z-index:1000;width:100vw;height:100vh;position:fixed;top:0;left:0}h1,h2,h3,h4{color:var(--text-main);letter-spacing:-.02em}h1{font-size:clamp(3rem,8vw,5rem);font-weight:800}h2{font-size:clamp(2rem,5vw,3rem);font-weight:800}h3{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700}h4{font-size:1.1rem;font-weight:600}a{color:var(--primary-light);transition:opacity .3s var(--ease-out);text-decoration:none}a:hover{opacity:.8}img{max-width:100%;height:auto;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(2.5)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in,.animate-slide-left,.animate-slide-right,.animate-scale{opacity:0}.animate-fade-in.animated{animation:fadeIn .8s var(--ease-out) forwards}.animate-slide-left.animated{animation:slideInFromLeft .8s var(--ease-out) forwards}.animate-slide-right.animated{animation:slideInFromRight .8s var(--ease-out) forwards}.animate-scale.animated{animation:scaleIn .8s var(--ease-out) forwards}.animate-delay-100.animated{animation-delay:.1s}.animate-delay-200.animated{animation-delay:.2s}.animate-delay-300.animated{animation-delay:.3s}.animate-delay-400.animated{animation-delay:.4s}.animate-delay-500.animated{animation-delay:.5s}.animate-delay-600.animated{animation-delay:.6s}.header{background:var(--glass-bg);width:calc(100% - 3rem);max-width:1200px;-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-full);z-index:1000;box-shadow:var(--shadow-premium), 0 4px 20px #0000001a;transition:all .4s var(--ease-out);padding:.75rem 1.75rem;position:fixed;top:1.5rem;left:50%;transform:translate(-50%)}.header.scrolled{background:#0a0f1ad9;border-color:#ffffff14;padding:.6rem 1.75rem;top:1rem;box-shadow:0 10px 30px #00000080}.navbar{justify-content:space-between;align-items:center;max-width:none;padding:0;display:flex}.logo{background:var(--flutter-gradient);-webkit-text-fill-color:transparent;transition:transform var(--ease-out);cursor:pointer;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800}.logo:hover{transform:scale(1.05)}.nav-links{gap:var(--spacing-8);align-items:center;list-style:none;display:flex}.nav-links li a{color:var(--text-main);padding:var(--spacing-2) 0;transition:color var(--ease-out);font-size:.95rem;font-weight:500;position:relative}.nav-links li a:after{content:"";background:var(--flutter-gradient);width:0;height:2px;transition:width var(--ease-out);position:absolute;bottom:0;left:0}.nav-links li a:hover:after,.nav-links li a:focus:after{width:100%}.nav-links li a:hover,.nav-links li a:focus{color:var(--primary-light)}.theme-toggle-wrapper{align-items:center;display:flex}.theme-toggle{cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-full);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:44px;height:44px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.theme-toggle:hover{background:var(--primary-glow);transform:rotate(180deg)scale(1.1)}.theme-toggle:hover .sun-icon,.theme-toggle:hover .moon-icon{fill:var(--primary-light)}.theme-toggle:focus{outline:2px solid var(--primary);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sun-icon,.moon-icon{width:22px;height:22px;transition:opacity var(--ease-out), transform var(--transition-premium);fill:var(--text-main);position:absolute}.sun-icon{opacity:0;transform:scale(.5)rotate(-90deg)}.moon-icon,[data-theme=dark] .sun-icon{opacity:1;transform:scale(1)rotate(0)}[data-theme=dark] .moon-icon{opacity:0;transform:scale(.5)rotate(90deg)}.menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:28px;height:21px;padding:0;display:none}.menu-toggle .bar{background:var(--text-main);border-radius:var(--radius-full);width:100%;height:3px;transition:all var(--ease-out)}.menu-toggle[aria-expanded=true] .bar:first-child{transform:translateY(9px)rotate(45deg)}.menu-toggle[aria-expanded=true] .bar:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] .bar:nth-child(3){transform:translateY(-9px)rotate(-45deg)}.hero-section{padding:12rem var(--spacing-8) var(--spacing-20);background:0 0;justify-content:center;align-items:center;min-height:90vh;display:flex;position:relative;overflow:hidden}.hero-section:before{content:"";background:radial-gradient(circle, hsla(var(--p-h), 98%, 50%, .1) 0%, transparent 70%);z-index:-1;filter:blur(80px);width:50vw;height:50vw;position:absolute;top:-10%;right:-5%}.hero-content{z-index:10;flex:55%;max-width:650px}.hero-content h1{background:var(--flutter-gradient);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin-bottom:2rem;font-size:clamp(3.2rem,7vw,5.5rem);line-height:1.05}.availability-badge{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-full);color:var(--text-main);box-shadow:var(--shadow-soft);align-items:center;gap:.6rem;margin-bottom:2rem;padding:.5rem 1.2rem;font-size:.85rem;font-weight:600;display:inline-flex}.pulse-dot{background-color:#22c55e;border-radius:50%;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";opacity:.5;background-color:#22c55e;border-radius:50%;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse;position:absolute;inset:-4px}.hero-content .tagline{color:var(--primary-light);text-transform:uppercase;letter-spacing:.3em;margin-bottom:2rem;font-size:1rem;font-weight:800;display:block}.hero-content .intro-text{color:var(--text-muted);max-width:520px;margin-bottom:3rem;font-size:1.15rem;line-height:1.8}.button-group{flex-wrap:wrap;gap:1.5rem;display:flex}.btn{transition:all .4s var(--ease-out);border-radius:16px;justify-content:center;align-items:center;gap:.75rem;padding:1.1rem 2.5rem;font-size:.95rem;font-weight:700;display:inline-flex}.primary-btn{background:var(--flutter-gradient);color:#fff;box-shadow:0 10px 20px -5px hsla(var(--p-h), 98%, 50%, .3);border:none}.primary-btn:hover{box-shadow:0 15px 30px -5px hsla(var(--p-h), 98%, 50%, .4);transform:translateY(-5px)scale(1.02)}.btn-icon{transition:transform .3s var(--ease-out)}.btn:hover .btn-icon{transform:translate(5px)}.secondary-btn{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-subtle)}.secondary-btn:hover{background:var(--bg-main);border-color:var(--primary-light);box-shadow:var(--shadow-soft);transform:translateY(-3px)}.hero-image-container{z-index:5;flex:45%;justify-content:center;align-items:center;display:flex;position:relative}.hero-images-wrapper{aspect-ratio:1;width:100%;max-width:500px;position:relative}.hero-main-image{z-index:2;width:85%;height:85%;transition:var(--transition-premium);margin:0 auto;position:relative}.hero-main-image img{object-fit:cover;border-radius:var(--radius-xl);width:100%;height:100%;box-shadow:var(--shadow-premium);border:4px solid var(--bg-card)}.hero-side-stack{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;top:0;left:0}.hero-side-image{pointer-events:auto;border:6px solid var(--bg-card);width:140px;height:140px;box-shadow:var(--shadow-premium);transition:all .5s var(--ease-out);border-radius:24px;position:absolute;overflow:hidden}.hero-side-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.hero-side-1{z-index:3;animation:6s ease-in-out infinite stackFloat;top:-5%;right:-5%}.hero-side-2{z-index:1;animation:7s ease-in-out infinite reverse stackFloat;bottom:-5%;left:-5%}.hero-side-image:hover{border-color:var(--primary-light);z-index:10;transform:translateY(-15px)scale(1.1)rotate(3deg)}.hero-side-image:hover img{transform:scale(1.15)}@keyframes stackFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-20px)rotate(2deg)}}.section{padding:var(--spacing-20) var(--spacing-8);transition:background-color var(--ease-out);position:relative}.section:nth-child(2n){background:var(--bg-card)}.section h2{margin-bottom:var(--spacing-12);text-align:center;width:100%;font-size:clamp(2rem,4vw,2.75rem);display:block;position:relative}.section h2:after{content:"";background:var(--flutter-gradient);border-radius:var(--radius-full);width:80px;height:4px;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.section-content{max-width:1200px;color:var(--text-main);margin:0 auto}.about-section{background:var(--bg-card);position:relative}.about-section .section-content{gap:var(--spacing-10);grid-template-columns:1fr;align-items:center;max-width:1200px;display:grid}@media (width>=900px){.about-section .section-content{grid-template-columns:1fr 1fr;gap:4rem}}.about-text{flex-direction:column;gap:1.5rem;display:flex}.about-section p{color:var(--text-muted);margin-bottom:0;font-size:1.15rem;line-height:1.9}.about-section strong{color:var(--primary-light);white-space:nowrap;background:#1389fd1a;border:1px solid #1389fd33;border-radius:8px;padding:.1rem .6rem;font-weight:700}.stats-grid{gap:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:100%;display:grid}.stat-card{background:var(--bg-card);border-radius:var(--radius-lg);text-align:center;border:1px solid var(--border-subtle);transition:all .5s var(--ease-out);flex-direction:column;gap:.5rem;padding:2rem;display:flex}.stat-card:hover{box-shadow:var(--shadow-premium);border-color:var(--primary-light);transform:translateY(-8px)}.stat-number{background:var(--flutter-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:700}.education-section{background:var(--bg-main)}.degree-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);transition:all .5s var(--ease-out);flex-direction:column;gap:1.5rem;max-width:900px;margin:0 auto;padding:2.5rem;display:flex;position:relative;overflow:hidden}.degree-card:before{content:"";background:var(--flutter-gradient);border-radius:var(--radius-xl) var(--radius-xl) 0 0;transform-origin:0;width:100%;height:4px;transition:transform .6s var(--ease-out);position:absolute;top:0;left:0;transform:scaleX(0)}.degree-card:hover{box-shadow:var(--shadow-premium), var(--shadow-glow);border-color:var(--primary-light);transform:translateY(-8px)}.degree-card:hover:before{transform:scaleX(1)}.year-badge{background:var(--primary-glow);color:var(--primary-light);border-radius:var(--radius-full);white-space:nowrap;padding:.5rem 1.2rem;font-size:1.1rem;font-weight:800;display:inline-block}.degree-title{color:#0000;background:var(--flutter-gradient);-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:1.6rem;font-weight:800;line-height:1.3}.university-name{color:var(--text-main);margin-bottom:1.5rem;font-size:1.15rem;font-weight:600;display:block}.degree-info{flex-direction:column;gap:.8rem;margin:0;padding:0;list-style:none;display:flex}.degree-info li{color:var(--text-muted);font-size:1rem;line-height:1.6}.degree-info strong{color:var(--text-main);margin-right:.2rem;font-weight:700}@media (width>=768px){.degree-card{flex-direction:row;align-items:center;gap:3rem}.degree-year{border-right:1px solid var(--border-subtle);text-align:right;flex:0 0 160px;padding-right:2rem}}.experience-section{background:var(--bg-main)}.experience-list{flex-direction:column;gap:3rem;padding-left:2rem;display:flex;position:relative}.experience-list:before{content:"";background:linear-gradient(to bottom, var(--primary-light), var(--bg-main) 90%);opacity:.3;width:2px;position:absolute;top:1rem;bottom:1rem;left:0}.experience-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);transition:all .5s var(--ease-out);padding:2.5rem;position:relative}.experience-item:hover{box-shadow:var(--shadow-premium);border-color:var(--primary-light);transform:translateY(-5px)}.experience-item:before{content:"";background:var(--flutter-gradient);border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform-origin:0;width:100%;height:4px;transition:transform .6s var(--ease-out);position:absolute;top:0;left:0;transform:scaleX(0)}.experience-item:hover:before{transform:scaleX(1)}.experience-item:after{content:"";background:var(--bg-main);border:3px solid var(--primary-light);width:14px;height:14px;box-shadow:0 0 0 4px var(--primary-glow);z-index:2;transition:all .4s var(--ease-out);border-radius:50%;position:absolute;top:3rem;left:-2.4rem}.experience-item:hover:after{background:var(--primary-light);box-shadow:0 0 15px var(--primary-light);transform:scale(1.3)}.exp-header{flex-direction:column;gap:.25rem;margin-bottom:1.5rem;display:flex}@media (width>=768px){.exp-header{flex-flow:wrap;justify-content:space-between;align-items:baseline}}.exp-header h3{color:var(--text-main);flex:100%;margin-bottom:.2rem;font-size:1.5rem}.exp-role{color:#0000;background:var(--flutter-gradient);text-transform:uppercase;letter-spacing:.05em;-webkit-background-clip:text;background-clip:text;font-size:1.15rem;font-weight:800}.exp-date{background:var(--bg-main);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-full);white-space:nowrap;padding:.3rem .8rem;font-size:.85rem;font-weight:600;display:inline-block}.exp-details{padding-left:0;list-style:none}.exp-details li{color:var(--text-muted);margin-bottom:1rem;padding-left:1.5rem;line-height:1.7;position:relative}.exp-details li:before{content:"⟢";color:var(--primary-light);font-size:1.2rem;position:absolute;top:0;left:0}.exp-details strong{color:var(--text-main)}.projects-section{background:var(--bg-main)}.project-grid{gap:var(--spacing-8);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.project-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);transition:all .5s var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.project-item:hover{box-shadow:var(--shadow-premium), var(--shadow-glow);border-color:var(--primary-light);transform:translateY(-12px)}.project-image-wrapper{background:var(--bg-main);border-bottom:1px solid var(--border-subtle);width:100%;height:240px;position:relative;overflow:hidden}.project-image-wrapper img,.project-image-wrapper video{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.project-image-wrapper:after{content:"";opacity:0;width:100%;height:100%;transition:opacity .5s var(--ease-out);pointer-events:none;background:linear-gradient(#0000,#0a0f1a66);position:absolute;top:0;left:0}.project-item:hover .project-image-wrapper:after{opacity:1}.project-item:hover .project-image-wrapper img,.project-item:hover .project-image-wrapper video{transform:scale(1.05)}.project-content{padding:var(--spacing-6);flex-direction:column;flex:1;display:flex}.project-content h3{margin-bottom:var(--spacing-3);color:var(--text-main);font-size:1.55rem;font-weight:800;line-height:1.3}.project-content p{color:var(--text-muted);margin-bottom:var(--spacing-5);flex:1;font-size:1rem;line-height:1.8}.tech-stack{margin-bottom:var(--spacing-6);flex-wrap:wrap;gap:.5rem;display:flex}.tech-badge{color:var(--primary-light);white-space:nowrap;background:#1389fd1a;border:1px solid #1389fd33;border-radius:8px;padding:.2rem .8rem;font-size:.85rem;font-weight:700}.project-buttons{gap:var(--spacing-3);flex-wrap:wrap;margin-top:auto;display:flex}.project-btn{text-transform:uppercase;letter-spacing:.05em;transition:all .3s var(--ease-out);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.4rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.project-btn:hover{box-shadow:var(--shadow-soft);transform:translateY(-3px)}.project-btn.primary{background:var(--flutter-gradient);color:#fff}.project-btn.secondary-btn{background:var(--bg-main);color:var(--text-main);border:1px solid var(--border-subtle)}.project-btn.secondary-btn:hover{border-color:var(--primary-light);color:var(--primary-light)}.project-btn.github-btn{color:var(--text-main);border:1px solid var(--border-subtle);background:0 0}.project-btn.github-btn:hover{border-color:var(--text-main);background:#ffffff1a}.skills-section{background:var(--bg-main)}.skills-grid{gap:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.skill-category{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);transition:all .5s var(--ease-out);padding:2.2rem;position:relative;overflow:hidden}.skill-category:before{content:"";background:var(--flutter-gradient);transform-origin:0;width:100%;height:4px;transition:transform .6s var(--ease-out);position:absolute;top:0;left:0;transform:scaleX(0)}.skill-category:hover{box-shadow:var(--shadow-premium), var(--shadow-glow);border-color:var(--primary-light);transform:translateY(-8px)}.skill-category:hover:before{transform:scaleX(1)}.skill-category h3{border-bottom:1px solid var(--border-subtle);color:var(--text-main);align-items:center;gap:.6rem;margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.35rem;font-weight:800;display:flex}.skill-category ul{padding-left:0;list-style:none}.skill-category ul li{color:var(--text-muted);margin-bottom:.8rem;padding-left:1.5rem;font-size:1rem;font-weight:500;line-height:1.6;position:relative}.skill-category ul li:before{content:"⟢";color:var(--primary-light);font-size:1.15rem;position:absolute;top:0;left:0}.certificates-section{background:var(--bg-main)}.certificates-grid{gap:var(--spacing-10);padding:var(--spacing-4) 0;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.certificate-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);transition:all .5s var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.certificate-card:hover{box-shadow:var(--shadow-premium), var(--shadow-glow);border-color:var(--primary-light);transform:translateY(-8px)}.certificate-header{z-index:10;align-items:center;display:flex;position:absolute;top:1rem;left:1rem}.certificate-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--primary-light);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-soft);background:#0a0f1ab3;border:1px solid #ffffff1a;border-radius:8px;padding:.3rem .8rem;font-size:.8rem;font-weight:700;display:inline-flex}.certificate-image{width:100%;height:240px;position:relative;overflow:hidden}.certificate-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.certificate-card:hover .certificate-image img{transform:scale(1.1)}.certificate-info{flex:1;padding:1.5rem}.certificate-info h3{color:var(--text-main);margin-bottom:.5rem;font-size:1.15rem;font-weight:800;line-height:1.4}.certificate-category{color:var(--primary-light);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.85rem;font-weight:700}.certificate-date,.certificate-duration{color:var(--text-muted);margin-bottom:.25rem;font-size:.9rem}.contact-section{background:var(--bg-main);position:relative;overflow:hidden}[data-theme=dark] .certificate-category{color:var(--primary-light)}[data-theme=dark] .certificate-date,[data-theme=dark] .certificate-duration{color:var(--text-light)}[data-theme=dark] .contact-section{background:linear-gradient(135deg,#0f1419 0%,#1a202c 50%,#1a2332 100%)}.contact-section:before{content:"";background:radial-gradient(circle,#13b9fd14 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:-200px;right:-200px}.contact-section:after{content:"";background:radial-gradient(circle,#02569b14 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-150px;left:-150px}.contact-container{z-index:1;max-width:1200px;margin:0 auto;position:relative}.contact-header{text-align:center;margin-bottom:var(--spacing-16)}.contact-title{background:var(--flutter-gradient);-webkit-text-fill-color:transparent;margin-bottom:var(--spacing-4);-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,5vw,3rem);font-weight:800}.contact-subtitle{color:var(--text-muted);max-width:600px;margin:0 auto;font-size:1.1rem;line-height:1.8}.contact-grid{gap:var(--spacing-8);margin-bottom:var(--spacing-16);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.contact-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);transition:all .5s var(--ease-out);flex-direction:column;gap:1.25rem;padding:2.5rem;text-decoration:none;display:flex;position:relative;overflow:hidden}.contact-card:before{content:"";background:var(--flutter-gradient);transform-origin:0;width:100%;height:4px;transition:transform .6s var(--ease-out);position:absolute;top:0;left:0;transform:scaleX(0)}.contact-card:hover{box-shadow:var(--shadow-premium), var(--shadow-glow);border-color:var(--primary-light);transform:translateY(-8px)}.contact-card:hover:before{transform:scaleX(1)}.contact-card-arrow{color:var(--border-subtle);transition:all .4s var(--ease-out);pointer-events:none;font-size:1.8rem;font-weight:300;position:absolute;top:2.5rem;right:2.5rem}.contact-card:hover .contact-card-arrow{color:var(--primary-light);transform:translate(5px,-5px)rotate(-45deg)}.contact-card-icon{background:var(--primary-glow);width:64px;height:64px;color:var(--primary-light);border-radius:50%;justify-content:center;align-items:center;transition:all .5s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 0 0 4px #1389fd0d}.contact-card:hover .contact-card-icon{background:var(--primary-light);color:var(--bg-card);transform:scale(1.1)rotate(5deg);box-shadow:0 0 0 8px #1389fd1a}.contact-card-content h3{color:var(--text-main);margin-bottom:.25rem;font-size:1.4rem;font-weight:800}.contact-label{color:var(--text-muted);margin-bottom:.75rem;font-size:.95rem}.contact-link{color:var(--primary-light);font-size:1.05rem;font-weight:700;text-decoration:none;transition:color .3s;display:inline-block}.contact-link:hover{text-decoration:underline}.contact-form{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:2.5rem}.contact-form input,.contact-form textarea{background:var(--bg-main);border:1px solid var(--border-subtle);color:var(--text-main);transition:all .3s var(--ease-out);border-radius:12px;padding:.8rem 1rem}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary-light);box-shadow:0 0 0 4px var(--primary-glow);outline:none}.contact-form textarea{resize:vertical;min-height:120px}.contact-form-submit{width:100%;margin-top:var(--spacing-2)}.thank-you-page{min-height:100vh;padding:var(--spacing-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.thank-you-page h1{margin-bottom:var(--spacing-4)}.thank-you-page p{margin-bottom:var(--spacing-8);color:var(--text-muted)}@media (width<=900px){.contact-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.contact-grid{grid-template-columns:1fr}.contact-header{margin-bottom:var(--spacing-12)}.contact-cta{padding:var(--spacing-8)}.cta-text{font-size:1rem}}@media (width<=480px){.contact-title{font-size:1.75rem}.contact-subtitle{font-size:1rem}.contact-card,.contact-cta{padding:var(--spacing-6)}}.footer{text-align:center;background:var(--bg-main);color:var(--text-muted);transition:all var(--ease-out);padding:4rem 2rem;position:relative}.footer:before{content:"";background:linear-gradient(90deg, transparent, var(--border-subtle), transparent);width:100%;max-width:1200px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.footer p,.footer .footer-copyright{letter-spacing:.02em;margin:0;font-size:1rem}.footer-links{justify-content:center;gap:var(--spacing-8);flex-wrap:wrap;margin-top:1.5rem;display:flex}.footer-link{color:var(--text-main);text-transform:uppercase;letter-spacing:.05em;transition:color .3s var(--ease-out);font-size:.95rem;font-weight:700;text-decoration:none;position:relative}.footer-link:after{content:"";background:var(--flutter-gradient);width:0%;height:2px;transition:width .3s var(--ease-out);position:absolute;bottom:-4px;left:0}.footer-link:hover{color:var(--primary-light)}.footer-link:hover:after{width:100%}@media (width<=1024px){.navbar{padding:var(--spacing-4) var(--spacing-6)}.section{padding:var(--spacing-16) var(--spacing-6)}}@media (width<=900px){.hero-section{text-align:center;padding:var(--spacing-16) var(--spacing-6) var(--spacing-12);flex-direction:column}.hero-content{flex:100%;max-width:none}.hero-image-container{max-width:none;margin-top:var(--spacing-10);flex:100%;min-height:400px}.hero-images-wrapper{gap:var(--spacing-4);flex-direction:column}.hero-main-image{flex:0 0 60%}.hero-side-stack{width:100%;height:100%;position:absolute;top:0;left:0}.hero-side-1,.hero-side-2{width:100px;height:100px}.hero-side-1{top:-10px;right:-10px}.hero-side-2{bottom:-10px;left:-10px}.button-group{justify-content:center}.exp-header{align-items:flex-start;gap:var(--spacing-2);flex-direction:column}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=768px){.nav-links{-webkit-backdrop-filter:blur(20px);width:100%;padding:var(--spacing-6) 0;box-shadow:var(--shadow-lg);clip-path:polygon(0 0,100% 0,100% 0,0 0);transition:clip-path .4s var(--ease-out);z-index:999;align-items:center;gap:var(--spacing-4);background:#fffffffa;flex-direction:column;position:fixed;top:70px;left:0;right:0}[data-theme=dark] .nav-links{background:#1a202cfa}.nav-links.open{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.menu-toggle{display:flex}.nav-links li{text-align:center;width:100%}.nav-links li a{padding:var(--spacing-3) var(--spacing-6);font-size:1.1rem;display:block}.theme-toggle-wrapper{margin-top:var(--spacing-4)}.section{padding:var(--spacing-12) var(--spacing-5)}.skills-grid,.certificates-grid,.contact-grid{grid-template-columns:1fr}}@media (width<=480px){.navbar{padding:var(--spacing-3) var(--spacing-4)}.logo{font-size:1.25rem}.hero-section{padding:var(--spacing-12) var(--spacing-4) var(--spacing-10)}.section{padding:var(--spacing-10) var(--spacing-4)}.button-group{flex-direction:column;width:100%}.btn{width:100%}.project-grid{grid-template-columns:1fr}.project-buttons{flex-direction:column}.project-btn{width:100%}}.text-center{text-align:center}.text-gradient{background:var(--flutter-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.focus-visible:focus{outline:2px solid var(--primary);outline-offset:2px}.will-change-transform{will-change:transform}.gpu-accelerated{backface-visibility:hidden;transform:translateZ(0)}.scroll-to-top{background:var(--primary);color:#fff;cursor:pointer;width:54px;height:54px;box-shadow:var(--shadow-premium);opacity:0;visibility:hidden;transition:all .4s var(--ease-out);z-index:990;border:none;border-radius:16px;justify-content:center;align-items:center;display:flex;position:fixed;bottom:30px;right:30px;transform:translateY(20px)}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background:var(--primary-light);transform:translateY(-5px);box-shadow:0 10px 20px #02569b4d}.scroll-to-top svg{fill:currentColor;width:24px;height:24px}
