*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #f59e0b;--primary-600: #d97706}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:#334155;background-color:#fff}.container{max-width:1200px;margin:0 auto;padding:0 24px}.navbar{position:fixed;top:0;width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;transition:all .3s ease;border-bottom:1px solid rgba(226,232,240,.8)}.navbar.scrolled{background:#fffffffa;box-shadow:0 4px 20px #00000014}.nav-container{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;height:72px}.nav-logo a{font-size:1.5rem;font-weight:700;color:#1e293b;text-decoration:none;transition:color .3s ease}.nav-logo a:hover{color:#3b82f6}.nav-menu{display:flex;list-style:none;gap:32px;align-items:center}.nav-link{color:#64748b;text-decoration:none;font-weight:500;font-size:.95rem;transition:all .3s ease;position:relative}.nav-link:hover,.nav-link.active{color:#3b82f6}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:#3b82f6;transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:100%}.resume-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff!important;padding:8px 20px;border-radius:6px;font-weight:600;transition:all .3s ease}.resume-btn:after{display:none}.resume-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666;color:#fff!important}.hamburger{display:none;flex-direction:column;cursor:pointer;gap:4px}.bar{width:24px;height:3px;background-color:#1e293b;transition:.3s;border-radius:2px}.navbar .nav-container{display:flex;align-items:center;justify-content:flex-start;gap:12px}.nav-logo a{display:flex;align-items:center;white-space:nowrap}.nav-social{display:flex;gap:10px;margin-left:8px;flex:0 0 auto}.nav-social a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#1e293b;border-radius:6px;transition:background .2s,color .2s}.nav-social a:hover{background:#f1f5f9;color:#0f172a}.nav-menu{margin-left:auto;display:flex;align-items:center;gap:24px}.nav-social{display:flex;gap:10px;margin-left:8px}.nav-social a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#1e293b;border-radius:6px;transition:background .2s ease,color .2s ease}.nav-social a:hover,.nav-social a:focus-visible{background:transparent;color:#1d4ed8;box-shadow:0 8px 12px #1d4ed859,0 2px 6px #00000014;outline:none}.nav-social svg{stroke:currentColor}@media (max-width: 768px){.hero{padding-top:92px}.hero-buttons{margin-bottom:36px}}@media (max-width: 1023px){.hero{padding-bottom:12px}.about{padding-top:24px}.about .section-title{margin-top:0}}@media (max-width: 768px){.hero{padding-bottom:8px}.about{padding-top:16px}}@media (min-width: 992px){.hero-content{max-width:1000px}.hero-title{white-space:nowrap}}.hero-title{font-size:clamp(2rem,8vw,2rem)}@media (max-width: 991px){.hero-title{white-space:normal}}@media (max-width: 600px){.title-line1,.title-line2{display:block}.title-line1{margin-bottom:.28em}.hero-title{line-height:1.15}.hero-title,.hero-content{overflow:visible}}@media (max-width: 360px){.title-line1{margin-bottom:.32em}}.hero{min-height:60vh;display:flex;align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);position:relative;overflow:hidden;padding-bottom:0;margin-bottom:0}.hero: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"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="50" cy="50" r="0.5" fill="%23334155" opacity="0.1"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.6}.hero-container{max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.hero-content{max-width:780px;animation:fadeInUp 1s ease-out;position:relative;z-index:2;overflow-wrap:anywhere}.hero-title{font-size:clamp(2rem,4.5vw,4rem);font-weight:700;line-height:.9;margin-bottom:16px;color:#1e293b}.highlight{background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:#64748b;margin-bottom:20px;font-weight:500}.hero-description{font-size:1.1rem;color:#475569;line-height:.6;margin-bottom:0}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-flex;align-items:center;padding:8px 16px;border-radius:6px;text-decoration:none;font-weight:600;font-size:.85rem;transition:all .3s ease;border:none;cursor:pointer;margin-bottom:0}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.btn-secondary{background:#fff;color:#374151;border:2px solid #e5e7eb}.btn-secondary:hover{background:#f9fafb;border-color:#3b82f6;color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.hero-container{max-width:1200px;margin:0 auto;padding:2rem 1.25rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) min(32vw,360px);align-items:center;gap:3rem;grid-template-areas:"content photo"}.hero-content{grid-area:content}.hero-photo{grid-area:photo}.hero-photo{display:grid;place-items:center}.hero-photo img{width:clamp(160px,20vw,250px);height:clamp(160px,20vw,250px);border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:10% 10%;object-position:10% 10%;border:4px solid var(--primary, #f59e0b);box-shadow:0 15px 40px #0000002e;transition:transform .22s ease,box-shadow .22s ease}.hero-photo img:hover{transform:translateY(-2px);box-shadow:0 20px 50px #00000038}@media (max-width: 600px){.hero-grid{grid-template-columns:1fr;grid-template-areas:"photo" "content";gap:1.5rem}.hero-photo img{width:220px;height:220px}.hero-photo{justify-self:center}.hero-content{text-align:left!important;align-items:flex-start}.hero-buttons{display:flex;flex-direction:row!important;justify-content:flex-start!important;align-items:center;flex-wrap:nowrap;gap:12px}.btn{margin:0}}@media (min-width: 601px) and (max-width: 1023px){.hero-grid{grid-template-columns:minmax(0,1fr) min(32vw,360px);grid-template-areas:"content photo";gap:2rem}}section{padding:40px 0}.section-header{text-align:center;margin-bottom:64px}.section-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin-bottom:16px}.section-subtitle{font-size:1.1rem;color:#64748b;max-width:600px;margin:0 auto}.about{background:#fff;margin-top:0;margin-bottom:0}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:74px;align-items:start}.about-text,.project-info p{text-align:justify}.about-text p{margin:0 0 5px;font-size:1.1rem;line-height:1.5;color:#475569}.about .section-header{margin-bottom:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:28px}.stat-item{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:#3b82f6;line-height:1}.stat-label{font-size:.9rem;color:#64748b;margin-top:8px}.skills-section h3{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:12px}.skills-grid{display:grid;gap:22px}.skill-category h4{font-size:1.1rem;font-weight:600;color:#374151;margin-bottom:6px}.skills-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tag{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500;transition:all .3s ease}.skill-tag:hover{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;transform:translateY(-1px)}.experience{background:linear-gradient(135deg,#f8fafc,#f1f5f9);margin-bottom:28px}.experience .section-header{margin-bottom:20px}.experience .section-subtitle{margin-top:0}.experience .section-title{margin-bottom:0}.experience-list{margin:0;padding-left:1.25rem;text-align:justify}.experience-list li{margin-bottom:10px;line-height:1.5;color:#475569}.experience-list li::marker{color:#3b82f6;font-size:1.1em}.timeline{position:relative;max-width:800px;margin:0 auto}.timeline:before{content:"";position:absolute;left:32px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#3b82f6,#8b5cf6)}.timeline-item{position:relative;margin-bottom:48px;padding-left:80px}.timeline-dot{position:absolute;left:23px;top:8px;width:18px;height:18px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;border:4px solid white;box-shadow:0 0 0 4px #3b82f633}.timeline-content{background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 20px #00000014;transition:all .3s ease}.timeline-content:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.timeline-date{color:#3b82f6;font-weight:600;font-size:.9rem;margin-bottom:5px;margin-top:0}.timeline-content h3{font-size:1.4rem;font-weight:600;color:#1e293b;margin-bottom:2px}.timeline-content h4{font-size:1.1rem;color:#64748b;margin-bottom:2px;font-weight:500}.timeline-content p{color:#475569;line-height:1.7;margin-bottom:20px}.timeline-content .card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.timeline-content .timeline-date{color:#3b82f6;font-weight:600;font-size:.95rem;white-space:nowrap;margin:0}@media (max-width: 520px){.timeline-content .card-head{flex-direction:column;align-items:flex-start;gap:2px}.timeline-content .timeline-date{font-size:.9rem}}.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:500}.education{background:linear-gradient(135deg,#f8fafc,#f1f5f9);margin-bottom:28px}.education .section-header{margin-bottom:20px}.education .section-title{margin-bottom:0}.education .section-subtitle{margin-top:0}.timeline-content h4 a{color:inherit;text-decoration:none}.timeline-content h4 a:hover,.timeline-content h4 a:focus-visible{outline:none}.education .timeline-content-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:6px}.education .timeline-content .timeline-date{margin:0;color:#3b82f6;font-weight:600;white-space:nowrap;font-size:.95rem}.education .timeline-content .date-sep{display:inline-block;margin:0 6px}@media (max-width: 560px){.education .timeline-content-header{flex-direction:column;align-items:flex-start;gap:4px}.education .timeline-content .timeline-date{white-space:normal}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:32px}.project-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014;transition:all .3s ease}.project-card:hover{transform:translateY(-8px);box-shadow:0 42px 40px #00000059}.project-image{position:relative;height:200px;overflow:hidden}.project-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.project-image:hover .project-overlay{opacity:1}.project-image:hover img{transform:scale(1.05)}.project-overlay{pointer-events:none}.project-links{pointer-events:auto}.project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}@media (min-width: 1024px){.projects-grid{grid-template-columns:repeat(6,1fr)}.projects-grid>.project-card{grid-column:span 2}.projects-grid>.project-card:nth-child(4){grid-column:2 / span 2}.projects-grid>.project-card:nth-child(5){grid-column:4 / span 2}}.project-links{display:flex;gap:8px}.project-link{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;color:#3b82f6;border-radius:6px;text-decoration:none;transition:all .3s ease}.project-link:hover{background:#3b82f6;color:#fff;transform:translateY(-2px)}.project-info{padding:24px}.project-info h3{font-size:1.3rem;font-weight:600;color:#1e293b;margin-bottom:12px}.project-info p{color:#64748b;line-height:1.6;margin-bottom:20px}.project-tech{display:flex;flex-wrap:wrap;gap:8px}.tech-badge{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.contact{background:linear-gradient(180deg,#b8b2d3,#97a7bf);color:#b4bccd;border-top:1px solid #e5e7eb}.contact-content{display:grid!important;grid-template-columns:minmax(280px,520px) 1fr;grid-template-areas:"art form";align-items:center;gap:24px}.contact-illustration{grid-area:art;justify-self:start}.contact-form-container{grid-area:form;justify-self:stretch}.contact-hero{width:100%;max-width:460px;aspect-ratio:4 / 3;-o-object-fit:contain;object-fit:contain;height:auto;border:0;border-radius:0;box-shadow:none;background:transparent;display:block}.contact-form-container,.contact-form{width:100%}@media (max-width: 768px){.contact-content{display:grid;grid-template-columns:1fr;justify-items:center;gap:16px}.contact{min-height:100vh;display:grid;place-items:center}.contact-illustration{display:none}.contact-form-container{width:100%;max-width:none;margin:0;padding:0 16px;border:0;background:transparent}.contact-form{gap:14px}.form-group input,.form-group textarea{width:100%}}.contact{background:#e5e5e7b8;color:#adb7c4}.contact .section-title,.contact .section-subtitle{color:#000}.contact-info{display:flex;flex-direction:column;gap:16px}.contact-form-container{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.contact-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column}.form-group input,.form-group textarea{padding:12px 16px;background:#fff!important;color:#0f172a;border:1px solid rgba(15,23,42,.15);border-radius:8px;font-size:1rem;font-style:normal;font-weight:400;font-family:inherit;transition:all .3s ease}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder{color:#64748b}.form-group input::placeholder,.form-group textarea::placeholder{color:#64748b}.form-group input:focus,.form-group textarea:focus{outline:none;background:#fff;border-color:#3e7ee4;box-shadow:0 0 0 3px #3b82f633}.contact-form .btn-primary{align-self:flex-start;margin-top:8px}.footer{background:#0f172a;color:#94a3b8;padding:32px 0;text-align:center}.footer-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 24px}.social-links{display:flex;gap:16px}.social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;color:#94a3b8;border-radius:8px;text-decoration:none;transition:all .3s ease}.social-links a:hover{background:#3b82f6;color:#fff;transform:translateY(-2px)}@media (max-width: 1023px){.about-content{grid-template-columns:1fr;gap:48px}.contact-content{grid-template-columns:1fr;gap:20px}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}}@media (min-width: 641px){.nav-menu{position:static;left:auto;top:auto;flex-direction:row;background:transparent;width:auto;padding:0;box-shadow:none;gap:20px;display:flex!important}.hamburger{display:none!important}}@media (max-width: 640px){.hamburger{display:inline-flex}section{padding:64px 0}.btn{padding:14px 28px}.stats{grid-template-columns:1fr;gap:24px;text-align:center}.timeline:before{left:16px}.timeline-item{padding-left:56px}.timeline-dot{left:7px}.timeline-content{padding:24px}.projects-grid{grid-template-columns:1fr}.contact-form-container{padding:24px}.footer-content{flex-direction:column;gap:16px}}@media (max-width: 480px){.container,.nav-container,.hero-container{padding:0 16px}.section-title{font-size:2rem}}.text-center{text-align:center}.mt-4{margin-top:32px}.mb-4{margin-bottom:32px}html{scroll-padding-top:72px}.loading{opacity:0;animation:fadeIn .6s ease-in-out forwards}@keyframes fadeIn{to{opacity:1}}.hero-subtitle{min-height:1.6em}#typed:after{content:"▍";margin-left:2px;animation:blink 2s steps(1) infinite}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion: reduce){#typed:after{animation:none;content:""}}.navbar .nav-container{display:flex;align-items:center;gap:12px}.nav-menu{display:flex;align-items:center;gap:24px}.hamburger{display:none}@media (min-width:641px) and (max-width:1024px){.nav-menu{gap:16px}.nav-logo a{font-size:1.05rem}.resume-btn{padding:8px 12px}.nav-social{gap:8px}}@media (max-width:640px){.hamburger{display:inline-flex;margin-left:auto}.nav-menu{display:none;position:absolute;top:64px;right:16px;flex-direction:column;gap:12px;background:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 10px 30px #0000001f;z-index:1000}.nav-menu.active{display:flex}}.navbar .nav-container{display:flex;align-items:center}.nav-logo,.nav-social{display:flex;align-items:center;gap:10px}@media (min-width: 641px){.nav-social{display:flex!important}.hamburger{display:none!important}.nav-menu{display:flex!important}}@media (max-width: 640px){.nav-social{display:none!important}}.nav-container{display:flex;align-items:center;flex-wrap:nowrap}.nav-logo a{white-space:nowrap}.nav-social{display:flex;align-items:center;gap:8px;margin-left:8px}@media (max-width: 640px){.nav-logo{display:flex;align-items:center;gap:8px}.nav-social{display:flex!important;gap:8px}.nav-social a{width:24px;height:24px}.hamburger{display:inline-flex;margin-left:auto}.nav-menu{display:none}}@media (max-width: 380px){.nav-logo a{font-size:1rem}.nav-social a{width:20px;height:20px}}[data-aos]{opacity:1;transform:none}.form-status{display:inline-block;padding:10px 12px;border-radius:8px;margin-top:8px;font-size:.95rem}.form-status.success{background:#ecfdf5;color:#065f46}.form-status.error{background:#fef2f2;color:#991b1b}.coursework{margin-top:12px}.coursework-title{font-size:.95rem;font-weight:600;color:#1e293b;margin:10px 0 8px}.course-tags{display:flex;flex-wrap:wrap;gap:8px}.course-tag{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:500;line-height:1;white-space:nowrap}@media (max-width: 420px){.course-tag{white-space:normal}}:root{--bg-soft: #FFF7ED;--bg-soft-2: #FFEFD6;--primary: #F59E0B;--primary-600: #D97706;--primary-700: #B45309;--accent: #FB923C;--accent-2: #FDBA74;--tag-bg-1: #FFEDD5;--tag-bg-2: #FED7AA;--text: #1f2937;--muted: #64748b}body{color:var(--text)}.hero{background:linear-gradient(135deg,var(--bg-soft) 0%,var(--bg-soft-2) 100%)}.experience,.education{background:linear-gradient(135deg,var(--bg-soft) 0%,#FFF3E0 100%)}.projects{background:#fff}.contact{background:linear-gradient(180deg,#fff7ed,#ffe8cc)}.nav-logo a:hover,.nav-link:hover,.nav-link.active{color:var(--primary)}.nav-link:after,.nav-link:hover:after,.nav-link.active:after{background:var(--primary)}.resume-btn{background:linear-gradient(135deg,var(--primary),var(--primary-600));color:#fff!important}.resume-btn:hover{background:linear-gradient(135deg,var(--primary-600),var(--primary-700));box-shadow:0 4px 12px #f59e0b59}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-600));color:#fff}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-600),var(--primary-700));box-shadow:0 8px 25px #f59e0b59}.btn-secondary:hover{border-color:var(--primary);color:var(--primary);box-shadow:0 8px 25px #0000001a}.btn-primary,.btn-primary:visited{color:#fff}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary:focus-visible{color:#fff!important;text-decoration:none}.btn-primary svg{stroke:#fff;fill:none}.btn-primary:hover svg,.btn-primary:focus-visible svg{stroke:#fff}.highlight{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.timeline:before{background:linear-gradient(to bottom,var(--primary),var(--accent))}.timeline-dot{background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 0 0 4px #f59e0b40}.timeline-date{color:var(--primary)}.tech-tag{background:linear-gradient(135deg,#fff1e6,#ffe4cc);color:var(--primary-700)}.skill-tag,.tech-badge{background:linear-gradient(135deg,var(--tag-bg-1),var(--tag-bg-2));color:#7c2d12}.project-link{color:var(--primary)}.project-link:hover{background:var(--primary);color:#fff}.navbar{background:#fff;border-bottom:1px solid rgba(253,186,116,.45)}.navbar.scrolled{background:#fffffffa;box-shadow:0 4px 20px #f59e0b26}.nav-social a:hover,.nav-social a:focus-visible{background:transparent;color:var(--primary-600);box-shadow:0 8px 12px #f59e0b59,0 2px 6px #00000014}.section-title{color:#1e293b}.section-subtitle{color:var(--muted)}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #f59e0b40}#typed:after{color:var(--primary-700)}:root{--o-50: #fff7ed;--o-100: #ffedd5;--o-200: #fed7aa;--o-300: #fdba74;--o-400: #fb923c;--o-500: #f97316;--o-600: #ea580c;--o-700: #c2410c;--o-800: #9a3412}.nav-link:hover,.nav-link.active{color:var(--o-600)}.nav-link:after{background:var(--o-600)}.resume-btn,.btn-primary{background:linear-gradient(135deg,var(--o-500),var(--o-600));color:#fff}.resume-btn:hover,.btn-primary:hover{background:linear-gradient(135deg,var(--o-600),var(--o-700));box-shadow:0 8px 25px #ea580c59}.skill-tag{background:linear-gradient(135deg,var(--o-50),var(--o-100));color:var(--o-800)}.skill-tag:hover{background:linear-gradient(135deg,var(--o-500),var(--o-600));color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #f9731647}.tech-badge{background:linear-gradient(135deg,var(--o-50),var(--o-100));color:var(--o-800)}.experience-list li::marker{color:var(--o-600)}.timeline-date,.date-range{color:var(--o-600)}.course-tag{display:inline-block;background:linear-gradient(135deg,var(--o-50),var(--o-100));color:var(--o-800);padding:4px 10px;border-radius:12px;font-size:.85rem;font-weight:500}.project-image:hover .project-overlay,.project-card:hover .project-overlay{opacity:1}.project-link{background:#fff;color:var(--o-600)}.project-link:hover{background:var(--o-600);color:#fff}.timeline:before{background:linear-gradient(to bottom,var(--o-600),var(--o-400))}.timeline-dot{background:linear-gradient(135deg,var(--o-500),var(--o-600));box-shadow:0 0 0 4px #f973162e}a:hover{color:var(--o-600)}.experience .timeline .timeline-content .timeline-date,.education .timeline .timeline-content .timeline-date,.timeline .timeline-content .timeline-date time,.timeline .timeline-content .timeline-date a,.timeline .timeline-content .timeline-date .date-sep{color:var(--o-600)!important}.timeline .timeline-content .timeline-date a:hover{color:var(--o-700)!important}.education .timeline-content h4 a,.education .timeline-content h4 a:visited{color:inherit;text-decoration:none}.education .timeline-content h4 a:hover,.education .timeline-content h4 a:focus-visible,.education .timeline-content h4 a:active{color:var(--o-700);text-decoration-thickness:2px;text-underline-offset:3px}.footer .social-links a{background:#ffffff14;color:#f59e0b;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.footer .social-links a:hover,.footer .social-links a:focus-visible{background:linear-gradient(135deg,var(--primary, #f59e0b),var(--primary-600, #d97706));color:#fff;box-shadow:0 8px 18px #f59e0b59;outline:none}:root{--footer-bg-900: #332b25;--footer-bg-950: #26201c;--footer-text: rgba(255, 255, 255, .85);--footer-muted: rgba(255, 255, 255, .65);--footer-ring: rgba(245, 158, 11, .18)}.footer{background:linear-gradient(180deg,var(--footer-bg-900),var(--footer-bg-950));color:var(--footer-text);border-top:1px solid var(--footer-ring)}.footer .footer-content p{color:var(--footer-text)}.footer .social-links a{background:#ffffff14;color:var(--primary, #f59e0b);border-radius:10px;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .15s ease}.footer .social-links a svg{stroke:currentColor;fill:none}.footer .social-links a:hover,.footer .social-links a:focus-visible{background:linear-gradient(135deg,var(--primary, #f59e0b),var(--primary-600, #d97706));color:#fff;box-shadow:0 10px 24px #f59e0b59;outline:none;transform:translateY(-2px)}@media (max-width: 640px){.footer .footer-content{gap:12px}}:root{--orange-500: var(--primary, #f59e0b);--orange-600: var(--primary-600, #d97706)}.project-card,.timeline-content{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;will-change:transform,box-shadow}.project-card{box-shadow:0 10px 20px #00000014}.project-card:hover,.project-card:focus-visible{transform:translateY(-6px);box-shadow:0 14px 36px #00000024,0 0 0 1px #f59e0b2e,0 12px 28px #f59e0b47;outline:none}.timeline-content{box-shadow:0 4px 16px #00000014;border:1px solid rgba(245,158,11,.1)}.timeline-content:hover,.timeline-content:focus-visible{transform:translateY(-4px);box-shadow:0 12px 30px #00000021,0 0 0 1px #f59e0b38,0 10px 24px #f59e0b42;outline:none}@media (prefers-reduced-motion: reduce){.project-card,.timeline-content{transition:box-shadow .25s ease}.project-card:hover,.project-card:focus-visible,.timeline-content:hover,.timeline-content:focus-visible{transform:none}}@media (max-width: 600px){.hero-grid{grid-template-columns:1fr;grid-template-areas:"photo" "content";justify-items:start!important;align-items:start!important;gap:1.5rem}.hero-photo{justify-self:center}.hero-content{text-align:left!important;justify-self:start!important;align-self:start!important;margin-left:0!important;margin-right:0!important}.hero-buttons{display:flex;flex-direction:row!important;justify-content:flex-start!important;align-items:center;gap:12px;flex-wrap:nowrap}.hero-title,.hero-subtitle,.hero-description{text-align:left!important}.hero .hero-buttons{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;flex-wrap:nowrap!important;gap:12px!important}.hero .btn{width:auto!important;max-width:none!important;justify-content:flex-start!important}}@media (min-width: 601px) and (max-width: 1023px){.hero-grid{grid-template-columns:minmax(0,1fr) min(32vw,360px)!important;grid-template-areas:"content photo"!important;justify-items:stretch;gap:2rem}}@media (max-width: 640px){#home .hero-grid{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:1.25rem!important}#home .hero-photo{order:-1!important;align-self:center!important}#home .hero-content{order:0!important;width:100%!important;text-align:left!important;margin:0!important}#home .hero-title,#home .hero-subtitle,#home .hero-description{text-align:left!important}#home .hero-buttons{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:12px!important;flex-wrap:nowrap!important}#home .btn{width:auto!important;max-width:none!important;justify-content:flex-start!important;margin:0!important}}.hero-photo{position:relative}.hero-photo:before{content:"";position:absolute;left:50%;bottom:-8px;width:70%;height:18px;transform:translate(-50%) scale(.95);pointer-events:none;background:radial-gradient(ellipse at center,#f59e0b59,#f59e0b2e 45%,#f59e0b00 70%);filter:blur(6px);opacity:0;transition:opacity .25s ease,transform .25s ease}.hero-photo:hover:before{opacity:1;transform:translate(-50%) scale(1.05)}.hero-photo img{transition:transform .25s ease,box-shadow .25s ease,object-position .25s ease;transition:transform .25s ease,box-shadow .25s ease,object-position .25s ease,-o-object-position .25s ease}.hero-photo:hover img{transform:translateY(-3px);box-shadow:0 22px 55px #0000003d}.degree-title{position:relative;display:inline-block;cursor:zoom-in}.cert-preview{position:absolute;left:0;top:100%;transform:translateY(10px) scale(.98);width:min(82vw,420px);max-height:70vh;padding:0;border-radius:10px;background:#fff;border:1px solid rgba(15,23,42,.12);box-shadow:0 20px 45px #0000002e,0 2px 10px #00000014;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:30}.cert-preview img{display:block;width:100%;height:auto}.degree-title{margin:0}.degree-link{color:inherit;text-decoration:none;cursor:pointer;position:relative;display:inline-flex;align-items:center;gap:6px;transition:color .15s ease}.degree-link:after{font-size:.9rem;opacity:0;transform:translateY(2px);transition:opacity .15s ease,transform .15s ease}.degree-link:hover,.degree-link:focus-visible{outline:none}.degree-link:hover:after,.degree-link:focus-visible:after{opacity:1;transform:translateY(0)}:root{--text: #0a0f1a;--muted: #1b2433}body,p,li,.about-text p,.project-info p{color:var(--text)!important;font-weight:500}h1,h2,h3,h4,h5,h6,.hero-title,.section-title,.timeline-content h3,.timeline-content h4{color:#080d17!important;font-weight:750!important}.hero-subtitle,.section-subtitle,.timeline-date{color:var(--muted)!important;font-weight:600!important}.footer,.footer .footer-content p,.footer a{color:var(--footer-text)!important}.footer a:hover,.footer a:focus-visible{color:#fff!important}.certifications{background:#fff}.cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}@media (max-width:1024px){.cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.cert-grid{grid-template-columns:1fr}}.cert-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:12px;box-shadow:0 6px 16px #0000000f;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex}.cert-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #0000001f,0 0 0 1px #f59e0b2e}.cert-body{padding:20px;display:flex;flex-direction:column;gap:10px;width:100%}.cert-title{font-size:1.05rem;line-height:1.3;margin:0;font-weight:700;color:#0b1220}.cert-title a{color:#0b1220;text-decoration:none;transition:color .15s ease,text-underline-offset .15s ease}.cert-title a:hover,.cert-title a:focus-visible{color:var(--o-700, #c2410c);text-underline-offset:3px;outline:none}.cert-meta{margin:0;color:#475569;font-weight:600;font-size:.95rem}.cert-tags{display:flex;flex-wrap:wrap;gap:8px}.cert-tag{background:linear-gradient(135deg,var(--o-50, #c29256),var(--o-100, #c89e68));color:var(--o-800, #9a3412);padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600}.certifications .section-header{margin-bottom:16px}.certifications .section-title{margin-bottom:8px}.certifications .section-subtitle{margin:0}.certifications .cert-grid{margin-top:0}.cert-subtitle{display:flex;flex-wrap:wrap;gap:8px;margin:0}.cert-pill{display:inline-block;background:linear-gradient(135deg,var(--o-50, #ffedd5),var(--o-100, #fed7aa));color:var(--o-800, #9a3412);padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;line-height:1}.cert-meta{display:none}.cert-title a:hover,.cert-title a:focus-visible{color:var(--o-700, #c2410c);text-underline-offset:3px}.cert-card:hover{transform:translateY(-2px);border-color:#f59e0b47;box-shadow:0 14px 28px #0000001f,0 0 0 1px #f59e0b3d,0 12px 26px #f59e0b2e}.experience{background:linear-gradient(135deg,var(--bg-soft, #FFF7ED) 0%,#FFF3E0 100%)}.education{background:#fff!important}.projects{background:linear-gradient(135deg,var(--bg-soft, #FFF7ED) 0%,#FFF3E0 100%)!important}@media (min-width: 1600px){.hero{min-height:64vh;padding:64px 0}.hero-container{max-width:1440px}.hero-grid{gap:2.5rem;grid-template-columns:minmax(0,1fr) 420px}.hero-title{font-size:clamp(2.4rem,3.4vw,4rem)}.hero-subtitle{font-size:clamp(1.125rem,1.4vw,1.5rem)}.hero-description{font-size:clamp(1rem,1.2vw,1.25rem)}.hero-photo img{width:clamp(220px,18vw,320px);height:clamp(220px,18vw,320px)}.btn{padding:14px 22px;font-size:1rem}}@media (min-width: 1920px){.hero{min-height:66vh;padding:72px 0}.hero-container{max-width:1600px}.hero-grid{gap:3rem;grid-template-columns:minmax(0,1fr) 480px}.hero-title{font-size:clamp(2.6rem,3.2vw,4.4rem)}.hero-subtitle{font-size:clamp(1.25rem,1.6vw,1.6rem)}.hero-description{font-size:clamp(1.1rem,1.35vw,1.35rem)}.hero-photo img{width:clamp(260px,20vw,380px);height:clamp(260px,20vw,380px)}.btn{padding:16px 24px;font-size:1.05rem}}@media (min-width: 2560px){.hero{min-height:68vh;padding:80px 0}.hero-container{max-width:1760px}.hero-grid{gap:45.25rem;grid-template-columns:minmax(0,1fr) 560px}.hero-title{font-size:clamp(6rem,5vw,5rem)}.hero-subtitle{font-size:clamp(1.35rem,1.8vw,1.8rem)}.hero-description{font-size:clamp(1.2rem,1.6vw,1.6rem)}.hero-photo img{width:clamp(320px,22vw,560px);height:clamp(320px,22vw,560px)}.btn{padding:18px 28px;font-size:1.1rem}}@media (min-width: 3200px){.hero-container{max-width:1920px}.hero-grid{grid-template-columns:minmax(0,1fr) 640px}.hero-title{font-size:clamp(3.2rem,2.8vw,5.6rem)}.hero-photo img{width:clamp(360px,24vw,520px);height:clamp(360px,24vw,520px)}}.hero-subtitle,.hero-subtitle #typed{font-size:inherit;line-height:1.25}#typed:after{font-size:1em}@media (min-width:1400px){.hero{min-height:50vh;padding:24px 0}.hero-container{max-width:1440px}.hero-grid{gap:2.5rem;grid-template-columns:minmax(0,1fr) 420px;align-items:center}.hero-content{gap:18px}.hero-title{font-size:clamp(2.4rem,3.4vw,3.8rem)}.hero-subtitle{font-size:clamp(2rem,1.4vw,1.5rem)}.hero-description{font-size:clamp(1rem,1.2vw,1.25rem)}.hero-photo img{width:clamp(220px,18vw,320px);height:clamp(220px,18vw,320px)}.btn{padding:14px 22px;font-size:1rem}.hero-buttons{gap:14px;margin-top:4px}}@media (min-width:1920px){.hero{min-height:66vh;padding:72px 0}.hero-container{max-width:1600px}.hero-grid{gap:3rem;grid-template-columns:minmax(0,1fr) 480px;align-items:center}.hero-content{gap:22px}.hero-title{font-size:clamp(2.6rem,3.2vw,4.2rem)}.hero-subtitle{font-size:clamp(1.25rem,1.6vw,1.7rem)}.hero-description{font-size:clamp(1.1rem,1.35vw,1.4rem)}.hero-photo img{width:clamp(260px,20vw,380px);height:clamp(260px,20vw,380px)}.btn{padding:16px 24px;font-size:1.05rem}}@media (min-width:2560px){.hero{min-height:60vh;padding:74px 0}.hero-container{max-width:1760px}.hero-grid{gap:30.5rem;grid-template-columns:minmax(0,1fr) 560px;align-items:center}.hero-content{gap:28px}.hero-title{font-size:clamp(6rem,6.6vw,5rem)}.hero-subtitle{font-size:clamp(3.35rem,2.8vw,4rem)}.hero-description{font-size:clamp(1.15rem,1.5vw,1.6rem)}.hero-photo img{width:clamp(320px,22vw,520px);height:clamp(320px,22vw,520px)}.btn{padding:18px 28px;font-size:3.1rem}.hero-buttons{gap:36px}}@media (min-width:3200px){.hero-container{max-width:1920px}.hero-grid{grid-template-columns:minmax(0,1fr) 640px;gap:4rem}.hero-content{gap:32px}.hero-title{font-size:clamp(5.2rem,3vw,5.6rem)}.hero-subtitle{font-size:clamp(1.5rem,2vw,2.2rem)}.hero-photo img{width:clamp(360px,24vw,560px);height:clamp(360px,24vw,560px)}}@media (min-width:1024px) and (max-width:1400px){section#home.hero{min-height:60vh!important;padding-top:72px!important;padding-bottom:12px!important}#home .hero-container{max-width:1280px}#home .hero-grid{grid-template-columns:minmax(0,1.25fr) 320px;gap:.25rem;align-items:center}#home .hero-title{margin-bottom:18px}#home .hero-subtitle{margin-top:6px;margin-bottom:16px;font-size:1.2rem}#home .hero-buttons{margin-top:18px}#home .hero-photo img{width:clamp(200px,22vw,320px);height:clamp(200px,22vw,320px)}}#home .hero-content{display:flex;flex-direction:column;gap:16px}#home .hero-title,#home .hero-subtitle{margin:0}#home .hero-buttons{margin-top:0}@media (min-width: 1024px){#home .hero-content{gap:20px}#home .hero-buttons{margin-top:8px}}@media (min-width: 1600px){#home .hero-content{gap:24px}#home .hero-buttons{margin-top:10px}}@media (min-width: 1920px){#home .hero-content{gap:28px}}@media (min-width: 2560px){#home .hero-content{gap:44px}#contact .btn,#contact .btn-primary,#contact button[type=submit]{font-size:.9rem;padding:12px 18px;line-height:1.1}}[data-aos]{opacity:1;transform:none;transition-property:opacity,transform;transition-duration:var(--aos-duration,.4s);transition-timing-function:cubic-bezier(.22,1,.36,1);transition-delay:var(--aos-delay,0ms)}body.aos2-ready [data-aos]{opacity:0;transform:var(--aos-start,translateY(0))}[data-aos=fade-up]{--aos-start:translateY(24px)}[data-aos=fade-down]{--aos-start:translateY(-24px)}body.aos2-ready [data-aos].aos-animate{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-aos],body.aos2-ready [data-aos],body.aos2-ready [data-aos].aos-animate{opacity:1;transform:none;transition:none}}.form-status{opacity:1;transition:opacity .4s ease}.form-status.is-hiding{opacity:0}@media (min-width: 320px) and (max-width: 800px){#contact input[type=text],#contact input[type=email],#contact input[type=tel],#contact input[type=url],#contact input[type=search],#contact textarea{font-size:17px;height:56px;padding:16px 38px 16px 28px}#contact button[type=submit],#contact #contactSubmit{font-size:17px;padding:6px 10px;height:56px}}#contact input[type=text],#contact input[type=email],#contact input[type=tel],#contact input[type=url],#contact input[type=search],#contact textarea{text-align:left!important}#contact input::-moz-placeholder,#contact textarea::-moz-placeholder{text-align:left!important}#contact input::placeholder,#contact textarea::placeholder{text-align:left!important}#contact .contact-form-container,#contact .contact-content,#contact form{text-align:left!important}
