.theme-btn[data-astro-cid-x3pjskd3]{display:flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;border:1px solid transparent;padding:0;width:40px;height:40px;border-radius:50%;transition:color .3s ease,background .3s ease,transform .2s ease;cursor:pointer}.theme-btn[data-astro-cid-x3pjskd3]:hover{color:var(--text-primary);background:var(--glass-bg-hover);transform:scale(1.05)}.theme-btn[data-astro-cid-x3pjskd3] svg[data-astro-cid-x3pjskd3]{width:24px;height:24px}html.light .icon-dark[data-astro-cid-x3pjskd3]{display:none}html:not(.light) .icon-light[data-astro-cid-x3pjskd3]{display:none}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--glass-border);padding:3rem 0;margin-top:6rem;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);position:relative;z-index:10;box-shadow:0 -4px 30px #0000000d;scroll-snap-align:end}.footer-content[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:2rem;align-items:center;text-align:center}@media(min-width:600px){.footer-content[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between;text-align:left}}.brand[data-astro-cid-sz7xmlte]{font-size:1.25rem;font-weight:700;margin:0 0 .5rem;color:var(--text-primary)}.copyright[data-astro-cid-sz7xmlte]{color:var(--text-secondary);font-size:.875rem;margin:0}.social-list[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0;display:flex;gap:1.5rem}.social-link[data-astro-cid-sz7xmlte]{display:inline-block;color:var(--text-secondary);transition:color .2s ease,transform .2s ease;width:24px;height:24px}.social-link[data-astro-cid-sz7xmlte]:hover{color:var(--accent);transform:translateY(-2px)}:root{--bg-base: #0f172a;--mesh-color-1: rgba(56, 189, 248, .4);--mesh-color-2: rgba(139, 92, 246, .4);--mesh-color-3: rgba(236, 72, 153, .4);--text-primary: #f8f9fa;--text-secondary: #a1a1aa;--accent: #38bdf8;--glass-bg: rgba(30, 41, 59, .35);--glass-bg-hover: rgba(30, 41, 59, .6);--glass-border: rgba(255, 255, 255, .1);--glass-border-hover: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .3)}html.light{--bg-base: #f8fafc;--mesh-color-1: rgba(186, 230, 253, .6);--mesh-color-2: rgba( 221, 214, 254, .6 );--mesh-color-3: rgba(251, 207, 232, .6);--text-primary: #0f172a;--text-secondary: #475569;--accent: #2563eb;--glass-bg: rgba(255, 255, 255, .4);--glass-bg-hover: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .6);--glass-border-hover: rgba(255, 255, 255, 1);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .1)}@keyframes meshGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-base);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 0% 0%,var(--mesh-color-1) 0px,transparent 50%),radial-gradient(at 100% 0%,var(--mesh-color-2) 0px,transparent 50%),radial-gradient(at 100% 100%,var(--mesh-color-3) 0px,transparent 50%),radial-gradient(at 0% 100%,var(--mesh-color-1) 0px,transparent 50%);background-size:200% 200%;background-attachment:fixed;animation:meshGradient 15s ease infinite;transition:background-color .3s ease,color .3s ease}.container{max-width:900px;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1}.navbar{position:sticky;top:1.5rem;z-index:1000;max-width:900px;margin:1.5rem auto 2rem;width:calc(100% - 3rem);background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:9999px;box-shadow:var(--glass-shadow);padding:1rem 0;transition:border-color .3s ease,background .3s ease}html{scroll-snap-type:y mandatory;scroll-padding-top:110px;scroll-behavior:smooth}main.container>section{min-height:calc(100vh - 110px);scroll-snap-align:start;display:flex;flex-direction:column;justify-content:center;padding-top:4rem;padding-bottom:4rem}@media(max-width:600px){main.container>section{min-height:auto;padding-top:3rem;padding-bottom:3rem;scroll-snap-align:none}html{scroll-snap-type:none}}.nav-content{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.25rem;font-weight:700;text-decoration:none;color:var(--text-primary)}.nav-links{display:flex;gap:2rem;align-items:center}.nav-links a{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:color .2s ease}.nav-links a:hover{color:var(--accent)}.btn-icon{display:flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;border:1px solid transparent;padding:0;width:40px;height:40px;border-radius:50%;transition:color .3s ease,background .3s ease;cursor:pointer}.btn-icon:hover{color:var(--text-primary);background:var(--glass-bg-hover)}.section-title[data-astro-cid-o4s6ggxu]{font-size:2rem;margin-bottom:2.5rem;color:var(--text-primary)}.timeline[data-astro-cid-o4s6ggxu]{position:relative;padding-left:2rem;border-left:2px solid var(--border)}.timeline-item[data-astro-cid-o4s6ggxu]{position:relative;margin-bottom:3rem}.timeline-content[data-astro-cid-o4s6ggxu]{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;box-shadow:var(--glass-shadow);transition:transform .3s ease,border-color .3s ease}.timeline-content[data-astro-cid-o4s6ggxu]:hover{transform:translateY(-4px);border-color:var(--glass-border-hover)}.timeline-item[data-astro-cid-o4s6ggxu]:last-child{margin-bottom:0}.timeline-dot[data-astro-cid-o4s6ggxu]{position:absolute;left:-2.35rem;top:1.5rem;width:12px;height:12px;border-radius:50%;background-color:var(--accent);border:3px solid var(--bg-base)}.role[data-astro-cid-o4s6ggxu]{margin:0 0 .25rem;font-size:1.25rem;color:var(--text-primary)}.company[data-astro-cid-o4s6ggxu]{color:var(--accent);font-weight:500}.period[data-astro-cid-o4s6ggxu]{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem;font-family:monospace}.description-list[data-astro-cid-o4s6ggxu]{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6;padding-left:1.2rem;list-style-type:disc}.description-list[data-astro-cid-o4s6ggxu] li[data-astro-cid-o4s6ggxu]{margin-bottom:.5rem}.tech-stack[data-astro-cid-o4s6ggxu]{display:flex;flex-wrap:wrap;gap:.5rem}.tech-pill[data-astro-cid-o4s6ggxu]{font-size:.75rem;padding:.3rem .8rem;background:var(--glass-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:var(--text-primary);border:1px solid var(--glass-border);border-radius:9999px;font-weight:500;transition:background .3s ease,border-color .3s ease}.timeline-content[data-astro-cid-o4s6ggxu]:hover .tech-pill[data-astro-cid-o4s6ggxu]{background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.about-content[data-astro-cid-v2cbyr3p]{padding:3rem;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);margin:0 auto;max-width:100%}@media(max-width:600px){.about-content[data-astro-cid-v2cbyr3p]{padding:1.5rem}}.section-title[data-astro-cid-v2cbyr3p]{font-size:2rem;margin-bottom:1.5rem;color:var(--text-primary)}.text-content[data-astro-cid-v2cbyr3p]{display:flex;flex-direction:column;gap:1.25rem}.text-content[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]{color:var(--text-secondary);font-size:1.05rem;line-height:1.8;margin:0}.text-content[data-astro-cid-v2cbyr3p] .intro-text[data-astro-cid-v2cbyr3p]{font-size:1.15rem;font-weight:500;color:var(--text-primary)}.text-content[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]:first-of-type:first-letter{float:left;font-size:3.5rem;line-height:.8;padding-right:.4rem;color:var(--accent);font-weight:700}.section-title[data-astro-cid-2wkm2a2e]{font-size:2rem;margin-bottom:2rem;color:var(--text-primary)}.grid[data-astro-cid-2wkm2a2e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.card[data-astro-cid-2wkm2a2e]{border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease;display:flex;flex-direction:column}.card[data-astro-cid-2wkm2a2e]:hover{transform:translateY(-8px);background:var(--glass-bg-hover);box-shadow:var(--glass-shadow);border-color:var(--glass-border-hover)}.card-title[data-astro-cid-2wkm2a2e]{margin:0 0 .5rem;font-size:1.25rem}.card-desc[data-astro-cid-2wkm2a2e]{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem;flex-grow:1}.tags[data-astro-cid-2wkm2a2e]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tag[data-astro-cid-2wkm2a2e]{font-size:.75rem;padding:.3rem .8rem;background:var(--glass-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:var(--text-primary);border:1px solid var(--glass-border);border-radius:9999px;font-weight:500;transition:background .3s ease,border-color .3s ease}.card[data-astro-cid-2wkm2a2e]:hover .tag[data-astro-cid-2wkm2a2e]{background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.card-link[data-astro-cid-2wkm2a2e]{text-decoration:none;color:var(--accent);font-weight:600;font-size:.9rem;margin-top:auto}.card-link[data-astro-cid-2wkm2a2e]:hover{text-decoration:underline}.grid-container[data-astro-cid-n7uid25v]{display:grid;grid-template-columns:1fr;gap:4rem}@media(min-width:768px){.grid-container[data-astro-cid-n7uid25v]{grid-template-columns:1fr 1fr}}.section-title[data-astro-cid-n7uid25v]{font-size:2rem;margin-bottom:2rem;color:var(--text-primary)}.edu-list[data-astro-cid-n7uid25v]{display:flex;flex-direction:column;gap:2rem}.edu-item[data-astro-cid-n7uid25v]{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-left:4px solid var(--accent);border-radius:12px;padding:1.5rem;box-shadow:var(--glass-shadow);transition:transform .3s ease,border-color .3s ease,background .3s ease}.edu-item[data-astro-cid-n7uid25v]:hover{transform:translateY(-4px);background:var(--glass-bg-hover);border-color:var(--glass-border-hover);border-left-color:var(--accent)}.degree[data-astro-cid-n7uid25v]{font-size:1.15rem;margin:0 0 .25rem;color:var(--text-primary)}.institution[data-astro-cid-n7uid25v]{font-weight:500;color:var(--accent);margin:0 0 .25rem}.period[data-astro-cid-n7uid25v]{font-size:.9rem;color:var(--text-secondary);margin:0;font-family:monospace}.cert-list[data-astro-cid-n7uid25v]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.cert-item[data-astro-cid-n7uid25v]{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-size:1rem;line-height:1.5;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:12px;padding:1rem 1.5rem;box-shadow:var(--glass-shadow);transition:transform .3s ease,border-color .3s ease,background .3s ease}.cert-item[data-astro-cid-n7uid25v]:hover{transform:translateY(-4px);background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.check-icon[data-astro-cid-n7uid25v]{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:.15rem}.contact-content[data-astro-cid-xmivup5a]{padding:3rem;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);margin:0 auto;max-width:100%;width:100%;box-sizing:border-box}@media(max-width:600px){.contact-content[data-astro-cid-xmivup5a]{padding:1.5rem}}.section-title[data-astro-cid-xmivup5a]{font-size:2rem;margin-bottom:2rem;color:var(--text-primary);text-align:center}.contact-form[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:1.5rem}.form-group-row[data-astro-cid-xmivup5a]{display:flex;gap:1.5rem}@media(max-width:768px){.form-group-row[data-astro-cid-xmivup5a]{flex-direction:column}}.form-control[data-astro-cid-xmivup5a]{width:100%;padding:.8rem 1rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:1rem;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease;box-sizing:border-box}.form-control[data-astro-cid-xmivup5a]::placeholder{color:var(--text-secondary)}.form-control[data-astro-cid-xmivup5a]:focus{outline:none;border-color:var(--accent);background:var(--glass-bg-hover);box-shadow:0 0 0 3px #38bdf833}html.light .form-control[data-astro-cid-xmivup5a]{background:#fff9;border:1px solid rgba(0,0,0,.1)}html.light .form-control[data-astro-cid-xmivup5a]:focus{background:#ffffffe6;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb33}textarea[data-astro-cid-xmivup5a].form-control{resize:vertical}.submit-container[data-astro-cid-xmivup5a]{display:flex;justify-content:center;margin-top:1rem}.btn-submit[data-astro-cid-xmivup5a]{background:#007eb6;color:#fff;border:none;padding:.8rem 2rem;border-radius:9999px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}html.light .btn-submit[data-astro-cid-xmivup5a]{background:#007eb6;color:#fff}.sr-only[data-astro-cid-xmivup5a]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn-submit[data-astro-cid-xmivup5a]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #38bdf866;filter:brightness(1.1)}.title[data-astro-cid-j7pv25f6]{font-size:3.5rem;font-weight:800;letter-spacing:-.02em;margin:0 0 .5rem}.subtitle[data-astro-cid-j7pv25f6]{font-size:1.5rem;font-weight:400;color:var(--text-secondary);margin:0 0 2rem}.description[data-astro-cid-j7pv25f6]{font-size:1.125rem;max-width:650px;margin-bottom:3rem}.tech-stack[data-astro-cid-j7pv25f6]{display:flex;gap:1rem;flex-wrap:wrap}.tech-stack[data-astro-cid-j7pv25f6] span[data-astro-cid-j7pv25f6]{background:var(--glass-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:var(--text-primary);border:1px solid var(--glass-border);padding:.4rem .8rem;border-radius:9999px;font-size:.875rem;font-weight:600;box-shadow:0 4px 6px -1px #0000001a}
