@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";.portfolio{--bg:#080d18;--surface:#111b2eb8;--surface-solid:#101a2c;--text:#e8edf8;--muted:#96a4bb;--border:#8fa7cd26;--blue:#63a5ff;--purple:#a78bfa;isolation:isolate;background:radial-gradient(ellipse at 50% 0%, #1f468229, transparent 48%), var(--bg);min-height:100vh;color:var(--text);transition:background .3s,color .3s;position:relative;overflow:hidden}.portfolio.light-mode{--bg:#f4f7fc;--surface:#ffffffd1;--surface-solid:#fff;--text:#17243a;--muted:#62718a;--border:#2a456e26;--blue:#2563eb;--purple:#7c3aed;background:#f4f7fc}.background-glow{z-index:-1;filter:blur(120px);pointer-events:none;opacity:.12;border-radius:50%;width:400px;height:400px;position:absolute}.glow-one{background:#2874ff;top:250px;left:-250px}.glow-two{background:#9258ff;top:850px;right:-280px}.section-container{width:min(1120px,100% - 48px);margin-inline:auto}.navbar{z-index:1000;box-sizing:border-box;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);justify-content:space-between;align-items:center;gap:24px;width:100%;padding:19px max(24px,50% - 560px);display:flex;position:fixed;top:0;left:0;right:0}.logo{letter-spacing:-2px;flex-shrink:0;font:700 28px Space Grotesk,sans-serif}.logo span{color:var(--blue)}.nav-links{align-items:center;gap:26px;display:flex}.nav-links a,.back-to-top{color:var(--muted);font-size:13px;transition:color .2s}.nav-links a:hover,.back-to-top:hover{color:var(--blue)}.nav-actions{align-items:center;gap:12px;display:flex}.theme-toggle,.menu-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.nav-resume{border:1px solid var(--border);border-radius:10px;padding:11px 16px;font-size:12px;font-weight:600;transition:border-color .2s,background .2s}.nav-resume:hover{border-color:var(--blue);background:#63a5ff14}.menu-toggle{display:none}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:45px;min-height:680px;padding-top:110px;padding-bottom:100px;display:grid;position:relative}.hero-content{z-index:2;animation:.8s both fade-up;position:relative}.availability{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:30px;align-items:center;gap:9px;margin-bottom:35px;padding:9px 13px;font-size:11px;display:inline-flex}.status-dot{background:#5ee0a0;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #5ee0a099}.eyebrow,.section-kicker{color:var(--blue);letter-spacing:2px;font:600 11px Space Grotesk,sans-serif}.hero h1{letter-spacing:-4px;margin-top:12px;font:700 clamp(48px,6.2vw,76px)/1.08 Space Grotesk,sans-serif}.gradient-text{color:#0000;background:linear-gradient(100deg, var(--blue), var(--purple));-webkit-background-clip:text;background-clip:text}.hero h2{letter-spacing:-.8px;margin-top:17px;font:500 clamp(20px,2.5vw,28px) Space Grotesk,sans-serif}.hero h2 span{color:var(--muted)}.hero-description{max-width:480px;color:var(--muted);margin-top:24px;font-size:14px;line-height:1.9}.hero-buttons,.contact-buttons{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:0 19px;font-size:12px;font-weight:700;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button-primary{color:#fff;background:linear-gradient(110deg,#438cf5,#7765f7);box-shadow:0 8px 28px #4674ff2e}.button-primary:hover{box-shadow:0 12px 34px #4674ff4d}.button-outline{border-color:var(--border);background:var(--surface);color:var(--text)}.button-outline:hover{border-color:var(--blue)}.social-links{color:var(--muted);flex-wrap:wrap;align-items:center;gap:17px;margin-top:35px;font-size:11px;display:flex}.social-links a{transition:color .2s}.social-links a:hover{color:var(--blue)}.social-links a span{margin-right:5px}.social-divider{background:var(--border);width:1px;height:15px}.hero-location{font-size:11px}.hero-visual{place-items:center;min-height:430px;animation:.9s .15s both fade-up;display:grid;position:relative}.profile-card{z-index:2;background:linear-gradient(145deg,#1a2a45f2,#0a111ff5);border:1px solid #77a4ff3d;border-radius:23px;width:min(330px,100%);padding:17px;animation:5s ease-in-out infinite float-card;position:relative;box-shadow:0 25px 90px #00000047,0 0 60px #4378ff14}.light-mode .profile-card{background:linear-gradient(145deg,#fff,#e9effa)}.profile-card-top{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding-bottom:15px;display:flex}.window-dot{border-radius:50%;width:7px;height:7px}.window-dot.red{background:#ff6868}.window-dot.yellow{background:#f4c45b}.window-dot.green{background:#51d99a}.profile-card-label{color:var(--muted);margin-left:auto;font:10px monospace}.profile-photo-frame{background:radial-gradient(circle,#5182ff2e,#0000 70%);border:1px solid #63a5ff66;border-radius:50%;place-items:center;width:190px;height:190px;margin:25px auto 20px;display:grid;position:relative;box-shadow:0 0 45px #4c83ff29}.profile-photo{background:linear-gradient(140deg,#223f70,#7453a8);border:3px solid #7eaaffcc;border-radius:50%;place-items:center;width:164px;height:164px;display:grid;position:relative;overflow:hidden}.profile-photo img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute}.avatar-fallback{color:#fff;letter-spacing:-3px;justify-content:center;align-items:center;width:100%;height:100%;font:700 45px Space Grotesk,sans-serif;display:flex}.photo-decoration{z-index:2;border:3px solid var(--surface-solid);background:#6ea7ff;border-radius:50%;width:13px;height:13px;position:absolute;box-shadow:0 0 15px #63a5ffb3}.decoration-one{top:18px;right:12px}.decoration-two{background:#a78bfa;bottom:18px;left:7px}.profile-info{text-align:center}.profile-info h3{font:600 20px Space Grotesk,sans-serif}.profile-info p{color:var(--muted);margin-top:6px;font-size:11px}.profile-tags{flex-wrap:wrap;justify-content:center;gap:7px;margin-top:15px;display:flex}.profile-tags span{border:1px solid var(--border);color:var(--blue);border-radius:6px;padding:6px 9px;font-size:10px}.profile-card-bottom{border-top:1px solid var(--border);color:var(--muted);justify-content:center;margin-top:20px;padding-top:14px;font:10px monospace;display:flex}.typing-cursor{color:var(--blue);animation:1s step-end infinite blink}.orbit{pointer-events:none;border:1px solid #63a5ff21;border-radius:50%;position:absolute}.orbit-one{width:390px;height:390px;animation:32s linear infinite orbit-spin}.orbit-two{opacity:.6;border-style:dashed;width:455px;height:455px;animation:48s linear infinite reverse orbit-spin}.floating-badge{z-index:3;border:1px solid var(--border);background:var(--surface-solid);border-radius:13px;align-items:center;gap:8px;padding:12px 14px;font-size:11px;font-weight:600;animation:4s ease-in-out infinite float-badge;display:flex;position:absolute;box-shadow:0 10px 30px #00000026}.badge-react{top:35px;right:0}.badge-code{animation-delay:-1.5s;bottom:48px;left:-15px}.badge-web{animation-delay:-2.5s;bottom:105px;right:-20px}.scroll-indicator{color:var(--muted);letter-spacing:2px;align-items:center;gap:12px;font-size:9px;display:flex;position:absolute;bottom:28px;left:0}.scroll-line{background:var(--blue);width:35px;height:1px}.section-heading{max-width:650px;margin-bottom:42px}.section-heading h2{letter-spacing:-1.8px;margin-top:15px;font:600 clamp(29px,4vw,42px)/1.2 Space Grotesk,sans-serif}.section-heading>p{color:var(--muted);margin-top:13px;font-size:13px;line-height:1.8}.about-section,.skills-section,.projects-section,.education-section{padding-top:95px;padding-bottom:40px}.about-grid{grid-template-columns:1.15fr 1fr;gap:20px;display:grid}.glass-card{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:17px;transition:border-color .25s,transform .25s,box-shadow .25s}.glass-card:hover{border-color:#63a5ff59}.about-main{padding:30px}.card-symbol{border:1px solid var(--border);width:42px;height:42px;color:var(--blue);border-radius:12px;place-items:center;margin-bottom:23px;font-size:24px;display:grid}.about-main h3{font:600 22px Space Grotesk,sans-serif}.about-main p{color:var(--muted);margin-top:17px;font-size:13px;line-height:1.9}.about-stats{grid-template-columns:1fr 1fr;gap:14px;display:grid}.stat-card{flex-direction:column;justify-content:center;min-height:140px;padding:19px;display:flex}.stat-icon{margin-bottom:12px;font-size:21px}.stat-card strong{font:600 15px Space Grotesk,sans-serif}.stat-card>span:last-child{color:var(--muted);margin-top:6px;font-size:10px}.skills-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.skill-card{padding:20px;display:block}.skill-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px #0000001f}.skill-top{justify-content:space-between;align-items:center;display:flex}.skill-icon{border:1px solid var(--border);background:#63a5ff0f;border-radius:13px;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.external-arrow{color:var(--muted);font-size:15px;transition:color .2s,transform .2s}.skill-card:hover .external-arrow{color:var(--blue);transform:translate(2px,-2px)}.skill-card h3{margin-top:20px;font:600 15px Space Grotesk,sans-serif}.skill-card>p{color:var(--muted);margin-top:7px;font-size:10px}.skill-link-label{border-top:1px solid var(--border);color:var(--blue);margin-top:20px;padding-top:13px;font-size:10px}.skills-note,.project-note{color:var(--muted);text-align:center;margin-top:22px;font-size:11px}.project-filters{flex-wrap:wrap;gap:9px;margin-bottom:25px;display:flex}.filter{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:9px;padding:10px 14px;font-size:11px;transition:all .2s}.filter:hover,.filter.active{color:var(--blue);background:#63a5ff1a;border-color:#63a5ff73}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.project-card{overflow:hidden}.project-card:hover{transform:translateY(-4px)}.project-visual{border-bottom:1px solid var(--border);background:radial-gradient(#3d70d13d,#0000 60%),linear-gradient(135deg,#101b31,#111027);place-items:center;min-height:190px;display:grid;position:relative;overflow:hidden}.project-visual-grid{opacity:.28;background-image:linear-gradient(#789cdb1f 1px,#0000 1px),linear-gradient(90deg,#789cdb1f 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.project-number{color:#ffffffa6;font:12px monospace;position:absolute;top:17px;left:18px}.project-big-icon{z-index:1;background:#1b2b4cd9;border:1px solid #7ba7ff4d;border-radius:24px;place-items:center;width:82px;height:82px;font-size:37px;transition:transform .3s;display:grid;position:relative;box-shadow:0 0 55px #4274ff2e}.project-card:hover .project-big-icon{transform:translateY(-4px)rotate(-4deg)}.project-visual-label{color:#ffffff8c;letter-spacing:1px;font:9px monospace;position:absolute;bottom:14px;right:16px}.project-category{color:var(--blue);letter-spacing:.5px;font-size:10px;font-weight:600}.project-content h3{margin-top:10px;font:600 22px Space Grotesk,sans-serif}.project-content>p{min-height:66px;color:var(--muted);margin-top:12px;font-size:12px;line-height:1.8}.project-tech{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.project-tech span{border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:6px 9px;font-size:9px}.project-link{border-top:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:center;margin-top:22px;padding-top:15px;font-size:11px;font-weight:600;display:flex}.project-link span{color:var(--blue);font-size:17px;transition:transform .2s}.project-link:hover span{transform:translate(3px,-3px)}.all-projects-button{width:fit-content;margin:28px auto 0;display:flex}.timeline{gap:23px;max-width:780px;margin-left:9px;padding-left:28px;display:grid;position:relative}.timeline:before{background:linear-gradient(var(--blue), #a78bfa1a);content:"";width:1px;position:absolute;top:9px;bottom:15px;left:4px}.timeline-item{position:relative}.timeline-marker{border:2px solid var(--blue);background:var(--bg);border-radius:50%;width:11px;height:11px;position:absolute;top:26px;left:-29px;box-shadow:0 0 15px #63a5ff4d}.timeline-card{padding:25px}.timeline-date{color:var(--blue);letter-spacing:1.3px;font:600 10px Space Grotesk,sans-serif}.timeline-card h3{margin-top:12px;font:600 19px Space Grotesk,sans-serif}.timeline-subtitle{color:var(--purple);margin-top:6px;font-size:12px}.timeline-card>p:last-child{color:var(--muted);margin-top:13px;font-size:12px;line-height:1.8}.certification-note{max-width:780px;color:var(--muted);align-items:center;gap:13px;margin-top:22px;padding:17px;font-size:11px;line-height:1.7;display:flex}.certification-note>span{font-size:21px}.contact-section{padding-top:100px;padding-bottom:100px}.contact-card{background:radial-gradient(ellipse at 50% 0%, #3d6dd633, transparent 65%), var(--surface);text-align:center;border:1px solid #63a5ff3b;border-radius:24px;padding:65px 25px;position:relative;overflow:hidden}.contact-decoration{color:var(--blue);margin:20px 0 10px;font-size:31px}.contact-card h2{letter-spacing:-1.6px;font:600 clamp(29px,4.5vw,43px)/1.25 Space Grotesk,sans-serif}.contact-card>p{max-width:530px;color:var(--muted);margin:17px auto 0;font-size:13px;line-height:1.9}.contact-buttons{justify-content:center}.resume-link{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:13px;align-items:center;gap:13px;max-width:100%;margin-top:34px;padding:14px 17px;transition:border-color .2s;display:inline-flex}.resume-link:hover{border-color:var(--blue)}.resume-link>span:first-child{font-size:24px}.resume-link>span:nth-child(2){gap:5px;display:grid}.resume-link strong{font-size:11px}.resume-link small{color:var(--muted);font-size:9px}.resume-arrow{color:var(--blue);margin-left:8px}.footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:25px max(24px,50% - 560px);display:flex}.footer .logo{font-size:23px}.footer p,.copyright{color:var(--muted);font-size:10px}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float-card{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes float-badge{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1000px){.navbar,.nav-links{gap:15px}.nav-links a{font-size:11px}.nav-resume{display:none}.hero{gap:20px}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.orbit-two{width:390px;height:390px}.orbit-one{width:335px;height:335px}.badge-web{right:-8px}}@media (width<=760px){.section-container{width:calc(100% - 36px)}.navbar{padding:14px 18px}.menu-toggle{margin-left:auto;font-size:20px;display:grid}.nav-actions{order:2}.nav-links{border-bottom:1px solid var(--border);background:var(--bg);align-items:stretch;gap:0;padding:10px 18px 18px;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.nav-links.open{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 92%, #2563eb 8%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:18px;flex-direction:column;gap:8px;margin-top:10px;padding:14px;display:flex;box-shadow:0 16px 40px #0000004d}.nav-links a{border-bottom:1px solid var(--border);padding:14px 8px;font-size:13px}.hero{grid-template-columns:1fr;gap:20px;min-height:auto;padding-top:95px;padding-bottom:100px}.hero-content{text-align:center}.availability{margin-bottom:27px}.hero h1{letter-spacing:-3px;font-size:clamp(47px,11vw,68px)}.hero-description{margin-inline:auto;font-size:13px}.hero-buttons,.social-links{justify-content:center}.hero-visual{min-height:420px;margin-top:10px}.profile-card{width:min(315px,85%)}.badge-code{left:0}.badge-web{right:0}.scroll-indicator{width:max-content;bottom:30px;left:50%;transform:translate(-50%)}.about-section,.skills-section,.projects-section,.education-section{padding-top:70px}.about-grid{grid-template-columns:1fr}.about-stats{grid-template-columns:1fr 1fr}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.skill-card{padding:16px}.projects-grid{grid-template-columns:1fr}.project-visual{min-height:175px}.project-content>p{min-height:auto}.contact-section{padding-top:75px;padding-bottom:70px}.contact-card{padding:45px 18px}.footer{text-align:center;justify-content:center}.footer .logo,.footer .back-to-top{display:none}.footer p,.copyright{width:100%}}@media (width<=390px){.hero h1{font-size:43px}.hero-buttons .button{padding-inline:13px;font-size:11px}.hero-visual{min-height:380px}.profile-card{padding:13px}.profile-photo-frame{width:170px;height:170px}.profile-photo{width:146px;height:146px}.floating-badge{padding:9px 10px;font-size:9px}.about-main{padding:22px}.stat-card{padding:13px}.stat-card strong{font-size:12px}.skill-card h3{font-size:13px}}.project-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;display:flex}.project-actions .project-link{border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:10px 17px;font-size:13px;font-weight:600;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.project-actions a.project-link:hover{transform:translateY(-2px)}.project-actions .live-project-link{background:#7864ff24;border-color:#9682ff66}.project-actions .project-link-disabled{opacity:.55;cursor:default}.projects-grid{gap:20px}.project-card{min-width:0}.project-visual{min-height:155px}.project-content{padding:20px}.project-content h3{margin-bottom:8px;font-size:20px}.project-content p{font-size:13px;line-height:1.6}.project-tech{gap:6px}.project-tech span{padding:5px 9px;font-size:11px}.project-actions{gap:8px;margin-top:16px}.project-actions .project-link{padding:8px 13px;font-size:12px}:root{color:#e8edf8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;scroll-behavior:smooth;--bg:#080d18;--surface:#111b2eb8;--surface-solid:#101a2c;--text:#e8edf8;--muted:#96a4bb;--border:#8fa7cd26;--blue:#63a5ff;--purple:#a78bfa;background:#080d18;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);min-width:320px;min-height:100vh}body,button,a{font-family:DM Sans,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}::selection{color:#fff;background:#416fbd}html{scroll-behavior:smooth;scroll-padding-top:95px}img{max-width:100%}
