body{margin:0;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--ink: #16181d;--ink-soft: #3f434c;--muted: #6b7280;--line: #e8e8ea;--line-strong: #d6d6da;--bg: #ffffff;--bg-alt: #fafafa;--accent: #2563eb;--accent-dark: #1d4ed8;--accent-2: #7c3aed;--accent-soft: rgba(37, 99, 235, .08);--grid: rgba(22, 24, 29, .05);--grid-size: 56px;--radius: 14px;--radius-sm: 10px;--maxw: 1120px;--nav-h: 72px;--ease: cubic-bezier(.22, 1, .36, 1);--transition: .25s var(--ease);--shadow-hover: 0 18px 40px -24px rgba(22, 24, 29, .45)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px)}body{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.65;color:var(--ink);background-color:var(--bg);background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px),linear-gradient(to bottom,var(--grid) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size);overflow-x:hidden}::selection{background:var(--accent);color:#fff}.container{max-width:var(--maxw);margin:0 auto;padding:0 1.5rem}.about,.experience,.education,.projects,.contact{padding:7rem 0;position:relative}.about,.education,.experience,.projects,.contact{background:transparent}.section-head{display:flex;align-items:center;gap:1.5rem;margin-bottom:4rem}.section-head h2{flex-shrink:0;display:flex;align-items:center;gap:.85rem;font-size:clamp(2.1rem,5.5vw,3.4rem);font-weight:800;letter-spacing:-.045em;color:var(--ink);white-space:nowrap}.section-head h2 i{color:var(--accent);font-size:1em}.navbar{position:fixed;top:0;width:100%;z-index:1000;background-color:#ffffffd9;border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px)}.nav-content{display:flex;justify-content:space-between;align-items:center;height:var(--nav-h);padding:0 1.5rem;max-width:1280px;margin:0 auto}.logo{display:flex;align-items:center;gap:.6rem;font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);text-decoration:none;cursor:pointer;background:none;border:none;font-family:inherit;transition:color var(--transition)}.logo i{color:var(--accent);transition:transform var(--transition)}.logo:hover i{transform:rotate(12deg)}.nav-right{display:flex;align-items:center;gap:2rem}.nav-links{display:flex;list-style:none;gap:2rem}.nav-links a,.nav-links button{text-decoration:none;color:var(--ink-soft);font-weight:500;font-size:.95rem;display:flex;align-items:center;gap:.4rem;position:relative;padding:.4rem 0;background:none;border:none;cursor:pointer;font-family:inherit;transition:color var(--transition)}.nav-links a i,.nav-links button i{font-size:.9rem;color:var(--muted);transition:color var(--transition)}.nav-links a:after,.nav-links button:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1.5px;background-color:var(--accent);transition:width var(--transition)}.nav-links a:hover,.nav-links button:hover{color:var(--ink)}.nav-links a:hover i,.nav-links button:hover i{color:var(--accent)}.nav-links a:hover:after,.nav-links button:hover:after{width:100%}.nav-links a.cta-contact,.nav-links button.cta-contact{background-color:var(--ink);color:#fff;padding:.6rem 1.2rem;border-radius:999px;transition:background-color var(--transition),transform var(--transition)}.nav-links a.cta-contact i,.nav-links button.cta-contact i{color:#fff}.nav-links a.cta-contact:hover,.nav-links button.cta-contact:hover{background-color:var(--accent);color:#fff;transform:translateY(-1px)}.nav-links a.cta-contact:hover i,.nav-links button.cta-contact:hover i{color:#fff}.nav-links a.cta-contact:after,.nav-links button.cta-contact:after{display:none}.language-switcher{display:flex;gap:.25rem;background-color:var(--bg-alt);padding:.25rem;border:1px solid var(--line);border-radius:999px}.lang-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border:none;background:none;color:var(--muted);font-size:.85rem;font-weight:600;cursor:pointer;border-radius:999px;transition:color var(--transition),background-color var(--transition)}.lang-btn .flag-icon{width:18px;height:13px;object-fit:cover;border-radius:2px}.lang-btn:hover{color:var(--ink)}.lang-btn.active{color:#fff;background-color:var(--ink)}.hero{min-height:88vh;display:flex;align-items:center;padding:calc(var(--nav-h) + 4rem) 1.5rem 4rem;background:transparent;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;pointer-events:none;z-index:0}.hero:before{width:300px;height:300px;border:1.5px solid rgba(37,99,235,.28);border-radius:50%;top:12%;left:8%;animation:drift1 16s ease-in-out infinite alternate}.hero:after{width:210px;height:210px;border:1.5px solid rgba(124,58,237,.24);border-radius:32px;bottom:12%;right:8%;animation:drift2 20s ease-in-out infinite alternate}.hero-content{text-align:center;max-width:760px;margin:0 auto;position:relative;z-index:1}.hero h1{font-size:clamp(2.6rem,7vw,4.25rem);line-height:1.05;letter-spacing:-.04em;color:var(--ink);margin-bottom:1rem;animation:fadeInUp .8s var(--ease) both}.hero h2{display:inline-flex;align-items:center;gap:.7rem;font-size:clamp(.85rem,2vw,1rem);font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-bottom:1.75rem;animation:fadeInUp .8s var(--ease) .1s both}.hero h2:before,.hero h2:after{content:"";width:28px;height:2px;background:var(--accent);opacity:.55}.hero p{font-size:1.075rem;color:var(--muted);max-width:620px;margin:0 auto 2.5rem;text-align:justify;text-justify:inter-word;animation:fadeInUp .8s var(--ease) .2s both}.tech-icons{display:flex;justify-content:center;gap:1.75rem;margin-bottom:2.75rem;animation:fadeInUp .8s var(--ease) .3s both}.tech-icons i{font-size:1.9rem;color:var(--muted);transition:color var(--transition),transform var(--transition)}.tech-icons i:hover{color:var(--accent);transform:translateY(-4px)}.cta-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;animation:fadeInUp .8s var(--ease) .4s both}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1.6rem;border-radius:999px;font-weight:600;font-size:.95rem;font-family:inherit;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:background-color var(--transition),color var(--transition),border-color var(--transition),transform var(--transition)}.btn .icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px}.btn .icon i{font-size:1rem;line-height:1}.btn:hover{transform:translateY(-2px)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn.primary{background-color:var(--ink);color:#fff;border-color:var(--ink)}.btn.primary:hover{background-color:var(--accent);border-color:var(--accent)}.btn.secondary{background-color:var(--bg);color:var(--ink);border-color:var(--line-strong)}.btn.secondary:hover{border-color:var(--ink);background-color:var(--bg-alt)}.project-card,.contact-info,.contact-form{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius)}.about-content{display:grid;grid-template-columns:300px 1fr;gap:3.5rem;align-items:start;max-width:980px}.about-image{position:sticky;top:calc(var(--nav-h) + 2rem)}.image-placeholder{width:100%;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}.profile-image{width:100%;height:auto;display:block}.about-text{padding-top:.25rem}.about-text p{margin-bottom:1.3rem;line-height:1.85;color:var(--ink-soft);font-size:1.05rem;text-align:justify;text-justify:inter-word}.about-text p:first-child{font-size:1.35rem;line-height:1.6;font-weight:500;color:var(--ink);margin-bottom:1.75rem}.about-text p:last-child{margin-bottom:0;color:var(--accent);font-weight:500}.experience-grid,.education-grid{display:flex;flex-direction:column}.experience-card,.education-card{display:grid;grid-template-columns:230px 1fr;gap:3rem;padding:2.75rem 0;border-top:1px solid var(--line)}.experience-grid .experience-card:last-child,.education-grid .education-card:last-child{border-bottom:1px solid var(--line)}.entry-meta{display:flex;flex-direction:column;gap:1rem}.entry-duration{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums}.entry-org{display:flex;align-items:center;gap:.75rem}.company-logo,.logo-container{width:42px;height:42px;border-radius:var(--radius-sm);overflow:hidden;background:#fff;border:1px solid var(--line);padding:5px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.company-logo img,.logo-container img{width:100%;height:100%;object-fit:contain}.company{font-weight:600;font-size:.95rem;color:var(--ink)}.entry-body h3{font-size:clamp(1.3rem,2.5vw,1.6rem);font-weight:700;letter-spacing:-.02em;color:var(--ink);margin-bottom:.9rem}.entry-body .description{color:var(--ink-soft);line-height:1.8;font-size:1.02rem;text-align:justify;text-justify:inter-word}.experience-card .description{white-space:pre-line}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;align-items:stretch}.project-card{display:flex;flex-direction:column;padding:1.75rem;position:relative;overflow:hidden}.project-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;min-height:3.3rem}.project-header i{font-size:1.2rem;color:var(--ink);flex-shrink:0;margin-top:.15rem}.project-header h3{font-size:1.2rem;font-weight:700;letter-spacing:-.01em;color:var(--ink);line-height:1.3}.video-placeholder{width:100%;aspect-ratio:16 / 9;background-color:var(--bg-alt);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:1.25rem;position:relative}.video-link{display:block;width:100%;height:100%;text-decoration:none}.video-thumbnail{width:100%;height:100%;object-fit:cover;display:block}.video-overlay{position:absolute;inset:0;background:#16181d59;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;opacity:0;transition:opacity var(--transition)}.video-link:hover .video-overlay{opacity:1}.video-overlay i{font-size:2.75rem;color:#fff}.video-text{font-size:.9rem;font-weight:600;color:#fff}.project-card .description{flex-grow:1;color:var(--ink-soft);line-height:1.75;font-size:1rem;text-align:justify;text-justify:inter-word}.contact-content{display:grid;grid-template-columns:1fr 1.4fr;gap:1.5rem}.contact-info,.contact-form{padding:2.25rem}.contact-details{margin-bottom:2rem}.contact-details p{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem;color:var(--ink);font-size:1.02rem}.contact-details p i{color:var(--accent);font-size:1.1rem;width:24px;text-align:center}.contact-details a{color:var(--ink-soft);text-decoration:none;transition:color var(--transition)}.contact-details a:hover{color:var(--accent)}.social-links{display:flex;gap:.75rem}.social-link{width:44px;height:44px;border-radius:50%;background:var(--bg-alt);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink);text-decoration:none;font-size:1.2rem;transition:background-color var(--transition),color var(--transition),transform var(--transition)}.social-link:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.form-group{margin-bottom:1.1rem;position:relative}.form-group i{position:absolute;left:1rem;top:.95rem;color:var(--muted);font-size:.95rem}.form-group input,.form-group textarea{width:100%;padding:.8rem 1rem .8rem 2.6rem;border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem;color:var(--ink);background:var(--bg);transition:border-color var(--transition),box-shadow var(--transition)}.form-group textarea{height:150px;resize:vertical}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.contact-form button[type=submit]{margin-top:.5rem}.form-status{margin-top:1rem;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.form-status.success{background-color:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.form-status.error{background-color:#fef2f2;color:#991b1b;border:1px solid #fca5a5}footer{background-color:var(--ink);color:#ffffffb3;padding:3rem 1.5rem;text-align:center;font-size:.9rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}.experience-card:nth-child(2),.education-card:nth-child(2),.project-card:nth-child(2){transition-delay:.08s}@media(prefers-reduced-motion:reduce){*{animation:none!important}.reveal{opacity:1;transform:none;transition:none}.about-image{position:static}.hero:before,.hero:after{animation:none!important}html{scroll-behavior:auto}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes drift1{0%{transform:translate(0) scale(1)}to{transform:translate(44px,34px) scale(1.12)}}@keyframes drift2{0%{transform:translate(0) rotate(0)}to{transform:translate(-38px,-30px) rotate(-32deg)}}.navbar .mobile-menu-toggle{display:none}@media(max-width:900px){.about-content{grid-template-columns:1fr;gap:2rem;max-width:560px;margin:0 auto}.about-image{position:static;max-width:240px;margin:0 auto}.contact-content,.projects-grid{grid-template-columns:1fr}.experience-card,.education-card{grid-template-columns:1fr;gap:1.1rem}.entry-meta{flex-direction:row;align-items:center;flex-wrap:wrap;gap:.6rem 1.25rem}}@media(max-width:768px){.about,.experience,.education,.projects,.contact{padding:4.5rem 0}body{background-size:40px 40px}.hero{min-height:80vh;padding:calc(var(--nav-h) + 2.5rem) 1.25rem 3rem}.hero:before{width:190px;height:190px;top:9%;left:4%}.hero:after{width:140px;height:140px;bottom:9%;right:4%}.hero h2{flex-wrap:wrap;justify-content:center;letter-spacing:.14em;gap:.5rem}.section-head{gap:1rem;margin-bottom:2.75rem}.section-head h2{font-size:clamp(1.6rem,7vw,2.2rem)}.cta-buttons{flex-direction:column;align-items:stretch}.btn{width:100%}.navbar .mobile-menu-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:1.2rem;cursor:pointer;z-index:1001;transition:color var(--transition)}.navbar .mobile-menu-toggle:hover{color:var(--accent)}.nav-right{position:fixed;inset:0;height:100vh;width:100%;flex-direction:column;justify-content:center;gap:2.5rem;background-color:#fffffffa;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transform:translate(-100%);opacity:0;visibility:hidden;transition:transform .35s var(--ease),opacity .3s ease;z-index:1000}.nav-right.active{transform:translate(0);opacity:1;visibility:visible}.nav-links{flex-direction:column;align-items:center;gap:1.75rem}.nav-links a,.nav-links button{font-size:1.15rem}}@media(max-width:480px){.container{padding:0 1.25rem}.about,.experience,.education,.projects,.contact{padding:3.5rem 0}.project-card,.contact-info,.contact-form{padding:1.5rem}.experience-card,.education-card{padding:2rem 0}.section-head h2{font-size:1.5rem;gap:.55rem}.entry-body h3{font-size:1.25rem}.tech-icons{gap:1.25rem}.tech-icons i{font-size:1.6rem}.hero h2{font-size:.75rem;letter-spacing:.1em;gap:.45rem}.hero h2:before,.hero h2:after{width:18px}.contact-details p{font-size:.95rem}}
