@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");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}@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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:"Manrope Variable", "Segoe UI", sans-serif;--font-mono:"JetBrains Mono Variable", "Cascadia Code", monospace;--spacing:.25rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--leading-tight:1.25;--radius-xl:.75rem;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-canvas:#090b0f;--color-surface:#10141c;--color-surface-strong:#151b25;--color-line:#283140;--color-primary:#eef4fb;--color-muted:#aab6c5;--color-subtle:#748195;--color-accent:#7dd3fc;--color-accent-strong:#38bdf8}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.z-40{z-index:40}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-\[4\.5rem\]{height:4.5rem}.min-h-\[calc\(100dvh-4\.5rem\)\]{min-height:calc(100dvh - 4.5rem)}.w-8{width:calc(var(--spacing) * 8)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.scroll-mt-20{scroll-margin-top:calc(var(--spacing) * 20)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-7>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 7) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 7) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.justify-self-start{justify-self:flex-start}.overflow-hidden{overflow:hidden}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-line{border-color:var(--color-line)}.border-line\/70{border-color:#283140b3}@supports (color:color-mix(in lab, red, red)){.border-line\/70{border-color:color-mix(in oklab, var(--color-line) 70%, transparent)}}.bg-canvas{background-color:var(--color-canvas)}.bg-canvas\/55{background-color:#090b0f8c}@supports (color:color-mix(in lab, red, red)){.bg-canvas\/55{background-color:color-mix(in oklab, var(--color-canvas) 55%, transparent)}}.bg-canvas\/88{background-color:#090b0fe0}@supports (color:color-mix(in lab, red, red)){.bg-canvas\/88{background-color:color-mix(in oklab, var(--color-canvas) 88%, transparent)}}.bg-surface\/35{background-color:#10141c59}@supports (color:color-mix(in lab, red, red)){.bg-surface\/35{background-color:color-mix(in oklab, var(--color-surface) 35%, transparent)}}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-14{padding-block:calc(var(--spacing) * 14)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-7{padding-bottom:calc(var(--spacing) * 7)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.7rem\]{font-size:.7rem}.text-\[clamp\(1\.75rem\,3\.5vw\,2\.8rem\)\]{font-size:clamp(1.75rem,3.5vw,2.8rem)}.text-\[clamp\(2\.75rem\,5vw\,4\.25rem\)\]{font-size:clamp(2.75rem,5vw,4.25rem)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-\[0\.98\]{--tw-leading:.98;line-height:.98}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[-0\.06em\]{--tw-tracking:-.06em;letter-spacing:-.06em}.tracking-\[-0\.025em\]{--tw-tracking:-.025em;letter-spacing:-.025em}.tracking-\[-0\.045em\]{--tw-tracking:-.045em;letter-spacing:-.045em}.tracking-\[-0\.055em\]{--tw-tracking:-.055em;letter-spacing:-.055em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.text-balance{text-wrap:balance}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-muted)}.text-primary{color:var(--color-primary)}.text-subtle{color:var(--color-subtle)}.uppercase{text-transform:uppercase}.not-italic{font-style:normal}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-1:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:text-accent:is(:where(.group):hover *){color:var(--color-accent)}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-primary:hover{color:var(--color-primary)}}@media (width>=40rem){.sm\:h-9{height:calc(var(--spacing) * 9)}.sm\:w-9{width:calc(var(--spacing) * 9)}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:px-7{padding-inline:calc(var(--spacing) * 7)}.sm\:py-8{padding-block:calc(var(--spacing) * 8)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}}@media (width>=48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:justify-between{justify-content:space-between}.md\:py-16{padding-block:calc(var(--spacing) * 16)}}@media (width>=64rem){.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-12{grid-column:span 12/span 12}.lg\:max-w-none{max-width:none}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.lg\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:grid-cols-\[minmax\(0\,1\.45fr\)_minmax\(17rem\,0\.55fr\)\]{grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr)}.lg\:flex-col{flex-direction:column}.lg\:gap-16{gap:calc(var(--spacing) * 16)}.lg\:gap-20{gap:calc(var(--spacing) * 20)}.lg\:justify-self-end{justify-self:flex-end}.lg\:py-20{padding-block:calc(var(--spacing) * 20)}.lg\:pt-2{padding-top:calc(var(--spacing) * 2)}}@media (width>=80rem){.xl\:flex{display:flex}.xl\:hidden{display:none}.xl\:flex-row{flex-direction:row}}}:root{--color-canvas:#f4f7fb;--color-surface:#fff;--color-surface-strong:#e9eff6;--color-line:#cbd5e1;--color-primary:#142033;--color-muted:#43546b;--color-subtle:#64748b;--color-accent:#0369a1;--color-accent-strong:#0284c7;--accent-rgb:3 105 161;--accent-strong-rgb:2 132 199;--interactive-hover:#0f172a0b;--button-primary-bg:#0369a1;--button-primary-hover:#075985;--button-primary-text:#f8fafc;--inset-surface:#e2e8f0ad;--profile-surface:#fffffff0;--panel-surface:#ffffffe6;--elevated-shadow:#0f172a24;--inset-highlight:#ffffffc7;--ambient-opacity:.62;--section-wash-opacity:.52;--motion-ease:cubic-bezier(.16, 1, .3, 1);font-family:var(--font-sans);color:var(--color-primary);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--color-canvas:#090b0f;--color-surface:#10141c;--color-surface-strong:#151b25;--color-line:#283140;--color-primary:#eef4fb;--color-muted:#aab6c5;--color-subtle:#748195;--color-accent:#7dd3fc;--color-accent-strong:#38bdf8;--accent-rgb:125 211 252;--accent-strong-rgb:56 189 248;--interactive-hover:#ffffff09;--button-primary-bg:#7dd3fc;--button-primary-hover:#bae6fd;--button-primary-text:#08202b;--inset-surface:#090b0f85;--profile-surface:#0c1017f0;--panel-surface:#10141ce0;--elevated-shadow:#0208177a;--inset-highlight:#ffffff09;--ambient-opacity:.78;--section-wash-opacity:.72;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;scrollbar-color:var(--color-line) var(--color-canvas)}html{scroll-behavior:smooth;background:var(--color-canvas);min-width:320px}body{background:radial-gradient(circle at 80% -10%, rgb(var(--accent-strong-rgb) / .08), transparent 34rem), var(--color-canvas);min-width:320px;min-height:100dvh;margin:0;overflow-x:clip}#root{isolation:isolate;min-height:100dvh;overflow-x:clip}#root>main,#root>footer{z-index:1;position:relative}.ambient-background{z-index:0;contain:strict;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-orb{opacity:var(--ambient-opacity);background:radial-gradient(circle, rgb(var(--accent-strong-rgb) / .18) 0%, rgb(var(--accent-rgb) / .065) 42%, transparent 72%);border-radius:50%;display:block;position:absolute}.ambient-orb-top{aspect-ratio:1;width:min(52rem,78vw);top:-18rem;right:-14rem;transform:translate(-3vw,4vh)scale(1.02)}.ambient-orb-middle{aspect-ratio:1;width:min(56rem,86vw);top:38%;left:-24rem;transform:translate(5vw,1vh)scale(.98)}.ambient-orb-bottom{aspect-ratio:1;width:min(60rem,92vw);bottom:-24rem;right:-20rem;transform:translate(-4vw,-3vh)scale(1.04)}#about,#projects,#resume,#contact{isolation:isolate;position:relative}#about:before,#projects:before,#resume:before,#contact:before{z-index:-1;aspect-ratio:1;width:min(36rem,70vw);opacity:var(--section-wash-opacity);background:radial-gradient(circle, rgb(var(--accent-rgb) / .07), transparent 69%);content:"";pointer-events:none;border-radius:50%;position:absolute}#about:before,#resume:before{top:10%;right:-16rem}#projects:before,#contact:before{bottom:5%;left:-17rem}.scroll-progress{z-index:50;transform-origin:0;background:linear-gradient(90deg, var(--color-accent), var(--color-accent-strong));pointer-events:none;width:100%;height:2px;position:fixed;top:0;left:0;transform:scaleX(0)}@supports (animation-timeline:scroll()){.scroll-progress{animation:linear both page-progress;animation-timeline:scroll(root)}}.site-header{box-shadow:0 1px 0 rgb(var(--accent-rgb) / .035)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}::selection{color:var(--color-canvas);background:var(--color-accent)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.site-shell{width:min(100% - 2rem,78rem);margin-inline:auto}.section-space{padding-block:clamp(4.5rem,7.5vw,7.25rem)}.technology-showcase-section{padding-block:clamp(1.25rem,3vw,2rem) clamp(3.75rem,7vw,6.5rem)}.technology-showcase{isolation:isolate;border:1px solid rgb(var(--accent-rgb) / .22);background:radial-gradient(circle at 92% 14%, rgb(var(--accent-rgb) / .12), transparent 23rem), var(--panel-surface);box-shadow:0 28px 90px var(--elevated-shadow), inset 0 1px 0 var(--inset-highlight);border-radius:1rem;display:grid;position:relative;overflow:hidden}.technology-showcase:before{background:linear-gradient(180deg, var(--color-accent), rgb(var(--accent-rgb) / .16));content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.technology-showcase-copy{padding:clamp(1.6rem,4vw,3.25rem)}.technology-metrics{border-top:1px solid var(--color-line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.technology-metrics>div{flex-direction:column-reverse;gap:.35rem;min-width:0;padding:1.15rem 1rem 0 0;display:flex}.technology-metrics>div+div{border-left:1px solid var(--color-line);padding-left:clamp(.8rem,2vw,1.25rem)}.technology-metrics dt{color:var(--color-subtle);font-size:clamp(.65rem,1.4vw,.76rem);line-height:1.45}.technology-metrics dd{color:var(--color-primary);font-family:var(--font-mono);margin:0;font-size:clamp(1.45rem,3vw,2rem);font-weight:700;line-height:1}.technology-logo-grid{background:rgb(var(--accent-rgb) / .025);grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:0;padding:clamp(1.25rem,3.5vw,2.5rem);list-style:none;display:grid}.technology-logo{border:1px solid var(--color-line);min-height:clamp(4.25rem,8vw,6.5rem);color:var(--color-muted);background:var(--inset-surface);box-shadow:inset 0 1px 0 var(--inset-highlight);transition:transform .3s var(--motion-ease), color .2s ease, border-color .2s ease, background-color .2s ease;border-radius:.85rem;place-items:center;display:grid}.section-heading:after{transform-origin:0;background:var(--color-accent);content:"";width:min(7rem,28vw);height:2px;transition:transform .76s var(--motion-ease) .12s;margin-top:1.75rem;display:block;transform:scaleX(0)}.section-heading.mx-auto:after{transform-origin:50%;margin-inline:auto}.reveal-section.is-visible .section-heading:after{transform:scaleX(1)}.nav-link{color:var(--color-subtle);border-radius:.75rem;padding:.65rem .75rem;font-size:.825rem;font-weight:600;transition:color .18s,background-color .18s;position:relative}.nav-link:after{transform-origin:0;background:var(--color-accent);content:"";height:1px;transition:transform .24s var(--motion-ease);position:absolute;bottom:.35rem;left:.75rem;right:.75rem;transform:scaleX(0)}.nav-link:hover,.nav-link-active{color:var(--color-primary);background:var(--interactive-hover)}.nav-link:hover:after,.nav-link-active:after{transform:scaleX(1)}.icon-button{border:1px solid var(--color-line);width:2.5rem;height:2.5rem;color:var(--color-muted);background:var(--color-surface);border-radius:.75rem;flex:none;justify-content:center;align-items:center;transition:color .18s,border-color .18s,transform .18s}.icon-button:hover{border-color:rgb(var(--accent-rgb) / .45);color:var(--color-accent);transform:translateY(-2px)}.language-button{border:1px solid var(--color-line);min-width:4.75rem;height:2.5rem;color:var(--color-subtle);background:var(--color-surface);font-family:var(--font-mono);letter-spacing:-.025em;border-radius:.75rem;flex:none;justify-content:center;align-items:center;gap:.3rem;padding-inline:.65rem;font-size:.68rem;font-weight:700;transition:color .18s,border-color .18s,transform .18s;display:inline-flex}.language-button:hover{border-color:rgb(var(--accent-rgb) / .45);color:var(--color-muted)}.language-button:active{transform:translateY(1px)scale(.99)}.language-code-active{color:var(--color-accent)}.icon-button:active,.button:active{transform:translateY(1px)scale(.99)}.button{white-space:nowrap;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.6rem;min-height:2.875rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:700;transition:color .18s,background-color .18s,border-color .18s,transform .18s;display:inline-flex;position:relative;overflow:hidden}.button>svg{transition:transform .22s var(--motion-ease)}.button:hover>svg{transform:translate(2px,-2px)}.button-primary{color:var(--button-primary-text);background:var(--button-primary-bg)}.button-primary:after{content:"";pointer-events:none;transition:transform .62s var(--motion-ease);background:linear-gradient(90deg,#0000 35%,#ffffff47,#0000 65%);position:absolute;inset:-45% -20%;transform:translate(-135%)rotate(12deg)}.button-primary:hover{background:var(--button-primary-hover)}.button-primary:hover:after{transform:translate(135%)rotate(12deg)}.button-secondary{border-color:var(--color-line);color:var(--color-primary);background:var(--color-surface)}.button-secondary:hover{border-color:rgb(var(--accent-rgb) / .45);color:var(--color-accent)}.hero-kicker{border:1px solid rgb(var(--accent-rgb) / .2);color:var(--color-accent);background:rgb(var(--accent-rgb) / .055);font-family:var(--font-mono);letter-spacing:-.025em;border-radius:.65rem;padding:.55rem .75rem;font-size:.75rem;display:inline-flex}.hero-piece,.hero-visual{opacity:0;animation:hero-enter .76s var(--motion-ease) both}.hero-kicker{animation-delay:40ms}.hero-title{animation-delay:.12s;position:relative}.hero-title:after{transform-origin:0;background:linear-gradient(90deg, var(--color-accent), transparent);content:"";width:clamp(4.5rem,12vw,8rem);height:.2rem;animation:hero-line-enter .82s var(--motion-ease) .54s forwards;border-radius:999px;position:absolute;bottom:-.85rem;left:0;transform:scaleX(0)}.hero-description{animation-delay:.2s}.hero-actions{animation-delay:.28s}.hero-visual{animation-delay:.17s}.developer-profile{border:1px solid rgb(var(--accent-rgb) / .22);background:var(--profile-surface);box-shadow:0 30px 90px var(--elevated-shadow), inset 0 1px 0 var(--inset-highlight);transition:transform .36s var(--motion-ease), border-color .26s ease, box-shadow .36s var(--motion-ease);border-radius:1rem;position:relative;overflow:hidden}.developer-profile:after{background:linear-gradient(105deg, transparent 42%, rgb(var(--accent-rgb) / .09), transparent 58%);content:"";pointer-events:none;transition:transform .85s var(--motion-ease);position:absolute;inset:0;transform:translate(-125%)}.profile-command:after{color:var(--color-accent);content:"_";margin-left:.18rem;animation:1.15s steps(2,end) infinite terminal-caret}.profile-accent{aspect-ratio:1;background:rgb(var(--accent-strong-rgb) / .12);filter:blur(5rem);pointer-events:none;border-radius:50%;width:62%;position:absolute;top:-1rem;right:-1rem}.profile-photo-row{border-bottom:1px solid var(--color-line);grid-template-columns:5.75rem minmax(0,1fr);align-items:center;gap:1.25rem;padding-bottom:1.5rem;display:grid}.profile-photo-frame{border:1px solid rgb(var(--accent-rgb) / .28);background:rgb(var(--accent-rgb) / .07);box-shadow:0 12px 30px rgb(var(--accent-rgb) / .1);transition:transform .36s var(--motion-ease), box-shadow .36s var(--motion-ease);border-radius:.9rem;padding:.25rem;position:relative;overflow:hidden}.profile-photo{aspect-ratio:1;object-fit:cover;object-position:center 35%;width:100%;transition:transform .52s var(--motion-ease);border-radius:.68rem;display:block}.skill-card{border:1px solid var(--color-line);background:var(--color-surface);border-radius:1rem;min-height:13rem;padding:clamp(1.35rem,3vw,2rem);transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s,background-color .22s,box-shadow .26s;position:relative;overflow:hidden}.skill-card:before{z-index:0;opacity:0;background:radial-gradient(circle, rgb(var(--accent-rgb) / .14), transparent 62%);content:"";pointer-events:none;transition:opacity .36s ease, transform .56s var(--motion-ease);border-radius:50%;position:absolute;inset:-30%;transform:translate(14%,-12%)scale(.78)}.skill-card>*{z-index:1;position:relative}.skill-card:after{transform-origin:0;background:var(--color-accent);content:"";height:2px;transition:transform .42s var(--motion-ease);position:absolute;bottom:0;left:1.5rem;right:1.5rem;transform:scaleX(0)}.skill-card:hover{border-color:rgb(var(--accent-rgb) / .32);background-color:var(--color-surface-strong);box-shadow:0 20px 50px rgb(var(--accent-rgb) / .08)}.skill-card:hover:after{transform:scaleX(1)}.skill-card:hover:before{opacity:1;transform:translate(6%,-4%)scale(1)}.skill-card-accent{background:radial-gradient(circle at 100% 0%, rgb(var(--accent-rgb) / .11), transparent 45%), var(--color-surface)}.skill-card-grid{background-image:linear-gradient(rgb(var(--accent-rgb) / .045) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--accent-rgb) / .045) 1px, transparent 1px);background-color:var(--color-surface);background-size:2.25rem 2.25rem}.skill-icon{border:1px solid rgb(var(--accent-rgb) / .18);width:2.5rem;height:2.5rem;color:var(--color-accent);background:rgb(var(--accent-rgb) / .055);transition:transform .32s var(--motion-ease), background-color .22s ease;border-radius:.75rem;justify-content:center;align-items:center;display:inline-flex}.skill-badge{border:1px solid var(--color-line);color:var(--color-muted);background:var(--inset-surface);font-family:var(--font-mono);transition:transform .22s var(--motion-ease), color .18s ease, border-color .18s ease;border-radius:.65rem;padding:.55rem .7rem;font-size:.75rem}.reveal-section{opacity:0;will-change:transform, opacity;transition:opacity .65s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay), transform .65s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay);transform:translateY(2rem)scale(.992)}.reveal-from-left{transform:translate(-2.75rem,1.5rem)scale(.992)}.reveal-from-right{transform:translate(2.75rem,1.5rem)scale(.992)}.reveal-from-scale{transform:translateY(1.25rem)scale(.965)}.reveal-section.is-visible{opacity:1;will-change:auto;transform:translate(0)scale(1)}.reveal-item{opacity:0;translate:0 1.25rem;scale:.985}.reveal-section.is-visible .reveal-item{animation:item-enter .56s var(--motion-ease) both;animation-delay:calc(.1s + var(--item-index,0) * 70ms)}.project-card{isolation:isolate;border:1px solid var(--color-line);background:radial-gradient(circle at 100% 0%, rgb(var(--accent-rgb) / .075), transparent 18rem), var(--color-surface);border-radius:1rem;flex-direction:column;min-height:20rem;padding:clamp(1.35rem,3vw,2rem);transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s,box-shadow .26s;display:flex;position:relative;overflow:hidden}.project-card:before{z-index:0;background:linear-gradient(90deg, transparent 42%, rgb(var(--accent-rgb) / .11), transparent 58%);content:"";pointer-events:none;transition:transform .82s var(--motion-ease);position:absolute;inset:-45%;transform:translate(-85%)rotate(12deg)}.project-card>*{z-index:1;position:relative}.project-card:after{transform-origin:0;background:var(--color-accent);content:"";height:2px;transition:transform .46s var(--motion-ease);position:absolute;bottom:0;left:1.75rem;right:1.75rem;transform:scaleX(0)}.project-card:nth-child(3){background:radial-gradient(circle at 8% 92%, rgb(var(--accent-rgb) / .105), transparent 18rem), var(--color-surface-strong)}.project-card:hover{border-color:rgb(var(--accent-rgb) / .32);box-shadow:0 24px 64px rgb(var(--accent-rgb) / .1)}.project-card:hover:before{transform:translate(85%)rotate(12deg)}.project-card:hover:after{transform:scaleX(1)}.project-code-icon,.contact-icon,.github-mark{border:1px solid rgb(var(--accent-rgb) / .2);color:var(--color-accent);background:rgb(var(--accent-rgb) / .055);border-radius:.75rem;justify-content:center;align-items:center;display:inline-flex}.project-code-icon{width:2.75rem;height:2.75rem;transition:transform .32s var(--motion-ease)}.status-label{border:1px solid var(--color-line);color:var(--color-subtle);background:var(--inset-surface);font-family:var(--font-mono);transition:color .18s ease, border-color .18s ease, transform .22s var(--motion-ease);border-radius:.65rem;padding:.45rem .65rem;font-size:.68rem}.project-action{border:1px solid var(--color-line);min-height:2.5rem;color:var(--color-muted);background:var(--inset-surface);transition:color .18s ease, border-color .18s ease, transform .22s var(--motion-ease), background-color .18s ease;border-radius:.7rem;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}a.project-action:hover{border-color:rgb(var(--accent-rgb) / .4);color:var(--color-accent);background:var(--color-surface);transform:translateY(-2px)}.project-action-disabled{cursor:not-allowed;opacity:.52}.education-layout{grid-template-columns:auto minmax(0,1fr);gap:1.25rem;display:grid}.education-marker{border:1px solid rgb(var(--accent-rgb) / .25);width:3rem;height:3rem;color:var(--color-accent);background:var(--color-surface-strong);transition:transform .36s var(--motion-ease), border-color .22s ease;border-radius:.75rem;justify-content:center;align-items:center;display:inline-flex}.education-card{border:1px solid var(--color-line);background:radial-gradient(circle at 92% 12%, rgb(var(--accent-rgb) / .09), transparent 20rem), var(--color-surface);transition:transform .32s var(--motion-ease), border-color .22s ease, box-shadow .32s ease;border-radius:1rem;padding:clamp(1.5rem,4vw,3rem)}.resume-layout{gap:clamp(2rem,5vw,4.5rem);display:grid}.resume-intro{align-self:start}.resume-meta{border-top:1px solid var(--color-line);display:grid}.resume-meta>div{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(7rem,.65fr) minmax(0,1fr);gap:1rem;padding-block:.9rem;display:grid}.resume-meta dt{color:var(--color-subtle);font-size:.78rem}.resume-meta dd{color:var(--color-primary);margin:0;font-size:.82rem;font-weight:700}.resume-preview{border:1px solid rgb(var(--accent-rgb) / .2);background:linear-gradient(rgb(var(--accent-rgb) / .035) 1px, transparent 1px), var(--color-surface);box-shadow:0 28px 90px var(--elevated-shadow);transition:transform .36s var(--motion-ease), border-color .24s ease, box-shadow .36s ease;background-size:100% 2.75rem;border-radius:1rem;padding:clamp(1.4rem,4vw,3rem);overflow:hidden}.resume-avatar{border:1px solid rgb(var(--accent-rgb) / .24);background:var(--inset-surface);object-fit:cover;object-position:center 35%;width:3.5rem;height:3.5rem;transition:transform .42s var(--motion-ease);border-radius:.85rem;flex:none;padding:.2rem}.resume-document-grid{gap:1.75rem;display:grid}.resume-document-section h4{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.02em;margin-bottom:.75rem;font-size:.72rem;font-weight:700}.resume-document-section p,.resume-document-section li{color:var(--color-muted);font-size:.84rem;line-height:1.65}.resume-focus-item{padding-left:1rem;position:relative}.resume-focus-item:before{background:var(--color-accent);content:"";width:.5rem;height:1px;position:absolute;top:.8em;left:0}.resume-skill-row>p{color:var(--color-primary);font-family:var(--font-mono);font-size:.72rem;font-weight:700}.resume-skill-row>span{color:var(--color-muted);margin-top:.25rem;font-size:.78rem;line-height:1.6;display:block}.resume-project-list{gap:1rem;display:grid}.resume-project-item{border-left:2px solid rgb(var(--accent-rgb) / .38);padding-left:.85rem}.resume-project-heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.resume-project-heading>p{color:var(--color-primary);font-weight:800}.resume-project-heading>a{color:var(--color-accent);font-family:var(--font-mono);flex:none;font-size:.67rem;font-weight:700}.resume-project-item>span{color:var(--color-muted);margin-top:.25rem;font-size:.78rem;line-height:1.55;display:block}.resume-project-item>small{color:var(--color-subtle);font-family:var(--font-mono);margin-top:.35rem;font-size:.66rem;line-height:1.5;display:block}.resume-portfolio-link{color:var(--button-primary-text);background:var(--button-primary-bg);text-align:center;transition:transform .18s var(--motion-ease), background-color .18s ease, border-color .18s ease;border:1px solid #0000;border-radius:.8rem;justify-content:center;align-items:center;gap:.85rem;margin-top:2rem;padding:.85rem 1rem;display:flex}.resume-portfolio-link>span{justify-items:center;gap:.2rem;display:grid}.resume-portfolio-link strong{font-size:.78rem;line-height:1.35}.resume-portfolio-link small{font-family:var(--font-mono);text-underline-offset:.18rem;font-size:.68rem;font-weight:700;line-height:1.35;text-decoration:underline}.resume-portfolio-link:hover{border-color:rgb(var(--accent-rgb) / .45);background:var(--button-primary-hover);transform:translateY(-2px)}.resume-portfolio-link:active{transform:translateY(1px)}.github-cta{border:1px solid rgb(var(--accent-rgb) / .22);background:radial-gradient(circle at 90% 0%, rgb(var(--accent-rgb) / .11), transparent 24rem), var(--color-surface);transition:transform .32s var(--motion-ease), border-color .22s ease, box-shadow .32s ease;border-radius:1rem;align-items:center;gap:2rem;padding:clamp(1.5rem,5vw,3.25rem);display:grid}.github-mark{width:4rem;height:4rem;transition:transform .42s var(--motion-ease)}.contact-list{border-top:1px solid var(--color-line)}.contact-row{border-bottom:1px solid var(--color-line);transition:color .18s ease, background-color .18s ease, transform .26s var(--motion-ease);align-items:center;gap:1rem;padding-block:1.25rem;display:flex}.contact-icon{width:2.75rem;height:2.75rem;transition:transform .32s var(--motion-ease), border-color .22s ease;flex:none}.mobile-navigation{transform-origin:top;animation:mobile-menu-enter .28s var(--motion-ease) both}@media (hover:hover) and (pointer:fine){.technology-logo:hover{border-color:rgb(var(--accent-rgb) / .4);color:var(--color-accent);background:var(--color-surface);transform:translateY(-4px)scale(1.025)}.developer-profile:hover{border-color:rgb(var(--accent-rgb) / .38);box-shadow:0 38px 110px var(--elevated-shadow), inset 0 1px 0 var(--inset-highlight);transform:perspective(70rem)rotateX(1.25deg)rotateY(-1.5deg)translateY(-5px)}.developer-profile:hover:after{transform:translate(125%)}.developer-profile:hover .profile-photo-frame{box-shadow:0 18px 38px rgb(var(--accent-rgb) / .17);transform:rotate(-2deg)scale(1.035)}.developer-profile:hover .profile-photo{transform:scale(1.055)}.skill-card:hover,.project-card:hover{transform:translateY(-6px)scale(1.006)}.skill-card:hover .skill-icon{background:rgb(var(--accent-rgb) / .11);transform:translateY(-2px)rotate(-4deg)scale(1.04)}.skill-card:hover .skill-badge{border-color:rgb(var(--accent-rgb) / .26);color:var(--color-primary);transform:translateY(-1px)}.project-card:hover .project-code-icon{transform:rotate(-5deg)scale(1.06)}.project-card:hover .status-label{border-color:rgb(var(--accent-rgb) / .28);color:var(--color-primary);transform:translateY(-2px)}.education-layout:hover .education-marker{border-color:rgb(var(--accent-rgb) / .42);transform:rotate(-5deg)translateY(-3px)}.education-layout:hover .education-card{border-color:rgb(var(--accent-rgb) / .3);box-shadow:0 22px 60px rgb(var(--accent-rgb) / .08);transform:translateY(-4px)}.resume-preview:hover{border-color:rgb(var(--accent-rgb) / .35);box-shadow:0 34px 110px var(--elevated-shadow);transform:translateY(-4px)}.resume-preview:hover .resume-avatar{transform:rotate(2deg)scale(1.055)}.github-cta:hover{border-color:rgb(var(--accent-rgb) / .38);box-shadow:0 28px 80px rgb(var(--accent-rgb) / .1);transform:translateY(-4px)}.github-cta:hover .github-mark{transform:rotate(-6deg)scale(1.06)}.contact-row:hover{background:rgb(var(--accent-rgb) / .035);transform:translate(6px)}.contact-row:hover .contact-icon{border-color:rgb(var(--accent-rgb) / .4);transform:rotate(-4deg)scale(1.04)}}@keyframes page-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes terminal-caret{0%,46%{opacity:1}47%,to{opacity:0}}@keyframes hero-line-enter{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes item-enter{0%{opacity:0;translate:0 1.25rem;scale:.985}to{opacity:1;translate:0;scale:1}}@keyframes mobile-menu-enter{0%{opacity:0;transform:translateY(-.5rem)scaleY(.97)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes hero-enter{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@media (width>=1024px){.technology-showcase{grid-template-columns:minmax(0,1.08fr) minmax(26rem,.92fr)}.technology-logo-grid{border-left:1px solid var(--color-line)}.resume-layout{grid-template-columns:minmax(15rem,.62fr) minmax(0,1.38fr)}.github-cta{grid-template-columns:auto minmax(0,1fr) auto}}@media (width>=768px){.resume-document-grid{grid-template-columns:minmax(0,1.12fr) minmax(13rem,.88fr);gap:2.25rem}}@media (width<=767px){.technology-metrics>div{padding-right:.65rem}.technology-logo-grid{border-top:1px solid var(--color-line)}.reveal-from-left,.reveal-from-right,.reveal-from-scale{transform:translateY(1.5rem)scale(.992)}.reveal-section.is-visible{transform:translate(0)scale(1)}.ambient-orb-top{width:34rem;top:-14rem;right:-16rem}.ambient-orb-middle{width:38rem;left:-20rem}.ambient-orb-bottom{width:42rem;right:-22rem}}.surface-panel{border:1px solid rgb(var(--accent-rgb) / .14);background:var(--panel-surface);box-shadow:0 24px 80px var(--elevated-shadow);border-radius:1rem}.text-balance{text-wrap:balance}@media (prefers-reduced-transparency:reduce){.site-header{background:var(--color-canvas);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-section{opacity:1;transform:none}.hero-piece,.hero-visual,.reveal-item{opacity:1;animation:none;transform:translate(0)scale(1)}.reveal-section.is-visible .reveal-item{animation:none}.section-heading:after{transform:scaleX(1)}.hero-title:after{opacity:1;transform:scaleX(1)}.scroll-progress{display:none}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@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}
