/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-1\/2{top:50%}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.min-h-full{min-height:100%}.w-full{width:100%}.min-w-full{min-width:100%}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-ne-resize{cursor:ne-resize}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-cover{-o-object-fit:cover;object-fit:cover}.text-center{text-align:center}.text-left{text-align:left}.italic{font-style:italic}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-2000{--tw-duration:2s;transition-duration:2s}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}}:root{--accent:#05a;--text:#0b0b0b;--muted:#6b7280;--bg:#fff}.font-lucida{font-family:Lucida Grande,Lucida Sans Unicode,Lucida Sans,Tahoma,sans-serif}html{scroll-behavior:smooth}body,html{overscroll-behavior:none;overflow-x:hidden}body{-webkit-overflow-scrolling:touch;min-height:100vh}.container{max-width:1060px;margin:0 auto;padding:40px 20px}.container,.page-grid{min-height:100vh;position:relative}.page-grid{grid-template-columns:300px 1fr;gap:48px;display:grid}.page-grid aside{z-index:100;height:-moz-fit-content;height:fit-content;max-height:calc(100vh - 80px);position:sticky;top:40px;overflow-y:auto}.page-grid main{min-height:100vh;overflow:visible}.profile-img{-o-object-fit:cover;object-fit:cover;border:4px solid #0000000a;border-radius:9999px;width:140px;height:140px;margin:0 auto 12px;display:block;box-shadow:0 4px 12px #0000001a}.sidebar-content,.sidebar-title{text-align:center}.sidebar-title{margin-bottom:10px}.contact-section{text-align:center;margin-top:22px}.contact-email{margin-top:6px}.h1{text-align:center;letter-spacing:-.02em;margin:8px 0;font-size:2.05rem;font-weight:800}.h1,.h2{color:var(--text)}.h2{border-bottom:2px solid var(--accent);letter-spacing:-.01em;margin-top:32px;padding-bottom:8px;font-size:1.3rem;font-weight:700}.bio{color:var(--text);text-align:justify;margin-top:18px;margin-bottom:10px;font-size:1rem;line-height:1.6}.intro-section{margin-top:8px}.intro-section .personal-interests{margin-top:12px}.meta{color:var(--muted);font-size:1rem;font-weight:500}.personal-interests{color:var(--text);text-align:justify;font-size:1rem;line-height:1.6}a.accent{color:var(--accent);font-weight:600;text-decoration:none;transition:color .2s}a.accent:hover{color:#003d7a;text-decoration:underline}.social-row{justify-content:center;gap:16px;margin-top:10px;display:flex}.social-btn{width:40px;height:40px;color:var(--accent);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:inline-flex}.social-btn:hover{background-color:#0055aa1a;border-color:#05a3;transform:translateY(-1px)}.section-divider{border-top:1px solid #e5e7eb;margin:18px 0}.experience-entry{border-bottom:1px solid #f3f4f6;padding:24px 0;transition:all .2s}.experience-entry:last-child{border-bottom:none}.experience-entry:hover{background-color:#0055aa05;border-radius:8px;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}.experience-section{margin-top:8px}.experience-list{margin-top:20px}.projects-section{margin-top:8px}.projects-list{margin-top:20px}.project-entry{border-bottom:1px solid #f3f4f6;padding:24px 0;transition:all .2s}.project-entry:last-child{border-bottom:none}.project-entry:hover{background-color:#0055aa05;border-radius:8px;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}.project-grid{grid-template-columns:80px 1fr;align-items:start;gap:20px;display:grid}.project-image{justify-content:center;align-items:center;display:flex}.project-img{-o-object-fit:cover;object-fit:cover;-o-object-position:12% center;object-position:12% center;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;width:60px;height:60px}.project-content{flex:1}.project-title{color:var(--text);margin-bottom:8px;font-size:1.05rem;font-weight:700;line-height:1.4}.project-subtitle{color:var(--muted);font-style:italic;font-weight:500}.project-desc{color:var(--muted);margin-bottom:12px;font-size:.95rem;line-height:1.6}.project-tags{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.project-achievement{margin-top:8px}.achievement-badge{color:#16a34a;background:#22c55e1a;border:1px solid #22c55e33;border-radius:6px;padding:4px 10px;font-size:.8rem;font-style:italic;font-weight:500;display:inline-block}.experience-grid{grid-template-columns:80px 1fr;align-items:start;gap:20px;display:grid}.experience-image{justify-content:center;align-items:center;display:flex}.exp-img{-o-object-fit:cover;object-fit:cover;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;width:60px;height:60px}.experience-content{flex:1}.exp-title{color:var(--text);margin-bottom:8px;font-size:1.05rem;font-weight:700;line-height:1.4}.exp-org{color:var(--muted);font-weight:500}.exp-desc{color:var(--muted);margin-bottom:12px;font-size:.95rem;line-height:1.6}.exp-tags{flex-wrap:wrap;gap:6px;display:flex}.tag{color:var(--accent);background:#0055aa1a;border:1px solid #05a3;border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-block}.tag:hover{background:#0055aa26;transform:translateY(-1px)}.full-list{color:var(--accent);margin-top:12px;padding:8px 0;font-size:.95rem;font-style:italic;font-weight:600}.site-footer{color:var(--muted);text-align:center;border-top:1px solid #f3f4f6;margin-top:40px;padding:28px 0 8px;font-size:.9rem}@media (min-width:1200px){.page-grid aside{width:300px;position:fixed;top:40px;left:calc(50% - 530px)}.page-grid main{margin-left:348px}.page-grid{display:block}}@media (max-width:1199px) and (min-width:881px){.container{padding:30px 20px}.page-grid{grid-template-columns:280px 1fr;gap:32px}.page-grid aside{position:sticky;top:30px}}@media (max-width:880px){.container{max-width:100%;padding:24px 16px}.page-grid{gap:0;display:block}.page-grid aside{width:100%;max-height:none;margin-bottom:32px;position:static;top:auto;overflow-y:visible}.page-grid main{width:100%;margin-left:0}.experience-grid,.project-grid{grid-template-columns:60px 1fr;gap:16px}.profile-img{width:120px;height:120px}.h1{text-align:center;font-size:1.8rem}.social-row{justify-content:center}.bio,.personal-interests{text-align:left}}@media (max-width:640px){.container{box-sizing:border-box;width:100%;max-width:100%;padding:20px 16px}.page-grid{gap:0;width:100%;overflow-x:hidden}.page-grid aside{width:100%;margin-bottom:24px}.page-grid main{width:100%;overflow-x:hidden}.experience-grid{grid-template-columns:1fr;gap:12px;width:100%}.experience-image{display:none}.project-grid{grid-template-columns:1fr;gap:12px;width:100%}.project-image{display:none}.profile-img{width:100px;height:100px}.h1{margin:6px 0;font-size:1.6rem}.h1,.h2{word-wrap:break-word;overflow-wrap:break-word}.h2{margin-top:24px;font-size:1.2rem}.bio,.personal-interests{word-wrap:break-word;overflow-wrap:break-word;text-align:left;font-size:.95rem;line-height:1.5}.exp-title,.project-title{font-size:1rem;line-height:1.3}.exp-desc,.exp-org,.exp-title,.project-desc,.project-title{word-wrap:break-word;overflow-wrap:break-word}.exp-desc,.project-desc{font-size:.9rem;line-height:1.5}.tag{word-wrap:break-word;overflow-wrap:break-word;padding:3px 8px;font-size:.75rem}.social-btn{width:44px;min-width:44px;height:44px;min-height:44px}.social-btn svg{width:20px;height:20px}.experience-entry,.project-entry{width:100%;padding:20px 0;overflow-x:hidden}.experience-content,.project-content{width:100%;min-width:0}.exp-tags,.project-tags{flex-wrap:wrap;gap:8px;margin-top:8px}a.accent{word-wrap:break-word;overflow-wrap:break-word;padding:4px 0;display:inline-block}}@media (max-width:480px){.container{min-width:320px;padding:16px 12px}.profile-img{width:90px;height:90px}.h1{font-size:1.4rem}.h2{margin-top:20px;font-size:1.1rem}.bio,.personal-interests{word-wrap:break-word;hyphens:auto;font-size:.9rem}.experience-entry,.project-entry{padding:16px 0}.exp-tags,.project-tags{gap:6px}.tag{padding:2px 6px;font-size:.7rem}.social-btn{width:40px;min-width:40px;height:40px;min-height:40px}.social-btn svg{width:18px;height:18px}}@supports (-webkit-touch-callout:none){body{height:100vh;height:-webkit-fill-available}}@media (max-width:480px){html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}