@font-face{font-family:Inria Serif;font-style:italic;font-weight:300;font-display:swap;src:url(../media/611812608c4e1f7f-s.eb803b9c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:italic;font-weight:300;font-display:swap;src:url(../media/765386563dcf961c-s.p.1dd98293.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/0dcadf64125addf3-s.4d5288ed.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/48410e7994bd8e67-s.p.9ae44fdb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif;font-style:italic;font-weight:700;font-display:swap;src:url(../media/6e18458d75e37780-s.912eaf46.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:italic;font-weight:700;font-display:swap;src:url(../media/784dc98dc020a3f5-s.p.0000bd95.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif;font-style:normal;font-weight:300;font-display:swap;src:url(../media/fc95dc3e0266eb24-s.b9bd4534.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7d8779d6fdf17937-s.p.c7c23470.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/db660973042ffe4d-s.1de28d28.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad47219e26fd715f-s.p.dbce029d.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b215be9b19832c11-s.a5e8727e.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inria Serif;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c4e0361d05364de3-s.p.c3ab4693.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inria Serif Fallback;src:local(Times New Roman);ascent-override:85.82%;descent-override:19.61%;line-gap-override:0.0%;size-adjust:113.72%}.inria_serif_20707241-module__mMdwOq__className{font-family:Inria Serif,Inria Serif Fallback}.inria_serif_20707241-module__mMdwOq__variable{--font-heading:"Inria Serif","Inria Serif Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_786c1081-module__J60SBq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_786c1081-module__J60SBq__variable{--font-sans:"Inter","Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_869bfe9c-module__h17B4W__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_869bfe9c-module__h17B4W__variable{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:.25rem;--container-4xl:56rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-heading:var(--font-heading)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-6{gap:calc(var(--spacing)*6)}.overflow-x-hidden{overflow-x:hidden}.px-6{padding-inline:calc(var(--spacing)*6)}.pt-20{padding-top:calc(var(--spacing)*20)}.pb-16{padding-bottom:calc(var(--spacing)*16)}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@media (min-width:48rem){.md\:mb-16{margin-bottom:calc(var(--spacing)*16)}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:items-center{align-items:center}.md\:justify-center{justify-content:center}.md\:py-12{padding-block:calc(var(--spacing)*12)}}}:root{--background:#fff;--foreground:#171717;--surface-primary:#fafbff;--surface-secondary:#fff;--surface-tertiary:#f0f4ff;--accent-primary:#464a9c;--accent-secondary:#273c80;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--border-subtle:#6366f114;--shadow-elevation-1:0 1px 3px 0 #0000000d,0 1px 2px 0 #0000001a;--shadow-elevation-2:0 4px 6px -1px #00000014,0 2px 4px -1px #0000001a;--shadow-elevation-3:0 10px 15px -3px #0000001a,0 4px 6px -2px #00000014;--shadow-glow:0 0 25px #6366f11f}:root.dark-mode{--background:#0f0f12;--foreground:#d8dce6;--surface-primary:#16161a;--surface-secondary:#1f1f27;--surface-tertiary:#28283a;--accent-primary:#4a48b1;--accent-secondary:#748ffc;--text-primary:#e8eef7;--text-secondary:#a8b2c1;--text-muted:#7a8297;--border-subtle:#5b7cfa1a;--shadow-elevation-1:0 1px 3px 0 #00000040,0 1px 2px 0 #0000004d;--shadow-elevation-2:0 4px 6px -1px #0000004d,0 2px 4px -1px #00000040;--shadow-elevation-3:0 10px 15px -3px #0006,0 4px 6px -2px #0000004d;--shadow-glow:0 0 25px #5b7cfa1f}@media (prefers-color-scheme:dark){:root{--background:var(--surface-primary)}}body{background:var(--surface-primary);font-family:var(--font-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--text-primary);line-height:1.6;transition:background-color .3s,color .3s;position:relative}body:before{content:"";z-index:-1;background:linear-gradient(135deg,var(--surface-primary)0%,var(--surface-tertiary)100%),repeating-linear-gradient(45deg,transparent,transparent 35px,#6366f10a 35px,#6366f10a 70px);pointer-events:none;position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;will-change:transform;background:radial-gradient(1000px 800px at 15% 15%,#6366f12e 0%,#0000 55%),radial-gradient(800px 1000px at 85% 85%,#8b5cf626 0%,#0000 55%),radial-gradient(600px 600px,#464a9c1f 0%,#0000 55%);animation:25s ease-in-out infinite alternate orbDrift;position:fixed;inset:-20%}@keyframes orbDrift{0%{transform:translate(0)scale(1)}20%{transform:translate(6%,-4%)scale(1.06)}40%{transform:translate(-3%,5%)scale(.95)}60%{transform:translate(-6%,-2%)scale(1.04)}80%{transform:translate(4%,3%)scale(.97)}to{transform:translate(2%,-1%)scale(1.02)}}:root.dark-mode body:before{background:linear-gradient(135deg,var(--surface-primary)0%,var(--surface-tertiary)100%),repeating-linear-gradient(45deg,transparent,transparent 35px,#5b7cfa08 35px,#5b7cfa08 70px)}:root.dark-mode body:after{background:radial-gradient(1000px 800px at 10% 20%,#5b7cfa24 0%,#0000 50%),radial-gradient(800px 1000px at 90% 80%,#748ffc1c 0%,#0000 50%),radial-gradient(600px 600px,#5b7cfa14 0%,#0000 50%);animation:25s ease-in-out infinite alternate orbDrift}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading),Georgia,serif}h1{letter-spacing:-.025em;text-align:left;background:linear-gradient(135deg,var(--text-primary)0%,var(--accent-primary)50%,var(--accent-secondary)100%);-webkit-text-fill-color:transparent;color:#0000;text-shadow:none;filter:drop-shadow(0 2px 4px #0000004d);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;line-height:1.1}li{color:var(--text-secondary);text-shadow:none;cursor:pointer;font-size:1.125rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}li:hover{color:var(--text-primary);font-size:1.225rem}.text-gradient{background:linear-gradient(135deg,var(--text-primary)0%,var(--accent-primary)50%,var(--accent-secondary)100%);-webkit-text-fill-color:transparent;color:#0000;filter:drop-shadow(0 2px 4px #0003);-webkit-background-clip:text;background-clip:text}.blink-fade{animation:2s ease-in-out infinite blink-fade}@keyframes blink-fade{0%,to{opacity:1}50%{opacity:.7}}@media (max-width:768px){h1{text-align:center;font-size:clamp(1.5rem,6vw,2rem)}li{white-space:nowrap;font-size:.85rem}li:hover{font-size:.85rem}}@media (max-width:480px){h1{font-size:clamp(1.2rem,8vw,1.6rem);font-weight:600}li{padding:8px 2px;font-size:.6rem}li:hover{font-size:.6rem}}@media (max-width:768px) and (orientation:landscape){h1{font-size:clamp(1.5rem,6vw,2rem)}}@media (prefers-reduced-motion:reduce){.blink-fade,body:after{animation:none}}.nav-drawer-open{touch-action:none!important;overflow:hidden!important}.nav-drawer-open .chat-box,.nav-drawer-open .chat-input,.nav-drawer-open .chat-output{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important;opacity:.3!important}.navbar{z-index:1000;-webkit-backdrop-filter:blur(20px)saturate(180%);background:0 0;border-bottom:1px solid #0000;align-items:center;width:100%;height:60px;padding:8px 0;transition:all .3s;display:flex;position:sticky;top:0}.navbar:before{content:"";z-index:-1;opacity:1;background:0 0;border-bottom:none;transition:opacity .3s;position:absolute;inset:0}:root.dark-mode .navbar:before{background:0 0;border-bottom:none}:root.dark-mode .mobile-drawer-panel{background:#16161af0}:root.dark-mode .mobile-drawer-panel:before{background:radial-gradient(circle,#5b7cfa38 0%,#0000 70%)}:root.dark-mode .mobile-drawer-panel:after{background:radial-gradient(circle,#748ffc29 0%,#0000 70%)}.navbar-container{justify-content:space-between;align-items:center;width:100%;max-width:100%;height:100%;padding:0 16px;display:flex}.navbar-brand{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);letter-spacing:-.5px;flex-shrink:0;font-size:1.1rem;font-weight:700;text-decoration:none;transition:color .2s}.navbar-brand:hover{color:var(--accent-primary)}.navbar-nav{align-items:center;gap:24px;margin:0 0 0 auto;padding:0;display:flex}.navbar-nav ul{gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:var(--text-secondary);font-family:var(--font-heading),Georgia,serif;border-radius:5px;align-items:center;padding:8px 14px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex;position:relative}.nav-link:after{content:"";background:var(--accent-primary);height:2px;transition:transform .2s;position:absolute;bottom:0;left:14px;right:14px;transform:scaleX(0)}.nav-link.active:after{transform:scaleX(1)}.nav-link:hover{color:var(--text-primary);background:var(--surface-primary)}.nav-link.active{color:var(--accent-primary)}.hamburger{width:44px;height:44px;color:var(--text-primary);cursor:pointer;z-index:100001;background:0 0;border:none;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;padding:0;transition:all .2s;display:none;position:relative}.hamburger:hover{transform:scale(1.05)}.hamburger:active{transform:scale(.95)}.hamburger span{background:var(--text-primary);border-radius:1px;width:20px;height:2px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s;display:block}.hamburger span:first-child{transform:translateY(-6px)}.hamburger span:nth-child(2){transform:translateY(0)}.hamburger span:nth-child(3){transform:translateY(6px)}.mobile-drawer{display:none}.mobile-drawer.open{z-index:99999;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.mobile-drawer-panel{-webkit-backdrop-filter:blur(40px)saturate(200%);z-index:100000;background:#fafbffeb;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;padding:0;animation:.5s cubic-bezier(.16,1,.3,1) forwards drawerFadeIn;display:flex;position:fixed;top:0;left:0;overflow:hidden}.mobile-drawer-panel:before{content:"";pointer-events:none;filter:blur(50px);background:radial-gradient(circle,#6366f147 0%,#0000 70%);border-radius:50%;width:300px;height:300px;animation:6s ease-in-out infinite alternate drawerOrb1;position:absolute;top:5%;right:-12%}.mobile-drawer-panel:after{content:"";pointer-events:none;filter:blur(50px);background:radial-gradient(circle,#8b5cf638 0%,#0000 70%);border-radius:50%;width:240px;height:240px;animation:8s ease-in-out infinite alternate drawerOrb2;position:absolute;bottom:10%;left:-8%}@keyframes drawerFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(40px)saturate(200%)}}@keyframes drawerOrb1{0%{transform:translate(0)scale(1)}33%{transform:translate(-25px,30px)scale(1.15)}66%{transform:translate(15px,-20px)scale(.9)}to{transform:translate(-10px,15px)scale(1.1)}}@keyframes drawerOrb2{0%{transform:translate(0)scale(1)}33%{transform:translate(20px,-25px)scale(1.1)}66%{transform:translate(-30px,10px)scale(.95)}to{transform:translate(15px,20px)scale(1.05)}}.mobile-drawer-panel ul{z-index:1;flex-direction:column;align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.mobile-drawer-panel ul li{opacity:0;justify-content:center;animation:.4s cubic-bezier(.16,1,.3,1) forwards drawerItemIn;display:flex;transform:translateY(16px)}.mobile-drawer-panel ul li:first-child{animation-delay:.15s}.mobile-drawer-panel ul li:nth-child(2){animation-delay:.22s}.mobile-drawer-panel ul li:nth-child(3){animation-delay:.29s}.mobile-drawer-panel ul li:nth-child(4){animation-delay:.36s}.mobile-drawer-panel ul li:nth-child(5){animation-delay:.43s}.mobile-drawer-panel .dark-mode-toggle{opacity:0;z-index:1;animation:.4s cubic-bezier(.16,1,.3,1) .52s forwards drawerItemIn;transform:translateY(8px)}@keyframes drawerItemIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.drawer-link{color:var(--text-muted);font-family:var(--font-mono),"JetBrains Mono",monospace;letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:18px 36px;font-size:1.05rem;font-weight:500;text-decoration:none;transition:color .2s cubic-bezier(.4,0,.2,1),letter-spacing .2s;display:block;position:relative}.drawer-link:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:1px;width:20px;height:2px;transition:transform .2s cubic-bezier(.4,0,.2,1);position:absolute;bottom:8px;left:50%;transform:translate(-50%)scaleX(0)}.drawer-link.active:before{transform:translate(-50%)scaleX(1)}.drawer-link:hover{color:var(--text-primary);letter-spacing:.14em}.drawer-link.active{color:var(--text-primary);font-weight:600}@media (max-width:900px){.navbar-nav{display:none}.hamburger{display:flex}}@media (max-width:480px){.navbar{height:56px}.navbar-container{padding:0 12px}.navbar-brand{font-size:.95rem}.hamburger{width:36px;height:36px}.hamburger span{width:16px;height:2px}.hamburger span:first-child{transform:translateY(-5px)}.hamburger span:nth-child(3){transform:translateY(5px)}.mobile-menu,.mobile-menu-backdrop{top:56px}.mobile-nav-link{padding:12px;font-size:.9rem}}.dark-mode-toggle{border:1.5px solid var(--border-subtle);cursor:pointer;width:40px;height:40px;color:var(--text-secondary);background:0 0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.dark-mode-toggle:hover{background:var(--surface-tertiary);color:var(--accent-primary);border-color:var(--accent-primary);transform:scale(1.05)}.dark-mode-toggle:active{transform:scale(.95)}.sun-icon{opacity:1;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;transform:rotate(0)scale(1)}:root.dark-mode .sun-icon{opacity:0;pointer-events:none;transform:rotate(-90deg)scale(.5)}.moon-icon{opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;transform:rotate(90deg)scale(.5)}:root.dark-mode .moon-icon{opacity:1;transform:rotate(0)scale(1)}@media (min-width:901px){.dark-mode-toggle{margin-left:12px}}@media (max-width:900px){.dark-mode-toggle{display:none}.mobile-drawer-panel .dark-mode-toggle{border:1.5px solid var(--border-subtle);background:0 0;align-self:center;width:40px;height:40px;margin-top:28px;padding:0;display:flex}}*{transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}button,a,input{transition:background-color .2s,color .2s,border-color .2s}@media (prefers-reduced-motion:reduce){.mobile-drawer-panel,.mobile-drawer-panel ul li,.mobile-drawer-panel .dark-mode-toggle,.mobile-drawer-panel:before,.mobile-drawer-panel:after{opacity:1;animation:none;transform:none}.hamburger span,.drawer-link{transition:none}}@keyframes revealUp{0%{opacity:0;filter:blur(4px);transform:translateY(24px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes revealScale{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes subtitleSlide{0%{opacity:0;letter-spacing:.12em;transform:translateY(12px)}to{opacity:1;letter-spacing:.06em;transform:translateY(0)}}.landing-title{font-family:var(--font-heading),Georgia,serif;letter-spacing:-.03em;background:linear-gradient(135deg,var(--text-primary)0%,var(--accent-primary)50%,var(--accent-secondary)100%);-webkit-text-fill-color:transparent;color:#0000;filter:drop-shadow(0 2px 4px #00000026);opacity:0;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:clamp(3.5rem,7vw,5rem);font-weight:700;line-height:1.05;animation:.8s cubic-bezier(.16,1,.3,1) .1s forwards revealUp}.landing-subtitle{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;min-height:1.6em;margin-bottom:2rem;font-size:1.05rem;font-weight:400;line-height:1.6}.typewriter-cursor{background:var(--accent-primary);vertical-align:text-bottom;opacity:1;width:2px;height:1.1em;margin-left:2px;display:inline-block}.typewriter-cursor.blink{animation:.6s step-end infinite cursorBlink}.typewriter-cursor.fade-out{animation:.4s forwards cursorFadeOut}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes cursorFadeOut{to{opacity:0}}.nav-card{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards revealScale}.grid>a:first-child .nav-card{animation-delay:.5s}.grid>a:nth-child(2) .nav-card{animation-delay:.6s}.grid>a:nth-child(3) .nav-card{animation-delay:.7s}.grid>a:nth-child(4) .nav-card{animation-delay:.8s}.site-footer{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) 1.1s forwards revealUp}@media (max-width:768px){.landing-title{margin-bottom:.75rem;font-size:clamp(2.2rem,10vw,3rem)}.landing-subtitle{letter-spacing:.03em;font-size:min(.85rem,2.4vw)}}@media (max-width:480px){.landing-title{font-size:clamp(1.8rem,10vw,2.4rem)}.landing-subtitle{letter-spacing:.02em;font-size:min(.7rem,2.4vw)}}.nav-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);cursor:pointer;border-radius:5px;padding:32px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.nav-card:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));transform-origin:0;height:3px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.nav-card:hover:before{transform:scaleX(1)}.nav-card:hover{box-shadow:var(--shadow-elevation-3),var(--shadow-glow);border-color:#6366f14d;transform:translateY(-4px)}.nav-card-icon{background:var(--surface-tertiary);border:1px solid var(--border-subtle);width:48px;height:48px;color:var(--accent-primary);border-radius:5px;justify-content:center;align-items:center;transition:all .3s;display:flex}.nav-card:hover .nav-card-icon{background:var(--accent-primary);color:#fff;transform:scale(1.05)}.nav-card-arrow{color:var(--text-muted);opacity:.5;transition:all .3s}.nav-card:hover .nav-card-arrow{color:var(--accent-primary);opacity:1;transform:translate(4px)}.nav-card-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:8px;font-size:1.5rem;font-weight:600;transition:color .3s}.nav-card:hover .nav-card-title{color:var(--accent-primary)}.nav-card-description{font-family:var(--font-sans),-apple-system,sans-serif;color:var(--text-secondary);font-size:.95rem;line-height:1.6;transition:color .3s}.nav-card:hover .nav-card-description{color:var(--text-primary)}.min-h-screen{flex-direction:column;flex:1 0 auto;display:flex;min-height:auto!important}@media (max-width:768px){.min-h-screen{flex:1 0 auto;align-items:unset!important;justify-content:unset!important;flex-direction:column!important;display:flex!important;overflow-y:auto!important}.nav-card{padding:24px}.nav-card-icon{width:40px;height:40px}.nav-card-title{font-size:1.25rem}.nav-card-description{font-size:.9rem}}@media (max-width:480px){.nav-card{padding:20px}.nav-card-icon{width:36px;height:36px}.nav-card-title{font-size:1.15rem}.nav-card-description{font-size:.875rem}}@media (prefers-reduced-motion:reduce){.landing-title,.nav-card,.nav-card-icon,.nav-card-arrow,.site-footer{opacity:1;filter:none;transition:none;animation:none;transform:none}.typewriter-cursor{display:none}.nav-card:hover,.nav-card:hover .nav-card-arrow{transform:none}}.chat-box{flex-direction:column;justify-content:space-between;height:100vh;display:flex;position:relative;overflow:hidden}.chat-output{z-index:1;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:1;width:100%;max-width:900px;min-height:0;margin:0 auto;padding:48px 24px 120px;display:flex;position:relative;overflow:hidden auto}.chat-output::-webkit-scrollbar{display:none}.chat-input{z-index:9999;background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);width:min(75%,800px);box-shadow:var(--shadow-elevation-3),var(--shadow-glow);border-radius:5px;align-items:center;gap:12px;padding:16px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.chat-input:focus-within{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-3),0 0 0 1px var(--accent-primary),0 0 30px #6366f140}.chat-input.contact-active{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-3),0 0 0 1px var(--accent-primary),0 0 24px #6366f14d;animation:2s ease-in-out infinite alternate contactGlow}@keyframes contactGlow{0%{box-shadow:var(--shadow-elevation-3),0 0 0 1px var(--accent-primary),0 0 20px #6366f140}to{box-shadow:var(--shadow-elevation-3),0 0 0 1px var(--accent-secondary),0 0 32px #748ffc66}}.chat-input.contact-active:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));z-index:-1;opacity:.6;background-size:200% 100%;border-radius:7px;animation:3s linear infinite contactBorderShimmer;position:absolute;inset:-2px}@keyframes contactBorderShimmer{0%{background-position:0%}to{background-position:200%}}.chat-input input{color:var(--text-primary);background:0 0;border:none;flex:1;min-width:0;padding:0;font-size:1rem;animation:none}.chat-input input::placeholder{color:var(--text-muted);transition:color .2s}.chat-input input:focus::placeholder{color:#0000}.chat-input input:focus{box-shadow:none;outline:none}.char-count{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);white-space:nowrap;opacity:.6;letter-spacing:.02em;margin:0;font-size:.75rem}.composer-submit-btn{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-elevation-2);border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.composer-submit-btn:hover:not(:disabled){box-shadow:var(--shadow-elevation-3);transform:translateY(-1px)scale(1.05)}.composer-submit-btn:active:not(:disabled){transform:translateY(0)scale(.98)}.composer-submit-btn:disabled{opacity:.4;cursor:not-allowed}.extra-btn-wrapper{flex-shrink:0;position:relative}.extra-btn{background:var(--surface-tertiary);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.extra-btn:hover{background:var(--surface-primary);border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:var(--shadow-elevation-1)}.extra-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-elevation-2),var(--shadow-glow)}.extra-btn-icon{transition:transform .3s cubic-bezier(.4,0,.2,1)}.extra-btn-icon.rotated{transform:rotate(45deg)}.extra-dropdown{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);min-width:200px;box-shadow:var(--shadow-elevation-3),var(--shadow-glow);z-index:50;opacity:0;border-radius:5px;animation:.25s cubic-bezier(.16,1,.3,1) forwards dropdownReveal;position:absolute;bottom:calc(100% + 10px);left:0;overflow:hidden;transform:translateY(8px)}@keyframes dropdownReveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.extra-dropdown-header{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border-subtle);padding:10px 16px 8px;font-size:.7rem;font-weight:600}.extra-dropdown-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.extra-dropdown-item:hover{background:var(--surface-tertiary);color:var(--text-primary)}.extra-dropdown-item:hover svg,.extra-dropdown-item.item-active{color:var(--accent-primary)}.extra-dropdown-item.item-disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.extra-dropdown-item.item-disabled svg{color:var(--text-muted)}.extra-dropdown-divider{background:var(--border-subtle);height:1px;margin:4px 0}.contact-bar{z-index:9999;opacity:0;background:var(--surface-secondary);-webkit-backdrop-filter:blur(24px);border:1px solid var(--accent-primary);width:min(75%,800px);box-shadow:var(--shadow-elevation-3),0 0 24px #6366f126;border-radius:5px;padding:14px 20px;animation:.35s cubic-bezier(.16,1,.3,1) forwards contactBarSlideIn;position:fixed;bottom:108px;left:50%;transform:translate(-50%)}.contact-bar:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));background-size:200% 100%;border-radius:5px 5px 0 0;height:2px;animation:3s linear infinite contactBorderShimmer;position:absolute;top:0;left:0;right:0}@keyframes contactBarSlideIn{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.contact-bar-fields{align-items:center;gap:10px;display:flex}.contact-bar-close{border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.contact-bar-close:hover{background:var(--surface-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.contact-bar-input{background:var(--surface-tertiary);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:.875rem;font-family:var(--font-sans),-apple-system,sans-serif;border-radius:5px;flex:1;min-width:0;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.contact-bar-input::placeholder{color:var(--text-muted)}.contact-bar-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary),0 0 12px #6366f11a;outline:none}.resume-open-btn{background:var(--surface-tertiary);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:.95rem;font-weight:500;font-family:var(--font-sans),-apple-system,sans-serif;cursor:pointer;box-shadow:var(--shadow-elevation-1);border-radius:5px;align-items:center;gap:10px;margin-left:12px;padding:14px 22px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.resume-open-btn svg{color:var(--accent-primary);transition:color .2s}.resume-open-btn:hover{background:var(--surface-secondary);border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-2),var(--shadow-glow);transform:translateY(-2px)}.resume-open-btn:hover svg{color:var(--accent-secondary)}.resume-open-btn:active{transform:translateY(0)}.resume-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2147483646;isolation:isolate;overscroll-behavior:contain;opacity:0;background:#000000d9;width:100vw;height:100vh;animation:.3s cubic-bezier(.16,1,.3,1) forwards resumeOverlayIn;position:fixed;inset:0;overflow:hidden}@keyframes resumeOverlayIn{0%{opacity:0}to{opacity:1}}.resume-viewer{background:var(--surface-primary);flex-direction:column;display:flex;position:absolute;inset:0}.resume-toolbar{background:var(--surface-secondary);border-bottom:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.resume-toolbar-left,.resume-toolbar-right{align-items:center;gap:8px;display:flex}.resume-toolbar-btn{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.resume-toolbar-btn:hover{background:var(--surface-tertiary);border-color:var(--border-subtle);color:var(--text-primary)}.resume-file-info{align-items:center;gap:8px;margin-left:8px;display:flex}.resume-file-icon{color:#dc2626}.resume-file-name{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-primary);letter-spacing:.01em;font-size:.85rem;font-weight:500}.resume-content{background:var(--surface-tertiary);-webkit-overflow-scrolling:touch;flex:1;position:relative;overflow:auto}.resume-pdf-wrapper{box-sizing:border-box;min-width:100%;min-height:100%;padding:24px}.resume-pdf-frame{background:#fff;border-radius:5px;width:100%;height:calc(100vh - 84px);overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.resume-iframe{border:none;width:100%;height:100%}.resume-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;inset:0}.resume-spinner{border:3px solid var(--accent-primary);border-top-color:#0000;border-radius:50%;width:32px;height:32px;animation:1s linear infinite resumeSpin}@keyframes resumeSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.resume-loading-text{color:var(--text-secondary);font-size:.875rem;font-family:var(--font-sans),-apple-system,sans-serif}.resume-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.resume-error-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin:0 0 8px;font-size:1.25rem;font-weight:600}.resume-error-desc{color:var(--text-secondary);max-width:400px;margin:0 0 24px;font-size:.875rem}.resume-error-actions{gap:12px;display:flex}.resume-error-btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;cursor:pointer;box-shadow:var(--shadow-elevation-2);border:none;border-radius:5px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.resume-error-btn-primary:hover{box-shadow:var(--shadow-elevation-3);transform:translateY(-1px)}.resume-error-btn-secondary{background:var(--surface-secondary);color:var(--text-primary);border:1px solid var(--border-subtle);cursor:pointer;border-radius:5px;padding:10px 20px;font-size:.875rem;font-weight:500;transition:all .2s}.resume-error-btn-secondary:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-1)}.headshot{border:2px solid var(--border-subtle);width:38px;height:38px;box-shadow:var(--shadow-elevation-1);border-radius:5px;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.headshot:hover{box-shadow:var(--shadow-elevation-2);transform:scale(1.05)}.chat-card{opacity:0;flex-direction:row;align-items:flex-start;gap:10px;width:auto;max-width:75%;height:fit-content;margin:16px 0;animation:.4s cubic-bezier(.34,1.56,.64,1) forwards slideInFromLeft;display:flex;transform:translate(-30px)translateY(10px)scale(.95)}.chat-card-reversed{opacity:0;flex-direction:row-reverse;align-self:flex-end;align-items:flex-start;gap:10px;width:auto;max-width:75%;height:fit-content;margin:16px 0;animation:.4s cubic-bezier(.34,1.56,.64,1) forwards slideInFromRight;display:flex;transform:translate(30px)translateY(10px)scale(.95)}.output-text{background:var(--surface-tertiary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-subtle);width:fit-content;height:fit-content;color:var(--text-primary);box-shadow:var(--shadow-elevation-1);border-radius:5px;margin-left:4px;padding:12px 16px;font-size:.95rem;line-height:1.55;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.output-text:hover{box-shadow:var(--shadow-elevation-2);transform:translateY(-1px)}.chat-card-reversed .output-text{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));box-shadow:var(--shadow-elevation-2);color:#f0f8ff;margin-left:0;margin-right:4px;position:relative}.typing{--size:6px;--gap:4px;--color:var(--accent-primary);--speed:1.2s;align-items:center;gap:var(--gap);height:calc(var(--size)*2);background:var(--surface-tertiary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-1);opacity:0;border-radius:5px;margin-left:4px;padding:12px 16px;animation:.3s cubic-bezier(.34,1.56,.64,1) forwards fadeInTyping;display:inline-flex;position:relative;transform:translateY(20px)scale(.8)}.typing>span{width:var(--size);height:var(--size);background:var(--color);animation:typing-bounce var(--speed)ease-in-out infinite;opacity:.6;border-radius:50%}.typing>span:nth-child(2){animation-delay:.2s}.typing>span:nth-child(3){animation-delay:.4s}.typing.fade-out{animation:.2s cubic-bezier(.4,0,1,1) forwards fadeOutTyping}.white-space{width:100%;min-height:16px;margin:4px;padding:15px}.chat-card:first-child,.chat-card-reversed:first-child{animation-delay:0s}.chat-card:nth-child(2),.chat-card-reversed:nth-child(2){animation-delay:.1s}.chat-card:nth-child(3),.chat-card-reversed:nth-child(3){animation-delay:.2s}.chat-card:nth-child(4),.chat-card-reversed:nth-child(4){animation-delay:.3s}.chat-card:nth-child(5),.chat-card-reversed:nth-child(5){animation-delay:.4s}.chat-card.new-message,.chat-card-reversed.new-message{animation-delay:0s}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)translateY(10px)scale(.95)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)translateY(10px)scale(.95)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes fadeInTyping{0%{opacity:0;transform:translateY(20px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeOutTyping{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.9)}}@keyframes typing-bounce{0%,80%,to{opacity:.6;transform:translateY(0)}40%{opacity:1;transform:translateY(-50%)}}@media (max-width:768px){.chat-box{padding-top:32px}.chat-output{width:100%;padding:24px 12px 140px}.chat-input{width:calc(100% - 24px);padding:12px 16px;bottom:20px;left:12px;right:12px;transform:none}.chat-input.contact-active:before{border-radius:7px;inset:-2px}.chat-input input{font-size:11pt}.chat-card,.chat-card-reversed{gap:8px;max-width:90%;margin:12px 0}.headshot{width:36px;height:36px}.output-text{margin-left:4px;padding:10px 14px;font-size:.9rem;line-height:1.5}.chat-card-reversed .output-text{margin-left:0;margin-right:4px}.typing{--size:5px;--gap:3px;margin-left:4px;padding:10px 14px}.composer-submit-btn{flex-shrink:0;width:40px;height:40px}.extra-btn{width:32px;height:32px}.chat-card,.chat-card-reversed{animation-duration:.3s}.resume-toolbar{padding:10px 16px}.resume-file-name{font-size:.78rem}.resume-pdf-wrapper{padding:12px}.resume-pdf-frame{border-radius:4px;height:calc(100vh - 72px)}.resume-open-btn{margin-left:8px;padding:12px 18px;font-size:.875rem}.contact-bar{width:calc(100% - 24px);padding:12px 16px;bottom:86px;left:12px;transform:none}.contact-bar-input{padding:8px 12px;font-size:.8rem}.contact-bar-fields{gap:8px}.contact-bar-close{width:28px;height:28px}@keyframes contactBarSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media (max-width:480px){.chat-output{padding:20px 8px 120px}.chat-input{width:calc(100% - 16px);padding:10px 14px;bottom:16px;left:8px}.chat-card,.chat-card-reversed{max-width:95%;margin:10px 0}.output-text{padding:8px 12px;font-size:.875rem}.contact-bar{width:calc(100% - 16px);padding:10px 14px;bottom:74px;left:8px}.contact-bar-fields{flex-wrap:nowrap;gap:6px}.contact-bar-input{flex:1 1 0;min-width:0;padding:7px 10px;font-size:.78rem}.contact-bar-close{width:26px;height:26px}.resume-pdf-wrapper{padding:8px}.resume-pdf-frame{height:calc(100vh - 64px)}.resume-toolbar-btn{width:32px;height:32px}.resume-file-info{margin-left:4px}}@media (max-width:768px) and (orientation:landscape){.chat-output{padding:20px 12px 100px}.chat-input{bottom:16px}.contact-bar{bottom:74px}}@media (prefers-reduced-motion:reduce){.chat-card,.chat-card-reversed,.typing,.composer-submit-btn,.extra-dropdown,.contact-bar{opacity:1;animation:none;transform:none}.chat-input.contact-active,.chat-input.contact-active:before{animation:none}.chat-card:hover,.chat-card-reversed:hover,.composer-submit-btn:hover:not(:disabled),.resume-open-btn:hover{transform:none}.resume-overlay{opacity:1;animation:none}.resume-spinner{animation:none}}.page-container{color:var(--text-primary);background:0 0;flex-direction:column;flex:1 0 auto;display:flex;position:relative}.page-content{z-index:1;flex:1 0 auto;width:100%;max-width:1200px;margin:0 auto;padding:48px 48px 80px;position:relative}.page-content>.fade-in-up{margin-bottom:64px}.page-title{font-family:var(--font-heading),Georgia,serif;letter-spacing:-.025em;text-align:center;background:linear-gradient(135deg,var(--text-primary)0%,var(--accent-primary)50%,var(--accent-secondary)100%);-webkit-text-fill-color:transparent;color:#0000;filter:drop-shadow(0 2px 4px #0000004d);-webkit-background-clip:text;background-clip:text;margin-bottom:0;font-size:clamp(3rem,6vw,4.5rem);font-weight:700;line-height:1.1}.page-subtitle{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.06em;margin-top:16px;margin-bottom:64px;font-size:1rem;font-weight:400;line-height:1.6}.section-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-top:0;margin-bottom:24px;font-size:2.25rem;font-weight:600;position:relative}.section-title:not(:first-child){margin-top:80px;margin-bottom:32px}.section-title:after{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:5px;width:60px;height:3px;position:absolute;bottom:-8px;left:0}.project-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:32px;margin-bottom:64px;display:grid}.featured-project{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-3),var(--shadow-glow);border-radius:5px;margin-bottom:64px;padding:48px;position:relative;overflow:hidden}.featured-project:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));background-size:200% 100%;border-radius:0;height:6px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.featured-badge{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;font-family:var(--font-mono),"JetBrains Mono",monospace;box-shadow:var(--shadow-elevation-2);text-transform:uppercase;letter-spacing:.04em;border-radius:5px;margin-bottom:24px;padding:8px 20px;font-size:.85rem;font-weight:600;display:inline-block}.featured-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:16px;font-size:2.5rem;font-weight:700;line-height:1.2}.featured-description{color:var(--text-secondary);margin-bottom:32px;font-size:1.1rem;line-height:1.6}.featured-tech-stack{flex-wrap:wrap;gap:12px;margin-bottom:32px;display:flex}.featured-tech-tag{background:var(--surface-tertiary);color:var(--text-primary);font-family:var(--font-mono),"JetBrains Mono",monospace;border:1px solid var(--border-subtle);letter-spacing:.02em;border-radius:5px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:all .3s}.featured-tech-tag:hover{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:var(--shadow-elevation-2);transform:translateY(-2px)}.project-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:32px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.project-card:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));background-size:200% 100%;border-radius:0;height:4px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.project-card:hover{box-shadow:var(--shadow-elevation-3),var(--shadow-glow);border-color:#6366f14d;transform:translateY(-8px)scale(1.02)}.project-header{margin-bottom:24px}.project-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:8px;font-size:1.5rem;font-weight:600;line-height:1.3}.project-date{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.02em;font-size:.85rem;font-weight:500}.project-award{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;font-family:var(--font-mono),"JetBrains Mono",monospace;box-shadow:var(--shadow-elevation-1);text-transform:uppercase;letter-spacing:.04em;border-radius:5px;margin-top:8px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block}.project-description{color:var(--text-secondary);margin-bottom:24px;line-height:1.6}.project-highlights{width:100%;margin:12px;padding:0;list-style:none}.project-highlights li{width:100%;color:var(--text-secondary);white-space:normal;margin-bottom:12px;padding-left:4px;font-size:.95rem;line-height:1.6;list-style-type:square;position:relative}.project-highlights li:before{color:var(--accent-primary);font-weight:600;position:absolute;top:0;left:0}.project-links{border-top:1px solid var(--border-subtle);gap:12px;margin-top:24px;padding-top:24px;display:flex}.tech-stack{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tech-tag{background:var(--surface-tertiary);color:var(--text-secondary);font-family:var(--font-mono),"JetBrains Mono",monospace;border:1px solid var(--border-subtle);letter-spacing:.02em;border-radius:5px;padding:6px 12px;font-size:.8rem;font-weight:500;transition:all .2s}.tech-tag:hover{background:var(--surface-primary);color:var(--text-primary);transform:translateY(-1px)}.btn-link{cursor:pointer;border:1px solid #0000;border-radius:5px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:var(--shadow-elevation-1)}.btn-primary:hover{box-shadow:var(--shadow-elevation-2);transform:translateY(-2px)scale(1.05)}.btn-secondary{background:var(--surface-tertiary);color:var(--text-primary);border-color:var(--border-subtle)}.btn-secondary:hover{background:var(--surface-primary);border-color:var(--accent-primary);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border-color:var(--border-subtle);background:0 0}.btn-outline:hover{background:var(--surface-secondary);border-color:var(--accent-primary);color:var(--accent-primary)}@keyframes shimmerBar{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes glowPulse{0%,to{box-shadow:var(--shadow-elevation-3),0 0 20px #6366f114}50%{box-shadow:var(--shadow-elevation-3),0 0 35px #6366f12e}}.featured-project.animate-in{animation:5s ease-in-out infinite glowPulse}.fade-in-up{opacity:0;animation:.6s cubic-bezier(.4,0,.2,1) forwards fadeInUp;transform:translateY(30px)}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.page-content{padding:100px 24px 60px}.page-title{margin-bottom:16px;font-size:clamp(2rem,8vw,2.5rem)}.page-subtitle{text-align:center;margin-bottom:32px;font-size:1.1rem}.project-grid{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.project-card{padding:24px}.featured-project{margin-bottom:48px;padding:32px 24px}.featured-title{margin-bottom:12px;font-size:2rem}.featured-description{margin-bottom:24px;font-size:1rem}.featured-tech-stack{gap:8px;margin-bottom:24px}.featured-tech-tag{padding:8px 16px;font-size:.9rem}.project-links{flex-direction:column;gap:8px}.btn-link{justify-content:center;padding:12px 20px}}@media (max-width:480px){.page-content{padding:90px 16px 50px}.tech-stack,.featured-tech-stack{gap:6px}.tech-tag,.featured-tech-tag{padding:6px 12px;font-size:.8rem}.project-card{padding:20px}.featured-project{padding:24px 16px}.featured-title{font-size:1.8rem}.section-title{font-size:1.5rem}}@media (max-width:768px) and (orientation:landscape){.page-content{padding:80px 24px 60px}.featured-project{padding:24px}.project-grid{gap:20px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2x){.project-card:before,.featured-project:before{height:3px}}@media (prefers-reduced-motion:reduce){.fade-in-up,.project-card,.featured-project,.btn-link,.tech-tag,.featured-tech-tag{transition:none;animation:none!important}.project-card:before,.featured-project:before{animation:none}.project-card:hover,.featured-project:hover,.btn-link:hover,.tech-tag:hover,.featured-tech-tag:hover{transform:none}}.btn-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.project-card:focus-within{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-2),0 0 0 2px #6366f133}.fade-in-up:not(.animate-in),.stagger-1:not(.animate-in),.stagger-2:not(.animate-in),.stagger-3:not(.animate-in),.stagger-4:not(.animate-in),.stagger-5:not(.animate-in),.experience-card:not(.animate-in),.project-card:not(.animate-in),.education-card:not(.animate-in),.bio-card:not(.animate-in),.featured-project:not(.animate-in),.contact-form-container:not(.animate-in),.contact-info-card:not(.animate-in),.availability-card:not(.animate-in),.technical-skills-card:not(.animate-in),.achievement-card:not(.animate-in){opacity:0;transform:translateY(30px)}.fade-in-up.animate-in,.experience-card.animate-in,.project-card.animate-in,.education-card.animate-in,.bio-card.animate-in,.featured-project.animate-in,.contact-form-container.animate-in,.contact-info-card.animate-in,.availability-card.animate-in,.technical-skills-card.animate-in,.achievement-card.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transform:translateY(0)}.stagger-1.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.4,0,.2,1) .1s,transform .6s cubic-bezier(.4,0,.2,1) .1s;transform:translateY(0)}.stagger-2.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.4,0,.2,1) .2s,transform .6s cubic-bezier(.4,0,.2,1) .2s;transform:translateY(0)}.stagger-3.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.4,0,.2,1) .3s,transform .6s cubic-bezier(.4,0,.2,1) .3s;transform:translateY(0)}.stagger-4.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.4,0,.2,1) .4s,transform .6s cubic-bezier(.4,0,.2,1) .4s;transform:translateY(0)}.stagger-5.animate-in{opacity:1;transition:opacity .6s cubic-bezier(.4,0,.2,1) .5s,transform .6s cubic-bezier(.4,0,.2,1) .5s;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.fade-in-up:not(.animate-in),.stagger-1:not(.animate-in),.stagger-2:not(.animate-in),.stagger-3:not(.animate-in),.stagger-4:not(.animate-in),.stagger-5:not(.animate-in),.experience-card:not(.animate-in),.project-card:not(.animate-in),.education-card:not(.animate-in),.bio-card:not(.animate-in),.featured-project:not(.animate-in),.contact-form-container:not(.animate-in),.contact-info-card:not(.animate-in),.availability-card:not(.animate-in),.technical-skills-card:not(.animate-in),.achievement-card:not(.animate-in){opacity:1;transform:none}.fade-in-up.animate-in,.stagger-1.animate-in,.stagger-2.animate-in,.stagger-3.animate-in,.stagger-4.animate-in,.stagger-5.animate-in,.experience-card.animate-in,.project-card.animate-in,.education-card.animate-in,.bio-card.animate-in,.featured-project.animate-in,.contact-form-container.animate-in,.contact-info-card.animate-in,.availability-card.animate-in,.technical-skills-card.animate-in,.achievement-card.animate-in{transition:none}}@media print{.page-container:before,.project-card:before,.featured-project:before{display:none}.project-card,.featured-project{box-shadow:none;border:1px solid #ccc}.btn-link{text-decoration:underline;color:#000!important}}.experience-timeline{margin-bottom:80px}.experience-item{margin-bottom:48px}.experience-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:36px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.experience-card:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));background-size:200% 100%;border-radius:0;height:4px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.experience-card:hover{box-shadow:var(--shadow-elevation-3),var(--shadow-glow);border-color:#6366f166;transform:translateY(-6px)scale(1.01)}.experience-header{margin-bottom:28px}.experience-title-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.experience-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);flex:1;font-size:1.6rem;font-weight:600;line-height:1.3}.experience-type{font-family:var(--font-mono),"JetBrains Mono",monospace;color:#fff;text-transform:uppercase;letter-spacing:.06em;box-shadow:var(--shadow-elevation-1);border-radius:5px;flex-shrink:0;padding:6px 14px;font-size:.75rem;font-weight:600}.experience-company-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.experience-company{color:var(--accent-primary);font-size:1.2rem;font-weight:600}.company-link{padding:8px 16px;font-size:1.2rem;font-weight:600}.experience-meta{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.02em;align-items:center;gap:16px;font-size:.85rem;font-weight:500;display:flex}.experience-location:after{content:"•";color:var(--border-subtle);margin:0 8px}.experience-description{color:var(--text-secondary);margin-bottom:24px;font-size:1.05rem;line-height:1.7}.experience-achievements{margin:0;padding-left:20px;list-style:square}.experience-achievements li{color:var(--text-secondary);white-space:normal;margin-bottom:12px;padding-left:8px;font-size:.95rem;line-height:1.6;position:relative}.education-section{flex-direction:column;gap:32px;margin-bottom:80px;display:flex}.education-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:36px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.education-card:before{content:"";background:linear-gradient(90deg,#10b981,#059669,#10b981) 0 0/200% 100%;border-radius:0;height:4px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.education-card:hover{box-shadow:var(--shadow-elevation-3);border-color:#10b9814d;transform:translateY(-4px)}.education-header{margin-bottom:28px}.education-degree{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:8px;font-size:1.6rem;font-weight:600;line-height:1.3}.education-institution{color:#10b981;margin-bottom:8px;font-size:1.2rem;font-weight:600}.education-meta{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:16px;font-size:.85rem;font-weight:500;display:flex}.education-location:after,.education-duration:after{content:"•";color:var(--border-subtle);margin:0 8px}.education-gpa{color:#10b981;font-weight:600}.coursework-section{margin-bottom:24px}.coursework-title{color:var(--text-primary);margin-bottom:16px;font-size:1.1rem;font-weight:600}.coursework-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.coursework-item{background:var(--surface-tertiary);color:var(--text-secondary);font-family:var(--font-mono),"JetBrains Mono",monospace;border:1px solid var(--border-subtle);text-align:center;letter-spacing:.02em;border-radius:5px;padding:8px 14px;font-size:.8rem;font-weight:500;transition:all .2s}.coursework-item:hover{color:#fff;box-shadow:var(--shadow-elevation-1);background:#10b981;transform:translateY(-2px)}.education-achievements{margin:0;padding:0;list-style:none}.education-achievements li{color:var(--text-secondary);white-space:normal;margin-bottom:12px;padding-left:24px;font-size:.95rem;line-height:1.6;position:relative}.education-achievements li:before{position:absolute;top:0;left:0}.technical-skills-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;margin-top:48px;padding:36px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.technical-skills-card:before{content:"";background:linear-gradient(90deg,#8b5cf6,#3b82f6,#8b5cf6) 0 0/200% 100%;border-radius:0;height:4px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.technical-skills-card:hover{box-shadow:var(--shadow-elevation-3);border-color:#8b5cf64d;transform:translateY(-4px)}.skills-card-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);text-align:center;margin-bottom:32px;font-size:1.8rem;font-weight:600}.skills-category{margin-bottom:28px}.skills-category:last-child{margin-bottom:0}.skills-category-title{color:var(--text-primary);align-items:center;gap:12px;margin-bottom:16px;font-size:1.2rem;font-weight:600;display:flex}.skills-category-title:before{content:"";background:var(--accent-primary);border-radius:5px;width:6px;height:6px}.skills-grid{flex-wrap:wrap;gap:10px;display:flex}.skill-tag{font-family:var(--font-mono),"JetBrains Mono",monospace;border:1px solid var(--border-subtle);cursor:default;letter-spacing:.02em;border-radius:5px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .3s}.language-tag{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:#3b82f6}.language-tag:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 8px 20px #3b82f64d}.framework-tag{color:#fff;background:linear-gradient(135deg,#10b981,#047857);border-color:#10b981}.framework-tag:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 8px 20px #10b9814d}.tool-tag{color:#fff;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#8b5cf6}.tool-tag:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 8px 20px #8b5cf64d}@media (max-width:768px){.experience-card,.education-card,.technical-skills-card{padding:24px}.experience-title-row{flex-direction:column;align-items:flex-start;gap:12px}.experience-company-row{flex-direction:column;align-items:flex-start;gap:8px}.experience-meta{flex-direction:column;align-items:flex-start;gap:4px}.experience-location:after{display:none}.coursework-grid{grid-template-columns:1fr}.education-meta{flex-direction:column;align-items:flex-start;gap:8px}.education-location:after,.education-duration:after{display:none}.technical-skills-card{margin-top:32px}.skills-card-title{margin-bottom:24px;font-size:1.5rem}.skills-category-title{margin-bottom:12px;font-size:1.1rem}.skills-grid{gap:8px}.skill-tag{padding:6px 12px;font-size:.85rem}}@media (max-width:480px){.experience-card,.education-card,.technical-skills-card{padding:20px}.experience-title,.education-degree,.skills-card-title{font-size:1.4rem}.skills-category-title{font-size:1rem}.skill-tag{padding:6px 10px;font-size:.8rem}}@media (prefers-reduced-motion:reduce){.experience-card,.education-card,.technical-skills-card,.skill-tag,.coursework-item{transition:none;animation:none}.experience-card:before,.education-card:before,.technical-skills-card:before{animation:none}.experience-card:hover,.education-card:hover,.technical-skills-card:hover,.skill-tag:hover,.coursework-item:hover{transform:none}}.experience-card:focus-within,.education-card:focus-within,.technical-skills-card:focus-within{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-2),0 0 0 2px #6366f133}@media print{.experience-card,.education-card,.technical-skills-card{box-shadow:none;border:1px solid #ccc}.experience-card:before,.education-card:before,.technical-skills-card:before{display:none}}.bio-content-wrapper{flex-direction:column;gap:64px;max-width:700px;margin-bottom:80px;margin-left:auto;margin-right:auto;display:flex}.bio-hero-card{width:100%;max-width:100%}.bio-story-section{width:100%}.bio-story{flex-direction:column;gap:16px;display:flex}.bio-interests-card{width:100%}@media (min-width:1024px){.bio-content-wrapper{grid-template-columns:unset;flex-direction:column;max-width:700px;display:flex}.bio-hero-card{top:unset;position:static}.bio-story-section{grid-column:unset;grid-row:unset}.bio-interests-card{top:unset;grid-column:unset;grid-row:unset;position:static}}@media (max-width:1023px){.bio-content-wrapper{max-width:700px;margin-left:auto;margin-right:auto}}.bio-intro-text{color:var(--text-primary);margin-bottom:32px;font-size:1.3rem;font-weight:500;line-height:1.6}.bio-paragraph{color:var(--text-secondary);margin-bottom:24px;font-size:1.1rem;line-height:1.7}.bio-paragraph:last-child{margin-bottom:0}.bio-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:0 0;border-radius:5px;justify-content:center;align-items:center;padding:32px;transition:all .3s cubic-bezier(.4,0,.2,1)}.bio-card:hover{transform:translateY(-2px)}.bio-avatar{justify-content:center;align-items:center;margin-bottom:32px;display:flex}.bio-avatar img{object-fit:cover;border:none;border-radius:5px;width:180px;height:180px;transition:all .3s;box-shadow:0 8px 24px #0000001a,0 2px 8px #0000000f}.bio-avatar img:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000024,0 4px 12px #00000014}.bio-name{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);text-align:center;margin-bottom:8px;font-size:1.5rem;font-weight:600}.bio-title{color:var(--accent-primary);text-align:center;margin-bottom:24px;font-size:1rem;font-weight:500}.bio-quick-stats{flex-direction:column;gap:12px;display:flex}.stat-item{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.stat-item:last-child{border-bottom:none}.stat-label{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:500}.stat-value{color:var(--text-primary);font-size:.9rem;font-weight:600}.card-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:20px;font-size:1.2rem;font-weight:600}.interests-grid{flex-wrap:wrap;gap:8px;display:flex}.interest-tag{background:var(--surface-tertiary);color:var(--text-secondary);font-family:var(--font-mono),"JetBrains Mono",monospace;border:1px solid var(--border-subtle);letter-spacing:.02em;border-radius:5px;padding:8px 16px;font-size:.8rem;font-weight:500;transition:all .3s}.interest-tag:hover{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-elevation-1);transform:translateY(-2px)}.fun-facts-list{margin:0;padding:0;list-style:none}.fun-fact-item{color:var(--text-secondary);margin-bottom:12px;font-size:.9rem;line-height:1.6}.fun-fact-item:last-child{margin-bottom:0}.achievements-section{margin-top:48px}.achievements-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:32px;display:grid}.achievement-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-1);border-radius:5px;align-items:flex-start;gap:16px;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.achievement-card:hover{box-shadow:var(--shadow-elevation-2);border-color:#6366f14d;transform:translateY(-4px)}.achievement-icon{color:var(--accent-primary);flex-shrink:0;margin-top:2px}.achievement-text{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.6}.contact-page-grid{grid-template-columns:1fr 400px;align-items:start;gap:64px;display:grid}.contact-form-container{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:48px;position:relative;overflow:hidden}.contact-form-container:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary));background-size:200% 100%;border-radius:0;height:4px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.form-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:12px;font-size:2rem;font-weight:600}.form-subtitle{color:var(--text-secondary);margin-bottom:36px;font-size:1.1rem;line-height:1.6}.contact-form{flex-direction:column;gap:24px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-group{flex-direction:column;display:flex}.form-label{color:var(--text-primary);margin-bottom:8px;font-size:.9rem;font-weight:500;display:block}.form-input,.form-textarea{background:var(--surface-tertiary);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);resize:vertical;border-radius:5px;padding:16px 20px;font-family:inherit;font-size:1rem;transition:all .3s}.form-input:focus,.form-textarea:focus{border-color:var(--accent-primary);background:var(--surface-secondary);outline:none;box-shadow:0 0 0 3px #6366f11a}.form-textarea{min-height:120px;line-height:1.5}.form-submit{align-self:flex-start;margin-top:12px;padding:16px 32px;font-size:1.1rem}.contact-info-section{flex-direction:column;gap:32px;display:flex}.contact-info-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:36px}.contact-card-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:12px;font-size:1.5rem;font-weight:600}.contact-card-subtitle{color:var(--text-secondary);margin-bottom:32px;line-height:1.6}.contact-methods{flex-direction:column;gap:24px;margin-bottom:32px;display:flex}.contact-method{background:var(--surface-tertiary);border:1px solid var(--border-subtle);border-radius:5px;align-items:center;gap:16px;padding:16px;transition:all .3s;display:flex}.contact-method:hover{background:var(--surface-primary);box-shadow:var(--shadow-elevation-1);transform:translateY(-2px)}.contact-icon{color:var(--accent-primary);flex-shrink:0}.contact-details{flex-direction:column;gap:4px;min-width:fit-content;display:flex}.contact-label{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:500}.contact-value{color:var(--text-primary);word-break:break-all;font-weight:500;text-decoration:none;transition:color .2s}.email-extra{font-size:75%}.contact-value:hover{color:var(--accent-primary)}.social-links{gap:12px;margin-bottom:32px;display:flex}.social-links .btn-link{flex:1;justify-content:center}.availability-card{background:var(--surface-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation-2);border-radius:5px;padding:28px;position:relative;overflow:hidden}.availability-card:before{content:"";background:linear-gradient(90deg,#10b981,#059669,#10b981) 0 0/200% 100%;border-radius:0;height:3px;animation:4s ease-in-out infinite shimmerBar;position:absolute;top:0;left:0;right:0}.availability-title{font-family:var(--font-heading),Georgia,serif;color:var(--text-primary);margin-bottom:20px;font-size:1.2rem;font-weight:600}.availability-list{margin:0;padding:0;list-style:none}.availability-list li{color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);padding:8px 0 8px 24px;font-size:.95rem;position:relative}.availability-list li:last-child{border-bottom:none}.availability-list li:before{color:#5287af;font-weight:600;position:absolute;top:8px;left:0}@media (max-width:1024px){.bio-content-grid{grid-template-columns:1fr;gap:48px}.bio-sidebar{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid;position:static}.contact-page-grid{grid-template-columns:1fr;gap:48px}}@media (max-width:768px){.bio-content-grid{gap:32px}.bio-card{padding:24px}.bio-intro-text{font-size:1.2rem}.bio-paragraph{font-size:1rem}.achievements-grid{grid-template-columns:1fr;gap:20px}.achievement-card{text-align:center;flex-direction:column;padding:20px}.achievement-icon{align-self:center;margin-top:0}.contact-form-container{padding:32px 24px}.form-row{grid-template-columns:1fr;gap:16px}.form-title{font-size:1.6rem}.contact-info-card{padding:24px}.social-links{flex-direction:column}.social-links .btn-link{flex:none}}@media (max-width:480px){.bio-sidebar{grid-template-columns:1fr}.bio-card{padding:20px}.bio-intro-text{font-size:1.1rem}.bio-paragraph{font-size:.95rem}.contact-form-container{padding:24px 20px}.form-input,.form-textarea{padding:14px 16px}.contact-method{padding:12px}.contact-details{gap:2px}.contact-value{font-size:.9rem}.availability-card{padding:20px}}.form-input:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.form-submit:active{transform:translateY(1px)scale(.98)}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (prefers-reduced-motion:reduce){.bio-card,.achievement-card,.contact-method,.interest-tag,.form-submit{transition:none;animation:none}.contact-form-container:before,.availability-card:before{animation:none}.bio-card:hover,.achievement-card:hover,.contact-method:hover,.interest-tag:hover,.form-submit:hover{transform:none}}.bio-card:focus-within,.contact-info-card:focus-within,.contact-form-container:focus-within{border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-2),0 0 0 2px #6366f133}@media print{.bio-card,.contact-info-card,.contact-form-container,.availability-card,.achievement-card{box-shadow:none;border:1px solid #ccc}.bio-card:before,.contact-form-container:before,.availability-card:before,.contact-form,.social-links{display:none}}.mobile-scroll-reveal{flex-direction:column;flex:1 0 auto;display:flex;position:relative}.mobile-scroll-reveal-title{z-index:10;pointer-events:none;justify-content:center;align-items:center;height:100vh;padding:0 24px;scroll-padding-top:80px;display:flex;position:fixed;top:0;left:0;right:0}.mobile-scroll-reveal-content{z-index:20;background:0 0;flex:1 0 auto;margin-top:100vh;padding-top:48px;padding-bottom:48px;position:relative}.scroll-indicator{z-index:50;opacity:.6;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1);position:fixed;bottom:48px;left:50%;transform:translate(-50%)}.scroll-indicator.hidden{opacity:0}.scroll-indicator-icon{color:var(--text-primary);filter:drop-shadow(0 2px 8px #00000026);animation:2.5s ease-in-out infinite bounce-smooth}@keyframes bounce-smooth{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(12px)}}@media (min-width:769px){.mobile-scroll-reveal{flex:1 0 auto;display:block}.mobile-scroll-reveal-title{height:auto;padding:0;position:relative}.mobile-scroll-reveal-content{margin-top:0;padding-top:0;padding-bottom:0}.scroll-indicator{display:none}}@media (max-width:768px){.mobile-scroll-reveal-title .page-title{text-align:center;margin-bottom:0;font-size:clamp(2.5rem,10vw,3.5rem)}.mobile-scroll-reveal-title .page-subtitle{text-align:center;margin-bottom:0}}@media (max-width:480px){.mobile-scroll-reveal-title{padding:0 16px}.mobile-scroll-reveal-title .page-title{font-size:clamp(2rem,12vw,3rem)}.scroll-indicator{bottom:40px}.mobile-scroll-reveal-content{padding-top:32px}}@media (max-width:768px) and (orientation:landscape){.mobile-scroll-reveal-title{height:100vh}.scroll-indicator{bottom:24px}}@media (prefers-reduced-motion:reduce){.scroll-indicator-icon{animation:none}}.site-footer{-webkit-backdrop-filter:none;z-index:100;background:0 0;border-top:none;flex-shrink:0;width:100%;margin-top:auto;padding:1.5rem 2rem;position:relative}.footer-content{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1200px;margin:0 auto;display:flex}.footer-social{align-items:center;gap:1.5rem;display:flex}.footer-link{color:var(--text-secondary);background:var(--surface-tertiary);border:1px solid var(--border-subtle);border-radius:5px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.footer-link:hover{color:var(--accent-secondary);background:var(--surface-primary);border-color:var(--accent-primary);box-shadow:var(--shadow-elevation-2),var(--shadow-glow);transform:translateY(-2px)}.footer-link svg{transition:transform .25s cubic-bezier(.4,0,.2,1)}.footer-link:hover svg{transform:scale(1.1)}.footer-copyright{font-family:var(--font-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.02em;font-size:.8rem;font-weight:400}@media (max-width:768px){.site-footer{padding:1.25rem 1rem}.footer-content{text-align:center;flex-direction:column;gap:1rem}.footer-social{gap:1rem}.footer-link{padding:.4rem .75rem;font-size:.85rem}.footer-copyright{font-size:.8rem}}@media (max-width:480px){.site-footer{padding:1rem .75rem}.footer-link{gap:.35rem;padding:.35rem .6rem;font-size:.8rem}.footer-link svg{width:16px;height:16px}.footer-copyright{font-size:.75rem}}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}
