.dots-background[data-astro-cid-sckkx6r4]{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden}.background-dot[data-astro-cid-sckkx6r4]{position:absolute;border-radius:50%;pointer-events:none;box-shadow:0 0 4px #00b4d84d;transition:opacity .3s ease}header[data-astro-cid-3ef6ksr2]{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0a1929f2;backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}nav[data-astro-cid-3ef6ksr2]{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.logo[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--text-bright);font-size:1.5rem;font-weight:600;text-decoration:none;transition:color .3s ease}.logo[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--accent-primary)}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;gap:2rem;align-items:center;list-style:none;margin:0;padding:0}.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--text-muted);text-decoration:none;font-size:.95rem;transition:color .3s ease}.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--text-bright)}.menu-toggle[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;gap:6px;cursor:pointer;padding:4px}.bar[data-astro-cid-3ef6ksr2]{width:25px;height:2px;background-color:var(--text-muted);transition:.3s}.cv-button-container[data-astro-cid-3ef6ksr2]{margin-left:1rem}.cv-button[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;color:var(--text-muted)!important;padding:.4rem .8rem;border-radius:4px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s ease;border:1px solid var(--text-muted)}.cv-button[data-astro-cid-3ef6ksr2]:hover{color:var(--text-bright)!important;border-color:var(--text-bright)}@media (max-width: 768px){.menu-toggle[data-astro-cid-3ef6ksr2]{display:flex}.nav-links[data-astro-cid-3ef6ksr2]{position:fixed;top:80px;left:0;width:100%;background:#0a1929f2;backdrop-filter:blur(10px);flex-direction:column;align-items:center;padding:2rem 0;gap:1.5rem;clip-path:circle(0px at top right);transition:clip-path .5s ease-out}.nav-links[data-astro-cid-3ef6ksr2].active{clip-path:circle(1000px at top right)}.cv-button-container[data-astro-cid-3ef6ksr2]{margin-left:0;margin-top:.5rem}.cv-button[data-astro-cid-3ef6ksr2]{padding:.75rem 1.5rem}}.hero[data-astro-cid-bbe6dxrz]{height:100vh;display:flex;align-items:center;text-align:center;padding-top:80px;contain:content}.hero-content[data-astro-cid-bbe6dxrz]{max-width:800px;margin:0 auto;will-change:transform}.hero-title[data-astro-cid-bbe6dxrz]{font-size:2.5rem;font-weight:700;margin-bottom:10px;color:var(--heading-color);text-rendering:optimizeLegibility}.cursor[data-astro-cid-bbe6dxrz]{display:inline-block;width:2px;background-color:var(--accent-primary);margin-left:2px;animation:blink 1s infinite}.cursor[data-astro-cid-bbe6dxrz].typing{animation:none}.cursor[data-astro-cid-bbe6dxrz].hide{display:none}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (max-width: 768px){.hero-title[data-astro-cid-bbe6dxrz]{font-size:2rem}}.education-section[data-astro-cid-2gvrk3wr]{background:#0a192926;padding:3rem 0;border-radius:8px}.timeline-item[data-astro-cid-2gvrk3wr] .timeline-dot[data-astro-cid-2gvrk3wr]{background:#00b4d814;color:var(--text-bright);padding:6px 8px;border-radius:6px}.work-mini-container[data-astro-cid-wkx7uqji]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:1rem}.work-mini-card[data-astro-cid-wkx7uqji]{border:1px solid var(--border-subtle);border-radius:8px;padding:1rem;transition:transform .2s ease}.work-mini-card[data-astro-cid-wkx7uqji]:hover{transform:translateY(-2px)}.work-mini-header[data-astro-cid-wkx7uqji]{margin-bottom:.5rem}.work-mini-header[data-astro-cid-wkx7uqji] h3[data-astro-cid-wkx7uqji]{font-size:1rem;color:var(--text-bright);margin:0}.work-mini-header[data-astro-cid-wkx7uqji] h4[data-astro-cid-wkx7uqji]{font-size:.9rem;color:var(--accent-primary);margin:.2rem 0}.work-mini-description[data-astro-cid-wkx7uqji]{margin:0;line-height:1.4}@media (max-width: 768px){.work-mini-container[data-astro-cid-wkx7uqji]{grid-template-columns:1fr}}.skills-cards[data-astro-cid-ab4ihpzs]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1.25rem}.skill-card[data-astro-cid-ab4ihpzs]{background:linear-gradient(180deg,#0a192999,#0613208c);border:1px solid var(--border-subtle);border-radius:10px;padding:0;box-shadow:0 6px 18px #02061759;overflow:hidden}.card-header[data-astro-cid-ab4ihpzs]{padding:.65rem 1rem;background:#ffffff05;color:var(--text-bright);border-left:6px solid var(--accent-secondary)}.card-header[data-astro-cid-ab4ihpzs] h3[data-astro-cid-ab4ihpzs]{margin:0;font-size:1.06rem;font-weight:700;letter-spacing:.2px}.skill-list[data-astro-cid-ab4ihpzs]{list-style:none;margin:0;padding:.9rem 1rem;display:grid;gap:.5rem}.skill-meta[data-astro-cid-ab4ihpzs]{display:flex;align-items:center;gap:.8rem}.skill-dot[data-astro-cid-ab4ihpzs]{width:10px;height:10px;border-radius:50%;background:var(--accent-primary);flex:0 0 10px;box-shadow:0 0 6px #00a0ff1a}.skill-name[data-astro-cid-ab4ihpzs]{font-weight:400;color:var(--text-muted);font-size:.96rem}@media (min-width: 1100px){.skills-cards[data-astro-cid-ab4ihpzs]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.card-header[data-astro-cid-ab4ihpzs]{padding:.6rem .8rem}.skill-list[data-astro-cid-ab4ihpzs]{padding:.7rem .8rem}.skill-name[data-astro-cid-ab4ihpzs]{font-size:.95rem}}.projects-section[data-astro-cid-amng4zvp]{padding:4rem 0}.projects-grid[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.project-card[data-astro-cid-amng4zvp]{background:#ffffff08;border-radius:12px;padding:1.5rem;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1rem}.project-card[data-astro-cid-amng4zvp]:hover{transform:translateY(-5px);border-color:var(--accent-primary);background:#ffffff0d}.project-card[data-astro-cid-amng4zvp] h3[data-astro-cid-amng4zvp]{color:var(--text-bright);font-size:1.2rem;margin:0}.project-description[data-astro-cid-amng4zvp]{line-height:1.6;flex-grow:1}.project-tags[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:.5rem}.subsection-title[data-astro-cid-amng4zvp]{margin-top:2rem;margin-bottom:0;color:var(--text-bright);font-size:1.05rem}.automation-projects[data-astro-cid-amng4zvp]{margin-top:1.6rem}.automation-title[data-astro-cid-amng4zvp]{margin-top:2rem}.view-project-btn[data-astro-cid-amng4zvp]{background:transparent;border:1px solid var(--accent-primary);color:var(--accent-primary);padding:.75rem;border-radius:6px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.view-project-btn[data-astro-cid-amng4zvp]:hover{background:var(--accent-primary);color:var(--background)}.project-modal[data-astro-cid-amng4zvp]{display:none;position:fixed;inset:0;z-index:1000}.project-modal[data-astro-cid-amng4zvp].active{display:block}.modal-overlay[data-astro-cid-amng4zvp]{position:absolute;inset:0;background:#0a1929d9;backdrop-filter:blur(5px);z-index:1001}.modal-container[data-astro-cid-amng4zvp]{position:relative;width:90%;max-width:1200px;max-height:90vh;margin:2rem auto;background:#0a1929f2;border-radius:12px;border:1px solid rgba(0,180,216,.2);overflow:hidden;opacity:0;transform:translateY(20px);transition:all .3s ease;z-index:1003;box-shadow:0 8px 32px #0000004d}.project-modal[data-astro-cid-amng4zvp].active .modal-container[data-astro-cid-amng4zvp]{opacity:1;transform:translateY(0)}.modal-close[data-astro-cid-amng4zvp]{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#00b4d8;font-size:2rem;cursor:pointer;z-index:1004;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-close[data-astro-cid-amng4zvp]:hover{background:#00b4d81a}.modal-content[data-astro-cid-amng4zvp]{max-height:90vh;overflow-y:auto;padding:2rem}.modal-media[data-astro-cid-amng4zvp]{width:100%;margin-bottom:2rem;border-radius:8px;overflow:hidden}.modal-image[data-astro-cid-amng4zvp]{width:100%;height:auto;border-radius:8px}.modal-title[data-astro-cid-amng4zvp]{color:#00b4d8;margin-bottom:1rem}.modal-tags[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.modal-description[data-astro-cid-amng4zvp]{color:#94a3b8;line-height:1.6;margin-bottom:2rem}.modal-details[data-astro-cid-amng4zvp]{color:#94a3b8}.modal-dot[data-astro-cid-amng4zvp]{position:absolute;border-radius:50%;pointer-events:none;box-shadow:0 0 4px #00b4d84d;transition:opacity .3s ease}@media (min-width: 768px){.modal-content[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}.modal-media[data-astro-cid-amng4zvp]{margin-bottom:0;position:sticky;top:2rem}}.certificates-section[data-astro-cid-t7n7ay2h]{padding:4rem 0}.certificates-grid[data-astro-cid-t7n7ay2h]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.certificate-item[data-astro-cid-t7n7ay2h] .certificate-content[data-astro-cid-t7n7ay2h] h3[data-astro-cid-t7n7ay2h]{font-size:1rem;color:var(--text-bright);opacity:.9;margin:0 0 4px}.certificate-item[data-astro-cid-t7n7ay2h] .certificate-content[data-astro-cid-t7n7ay2h] p[data-astro-cid-t7n7ay2h]{color:var(--text-muted);font-size:.85rem;opacity:.85;margin:0}.cert-grid[data-astro-cid-t7n7ay2h]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.certificate-tile[data-astro-cid-t7n7ay2h]{display:flex;gap:.75rem;align-items:center;padding:.75rem;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.03)}.tile-icon[data-astro-cid-t7n7ay2h]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#00b4d80f;border-radius:6px;font-size:18px}.tile-body[data-astro-cid-t7n7ay2h]{display:flex;flex-direction:column}.tile-title[data-astro-cid-t7n7ay2h]{font-weight:600;color:var(--text-bright);font-size:.98rem}.tile-sub[data-astro-cid-t7n7ay2h]{color:var(--text-muted);font-size:.85rem}.certificates-section[data-astro-cid-t7n7ay2h]{padding:2rem 0}.certificate-tile[data-astro-cid-t7n7ay2h]{padding:.5rem}.tile-icon[data-astro-cid-t7n7ay2h]{width:28px;height:28px;font-size:14px}.tile-title[data-astro-cid-t7n7ay2h]{font-size:.95rem}.certificate-card[data-astro-cid-t7n7ay2h]{background:#ffffff08;border-radius:12px;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(255,255,255,.1)}.certificate-card[data-astro-cid-t7n7ay2h]:hover{transform:translateY(-5px);box-shadow:0 4px 20px #00b4d826}.certificate-header[data-astro-cid-t7n7ay2h]{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.certificate-description[data-astro-cid-t7n7ay2h]{margin-bottom:1rem}.certificate-tags[data-astro-cid-t7n7ay2h]{display:flex;flex-wrap:wrap;gap:.5rem}.tag[data-astro-cid-t7n7ay2h]{background:#00b4d81a;color:#00b4d8;padding:.25rem .75rem;border-radius:999px;font-size:.875rem}h3[data-astro-cid-t7n7ay2h]{color:var(--text-bright);margin-bottom:4px;font-size:1.1rem;font-weight:500;letter-spacing:.3px}p[data-astro-cid-t7n7ay2h]{color:var(--text-muted);font-size:.9rem;letter-spacing:.2px}.personal-section[data-astro-cid-tk2ufedx]{padding:4rem 0}.personal-intro[data-astro-cid-tk2ufedx]{max-width:800px;margin:2rem auto;text-align:center;line-height:1.8}.achievements-grid[data-astro-cid-tk2ufedx]{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2rem;margin-top:3rem}.achievement-card[data-astro-cid-tk2ufedx]{position:relative;background:linear-gradient(135deg,#0a1929d9,#061320cc);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;transition:all .3s ease;height:80px;cursor:pointer;margin-bottom:0}.achievement-card[data-astro-cid-tk2ufedx]:hover{transform:translateY(-2px);border-color:var(--accent-primary);box-shadow:0 4px 20px #00b4d826}.achievement-card[data-astro-cid-tk2ufedx].expanded{height:auto;min-height:460px;cursor:default;margin-bottom:2rem}.achievement-header[data-astro-cid-tk2ufedx]{padding:20px;position:relative;z-index:2;border-bottom:1px solid transparent;transition:border-color .3s ease}.achievement-card[data-astro-cid-tk2ufedx].expanded .achievement-header[data-astro-cid-tk2ufedx]{border-bottom-color:var(--border-subtle)}.achievement-header[data-astro-cid-tk2ufedx] h3[data-astro-cid-tk2ufedx]{color:var(--text-bright);margin:0;font-size:1.2rem}.view-btn[data-astro-cid-tk2ufedx]{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:transparent;border:1px solid rgba(255,255,255,.06);color:var(--text-bright);padding:6px 10px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.view-btn[data-astro-cid-tk2ufedx]:hover{background:#ffffff08;border-color:var(--accent-primary);color:var(--text-bright)}.achievement-card[data-astro-cid-tk2ufedx].expanded .view-btn[data-astro-cid-tk2ufedx]{display:none}.achievement-content[data-astro-cid-tk2ufedx]{padding:20px;opacity:0;transform:translateY(-20px);transition:all .3s ease;pointer-events:none;max-height:0;overflow:hidden}.achievement-card[data-astro-cid-tk2ufedx].expanded .achievement-content[data-astro-cid-tk2ufedx]{opacity:1;transform:translateY(0);pointer-events:auto;max-height:1000px}.achievement-description[data-astro-cid-tk2ufedx]{color:var(--text-muted);margin-bottom:20px;line-height:1.6}.media-preview[data-astro-cid-tk2ufedx]{width:100%;height:250px;background:#0003;border-radius:8px;overflow:hidden;position:relative}.media-placeholder[data-astro-cid-tk2ufedx]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0006;color:var(--text-bright);cursor:pointer;transition:background-color .3s ease}.media-placeholder[data-astro-cid-tk2ufedx]:hover{background:#0009}.play-button[data-astro-cid-tk2ufedx]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:48px;background-color:#000c;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .3s}.play-button[data-astro-cid-tk2ufedx]:hover{background-color:var(--accent-primary)}.play-icon[data-astro-cid-tk2ufedx]{width:24px;height:24px;color:#fff}@media (max-width: 768px){.achievement-card[data-astro-cid-tk2ufedx].expanded{min-height:420px}.media-preview[data-astro-cid-tk2ufedx]{height:200px}}.youtube-facade[data-astro-cid-tk2ufedx]{position:relative;width:100%;padding-bottom:56.25%;background:#000;cursor:pointer;border-radius:8px;overflow:hidden}.facade-thumbnail[data-astro-cid-tk2ufedx]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.facade-thumbnail[data-astro-cid-tk2ufedx] img[data-astro-cid-tk2ufedx]{width:100%;height:100%;object-fit:cover}.image-scroller[data-astro-cid-d3mi4rxj]{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.scroller-wrap[data-astro-cid-d3mi4rxj]{overflow:hidden;flex:1}.scroller-track[data-astro-cid-d3mi4rxj]{display:flex;gap:1rem;align-items:center;padding:.5rem 0;will-change:transform}.scroller-track[data-astro-cid-d3mi4rxj] img[data-astro-cid-d3mi4rxj]{height:120px;width:auto;border-radius:8px;object-fit:cover;box-shadow:0 6px 18px #0006}.scroller-control[data-astro-cid-d3mi4rxj]{background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:var(--text-bright);padding:.4rem .6rem;border-radius:6px;cursor:pointer}.scroller-control[data-astro-cid-d3mi4rxj]:hover{background:#ffffff0d}@media (max-width: 768px){.scroller-track[data-astro-cid-d3mi4rxj] img[data-astro-cid-d3mi4rxj]{height:90px}}<script type="module"> const scrollerWrap = document.getElementById("scroller"); const track = scrollerWrap.querySelector(".scroller-track"); const leftBtn2 = document.querySelector(".scroller-control.left"); const rightBtn2 = document.querySelector(".scroller-control.right"); // Duplicate track content for seamless CSS-free loop const trackId = document.getElementById("scroller-track"); const trackContent = trackId.innerHTML; // append a clone of the content trackId.innerHTML = trackContent + trackContent; let offset = 0; let lastTime = performance.now(); const speed = 40; // pixels per second let paused = false; function updateTransform(){track.style.transform = `translateX(${-offset}px)`}function frame(now){const dt = (now - lastTime) / 1000;lastTime = now;if (!paused){offset += speed * dt;// when offset exceeds width of first set,wrap const singleWidth = track.scrollWidth / 2;if (offset >= singleWidth) offset -= singleWidth;updateTransform()}requestAnimationFrame(frame)}requestAnimationFrame(frame); // Arrow controls: jump by a portion of visible width leftBtn2.addEventListener("click",() => {const step = scrollerWrap.offsetWidth * .6; offset = Math.max(0,offset - step); updateTransform();}); rightBtn2.addEventListener("click",() => {const step = scrollerWrap.offsetWidth * .6; const singleWidth = track.scrollWidth / 2; offset = offset + step; if (offset >= singleWidth) offset -= singleWidth; updateTransform();}); scrollerWrap.addEventListener("mouseenter",() => {paused = true;}); scrollerWrap.addEventListener("mouseleave",() => {paused = false; lastTime = performance.now();}); </script>{}
