/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--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)}}@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{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.z-\[9999\]{z-index:9999}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-2{margin-right:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-500{border-color:var(--color-blue-500)}.border-green-500{border-color:var(--color-green-500)}.border-red-500{border-color:var(--color-red-500)}.border-yellow-500{border-color:var(--color-yellow-500)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-green-100{background-color:var(--color-green-100)}.bg-red-100{background-color:var(--color-red-100)}.bg-yellow-100{background-color:var(--color-yellow-100)}.p-2{padding:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-blue-600{color:var(--color-blue-600)}.text-blue-900{color:var(--color-blue-900)}.text-green-600{color:var(--color-green-600)}.text-green-900{color:var(--color-green-900)}.text-red-600{color:var(--color-red-600)}.text-red-900{color:var(--color-red-900)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-900{color:var(--color-yellow-900)}.capitalize{text-transform:capitalize}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;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}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-blue-200:hover{background-color:var(--color-blue-200)}.hover\:bg-green-200:hover{background-color:var(--color-green-200)}.hover\:bg-red-200:hover{background-color:var(--color-red-200)}.hover\:bg-yellow-200:hover{background-color:var(--color-yellow-200)}}@media (prefers-color-scheme:dark){.dark\:border-blue-700{border-color:var(--color-blue-700)}.dark\:border-green-700{border-color:var(--color-green-700)}.dark\:border-red-700{border-color:var(--color-red-700)}.dark\:border-yellow-700{border-color:var(--color-yellow-700)}.dark\:bg-blue-900{background-color:var(--color-blue-900)}.dark\:bg-green-900{background-color:var(--color-green-900)}.dark\:bg-red-900{background-color:var(--color-red-900)}.dark\:bg-yellow-900{background-color:var(--color-yellow-900)}.dark\:text-blue-100{color:var(--color-blue-100)}.dark\:text-green-100{color:var(--color-green-100)}.dark\:text-red-100{color:var(--color-red-100)}.dark\:text-yellow-100{color:var(--color-yellow-100)}@media (hover:hover){.dark\:hover\:bg-blue-800:hover{background-color:var(--color-blue-800)}.dark\:hover\:bg-green-800:hover{background-color:var(--color-green-800)}.dark\:hover\:bg-red-800:hover{background-color:var(--color-red-800)}.dark\:hover\:bg-yellow-800:hover{background-color:var(--color-yellow-800)}}}}:root{--bg-primary:#06060a;--bg-secondary:#0e0e14;--bg-card:#14141c;--text-primary:#f0f0f5;--text-secondary:#a0a0b8;--text-muted:#94a3b8;--accent:#7c4dff;--accent-light:#a78bfa;--accent-glow:#7c4dff59;--border:#ffffff0f;--glass:#ffffff08;--shadow:0 10px 40px #0009;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--transition:all .35s cubic-bezier(.4, 0, .2, 1);--glass-bg:#0e0e1499;--glass-border:#ffffff14;--glass-blur:25px}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-card:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent:#6c3ce9;--accent-light:#8b5cf6;--border:#00000014;--glass:#00000005;--shadow:0 10px 30px #0000000d;--glass-bg:#ffffffb3;--glass-border:#0000000d;--glass-blur:20px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,sans-serif;line-height:1.6;transition:background-color .5s,color .5s;overflow-x:hidden}body.no-scroll{overflow:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUpBack{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}main{animation:1.2s cubic-bezier(0,0,.2,1) forwards fadeIn}.hero-container{opacity:0;animation:1s cubic-bezier(.175,.885,.32,1.275) .3s forwards fadeInUpBack}.reveal{opacity:0;transition:all .8s cubic-bezier(.4,0,.2,1);transform:translateY(30px)}.reveal.active{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transition:all .8s cubic-bezier(.4,0,.2,1);transform:translate(-50px)}.reveal-left.active{opacity:1;transform:translate(0)}.navbar{z-index:1000;width:100%;transition:var(--transition);padding:20px 0;position:fixed;top:0;left:0}.navbar.scrolled{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);backdrop-filter:blur(var(--glass-blur)) saturate(180%);border-bottom:1px solid var(--glass-border);padding:12px 0;box-shadow:0 10px 30px #0003}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 24px;display:flex}.nav-logo{color:var(--text-primary);font-family:Space Grotesk,sans-serif;font-size:1.5rem;font-weight:700;text-decoration:none}.logo-bracket{color:var(--accent)}.nav-links{align-items:center;gap:32px;list-style:none;display:flex}.nav-link{color:var(--text-secondary);transition:var(--transition);font-size:.95rem;font-weight:500;text-decoration:none;position:relative}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-link.active:after{content:"";background:var(--accent);width:100%;height:2px;position:absolute;bottom:-5px;left:0}.theme-toggle{background:var(--glass);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.theme-toggle:hover{background:var(--border);transform:scale(1.1)}.nav-toggle{cursor:pointer;z-index:1002;background:0 0;border:none;width:36px;height:36px;padding:8px;display:none;position:relative}.nav-toggle span{background:var(--text-primary);border-radius:2px;width:22px;height:2px;margin:5px auto;transition:all .35s cubic-bezier(.4,0,.2,1);display:block}.nav-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.nav-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;background:#0009;transition:opacity .4s;position:fixed;inset:0}.nav-overlay.active{opacity:1;pointer-events:all}@keyframes navLinkFade{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@media (width<=1024px){.nav-toggle{justify-content:center;align-items:center;display:flex}.nav-links{-webkit-backdrop-filter:blur(30px)saturate(150%);backdrop-filter:blur(30px)saturate(150%);border-left:1px solid var(--border);z-index:1001;background:#0e0e14cc;flex-direction:column;justify-content:center;gap:12px;width:80%;max-width:340px;height:100dvh;padding:80px 40px 40px;transition:right .5s cubic-bezier(.4,0,.2,1);position:fixed;top:0;right:-100%;box-shadow:-20px 0 50px #0009}.nav-links.active{right:0}.nav-links.active li{animation:.5s forwards navLinkFade}.nav-links.active li:first-child{animation-delay:.1s}.nav-links.active li:nth-child(2){animation-delay:.15s}.nav-links.active li:nth-child(3){animation-delay:.2s}.nav-links.active li:nth-child(4){animation-delay:.25s}.nav-links.active li:nth-child(5){animation-delay:.3s}.nav-links.active li:nth-child(6){animation-delay:.35s}.nav-links.active li:nth-child(7){animation-delay:.4s}.nav-links li{width:100%}.nav-links li:last-child{border-top:1px solid var(--border);justify-content:center;margin-top:15px;padding-top:15px;display:flex}.theme-toggle{background:var(--bg-card);width:44px;height:44px}.nav-links .nav-link{letter-spacing:.5px;border-radius:var(--radius-md);border:1px solid #0000;align-items:center;padding:18px 24px;font-size:1.2rem;font-weight:600;transition:all .3s;display:flex}.nav-links .nav-link:hover,.nav-links .nav-link.active{border-left:3px solid var(--accent);color:var(--accent-light);background:linear-gradient(90deg,#7c4dff26,#0000);padding-left:30px}.nav-links .nav-link.active:after{display:none}.hero{padding:100px 0 40px}.hero-container{text-align:center;flex-direction:column}.hero-description{margin:0 auto 30px}.hero-cta{flex-wrap:wrap;justify-content:center}.hero-stats{justify-content:center}.hero-visual{justify-content:center;width:100%}.hero-title{font-size:2.8rem}.hero-3d-embed,.hero-float{display:none}.section-title{font-size:2rem}.about-grid,.contact-grid{grid-template-columns:1fr}.footer-container{text-align:center;flex-direction:column}.timeline-grid{grid-template-columns:1fr;gap:60px}.projects-grid,.blog-grid{grid-template-columns:1fr}}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:10px;padding:12px 28px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{border:1px solid var(--accent);color:var(--accent);background:0 0;position:relative;overflow:hidden}.btn-primary:hover{box-shadow:0 10px 30px var(--accent-glow);background:#7c4dff1a;transform:translateY(-3px)}.btn-outline{border:1px solid var(--border);color:var(--text-primary);background:0 0}.btn-outline:hover{background:var(--glass);border-color:var(--accent-light);color:var(--accent-light);box-shadow:0 0 15px #7c4dff1a}.gradient-text{background:linear-gradient(135deg, var(--accent), #a855f7, #ec4899);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;animation:4s infinite gradientShift}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.hero{justify-content:center;align-items:center;width:100vw;min-height:100dvh;display:flex;position:relative;overflow:hidden}.hero-container{z-index:2;align-items:flex-end;gap:80px;width:100%;max-width:100%;margin:0;padding:0 80px;display:flex;position:relative}.hero-bg-grid{background-image:radial-gradient(var(--border) 1px, transparent 1px);z-index:-1;opacity:.5;background-size:40px 40px;width:100%;height:100%;position:absolute;top:0;left:0;-webkit-mask-image:radial-gradient(70% 60%,#000,#0000);mask-image:radial-gradient(70% 60%,#000,#0000)}.hero-content{z-index:2;flex:1.2;position:relative}.hero-visual{z-index:2;flex-direction:column;flex:1;justify-content:center;align-items:flex-end;gap:20px;display:flex;position:relative}.pixel-art-container{z-index:-1;pointer-events:none;justify-content:flex-end;align-items:flex-end;width:100%;height:100vh;display:flex;position:absolute;top:0;right:0}.pixel-art-container canvas{object-fit:contain;pointer-events:auto;transform:translate(10%);width:auto!important;max-width:none!important;height:120%!important}@media (width<=992px){.pixel-art-container{display:none}}.hero-float{color:var(--accent);opacity:.12;z-index:1;pointer-events:none;text-shadow:0 0 20px var(--accent-glow);font-family:JetBrains Mono,monospace;font-weight:600;animation:6s ease-in-out infinite float3d;position:absolute}.hero-float--1{font-size:2.5rem;animation-delay:0s;top:15%;left:5%}.hero-float--2{font-size:2rem;animation-delay:1.2s;top:70%;left:10%}.hero-float--3{font-size:3rem;animation-delay:2.5s;top:20%;right:8%}.hero-float--4{font-size:1.8rem;animation-delay:.8s;bottom:20%;right:15%}.hero-float--5{font-size:2.2rem;animation-delay:1.8s;top:50%;left:45%}@keyframes float3d{0%,to{transform:translateY(0)rotate(0)perspective(400px)rotateY(0)}25%{transform:translateY(-15px)rotate(3deg)perspective(400px)rotateY(5deg)}50%{transform:translateY(-25px)rotate(-2deg)perspective(400px)rotateY(-5deg)}75%{transform:translateY(-10px)rotate(1deg)perspective(400px)rotateY(3deg)}}.hero-badge{color:#4ade80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#22c55e1a;border:1px solid #22c55e40;border-radius:100px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 18px;font-size:.85rem;font-weight:600;animation:.8s ease-out fadeInDown;display:inline-flex}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.badge-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #22c55e80}.hero-title{letter-spacing:-1px;margin-bottom:24px;font-family:Space Grotesk,sans-serif;font-size:4.5rem;line-height:1.1}.hero-line{display:block}.hero-description{color:var(--text-secondary);max-width:750px;margin-bottom:40px;font-size:1.2rem;line-height:1.7}.hero-cta{gap:16px;margin-bottom:48px;display:flex}.hero-stats{gap:40px;display:flex}.stat-item{flex-direction:column;display:flex}.stat-number{color:var(--text-primary);font-size:1.8rem;font-weight:800}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:.85rem}.pixel-art-container{z-index:1;filter:drop-shadow(0 0 30px #7c4dff33);pointer-events:auto;justify-content:center;align-items:center;width:100%;max-width:1600px;height:2000px;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}@media (width<=1024px){.hero{padding:120px 0 40px}.hero-container{text-align:center;flex-direction:column;padding-left:0;padding-right:0}.pixel-art-container{display:none}.hero-description{margin:0 auto 40px}.hero-cta,.hero-stats{justify-content:center}.hero-visual{justify-content:center;align-items:center;width:100%}.hero-title{font-size:3.2rem}.contact-form{margin-bottom:72px}.mobile-lead-bar{z-index:1200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);background:#08080ce6;border-radius:14px;gap:10px;padding:10px;display:flex;position:fixed;bottom:10px;left:10px;right:10px}.mobile-lead-bar .btn{flex:1;justify-content:center;padding:12px;font-size:.86rem}}.section{padding:80px 0;position:relative}.section-container{z-index:1;max-width:1200px;margin:0 auto;position:relative}.section-tag{color:var(--accent);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:.9rem;display:block}.section-title{font-family:Space Grotesk,sans-serif;font-size:2.8rem;font-weight:700}.about{position:relative;overflow:hidden}.about-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:60px;display:grid}.about-text p{color:var(--text-secondary);margin-bottom:30px;font-size:1.1rem}.about-highlights{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.highlight-item{border-radius:var(--radius-md);background:#ffffff05;border:1px solid #ffffff0a;gap:16px;padding:16px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex}.highlight-item:hover{background:#7c4dff0f;border-color:#7c4dff33;transform:translateY(-3px);box-shadow:0 8px 24px #0003,0 0 16px #7c4dff0f}.highlight-icon{background:#7c4dff14;border:1px solid #7c4dff1f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.5rem;transition:all .4s;display:flex}.highlight-item:hover .highlight-icon{background:#7c4dff26;border-color:#7c4dff4d;box-shadow:0 0 16px #7c4dff26}.highlight-item h4{margin-bottom:4px;font-size:1rem;font-weight:700}.highlight-item p{color:var(--text-muted);margin-bottom:0;font-size:.82rem}.terminal-window{border-radius:var(--radius-md);background:#0d1117;border:1px solid #7c4dff1f;transition:all .4s;overflow:hidden;box-shadow:0 8px 32px #0006,0 0 20px #7c4dff0a}.terminal-window:hover{border-color:#7c4dff40;box-shadow:0 12px 40px #00000080,0 0 30px #7c4dff14}.terminal-header{background:linear-gradient(#1a1f29,#161b22);border-bottom:1px solid #ffffff0f;align-items:center;gap:12px;padding:12px 16px;display:flex}.terminal-body{scroll-behavior:smooth;flex-direction:column;height:220px;padding:20px;font-family:JetBrains Mono,monospace;font-size:.85rem;display:flex;overflow-y:auto}.terminal-body::-webkit-scrollbar{width:5px}.terminal-body::-webkit-scrollbar-thumb{background:#7c4dff40;border-radius:10px}.terminal-body::-webkit-scrollbar-track{background:0 0}.terminal-line{margin-bottom:4px}.terminal-prompt{color:var(--accent-light);margin-right:10px}.terminal-output{color:#c9d1d9;white-space:pre-wrap;word-break:break-word;margin-bottom:12px}.terminal-input-line{align-items:center;gap:2px;display:flex}#terminalInput{color:#fff;font-family:inherit;font-size:inherit;opacity:0;pointer-events:none;background:0 0;border:none;width:1px;padding:0;position:absolute}.terminal-cursor{background:var(--accent);width:8px;height:16px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.resume{position:relative}.timeline-grid{grid-template-columns:1fr 1fr;gap:40px;margin-top:40px;display:grid}.timeline-column{width:100%}.timeline-title{color:var(--text-primary);align-items:center;gap:10px;margin-bottom:24px;font-size:1.2rem;font-weight:700;display:flex}.timeline-list{border-left:2px solid var(--border);flex-direction:column;gap:24px;padding-left:24px;display:flex}.timeline-item{position:relative}@media (width>=769px){.timeline-column:first-child .timeline-list{border-left:none;border-right:2px solid var(--border);text-align:right;padding-left:0;padding-right:24px}.timeline-column:first-child .timeline-item:before{left:auto;right:-31px}.timeline-column:first-child .timeline-title{text-align:right;flex-direction:row-reverse}.timeline-column:first-child .timeline-title svg{margin-left:8px;margin-right:0!important}}.timeline-item:before{content:"";background:var(--bg-primary);border:2px solid var(--accent);border-radius:50%;width:14px;height:14px;position:absolute;top:0;left:-31px}.timeline-item h4{margin-bottom:4px;font-size:1.05rem;font-weight:700}.timeline-item .tl-org{color:var(--accent-light);margin-bottom:8px;font-size:.9rem;font-weight:600}.timeline-item .tl-date{color:var(--text-secondary);background:#6c3ce91a;border-radius:100px;margin-bottom:12px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.timeline-item p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.projects{position:relative}.project-filters{flex-wrap:wrap;gap:12px;margin-bottom:40px;display:flex}.filter-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:100px;padding:8px 20px;font-size:.9rem;font-weight:500}.filter-btn:hover,.filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:30px;display:grid}.project-card{background:linear-gradient(160deg, var(--bg-card), #7c4dff05);border-radius:var(--radius-lg);border:1px solid var(--border);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.project-card:before{content:"";border-radius:var(--radius-lg);opacity:0;pointer-events:none;z-index:1;background:linear-gradient(135deg,#7c4dff1f,#a78bfa0a,#0000);transition:opacity .5s;position:absolute;inset:0}.project-card:hover:before{opacity:1}.project-card:hover{box-shadow:0 25px 50px #00000080, 0 0 40px var(--accent-glow), inset 0 1px 0 #ffffff0f;border-color:#7c4dff80;transform:translateY(-10px)scale(1.02)}.project-thumb{background:#0a0a0f;height:220px;position:relative;overflow:hidden}.project-thumb:after{content:"";background:linear-gradient(to top, var(--bg-card), transparent);z-index:1;pointer-events:none;opacity:.7;height:80px;position:absolute;bottom:0;left:0;right:0}.project-thumb img{object-fit:cover;opacity:0;filter:brightness(.85)saturate(.9);width:100%;height:100%;transition:opacity .6s,transform .6s cubic-bezier(.4,0,.2,1),filter .6s}.project-thumb img.loaded{opacity:1}.project-card:hover .project-thumb img.loaded{filter:brightness()saturate(1.1);transform:scale(1.08)}.project-category-badge{-webkit-backdrop-filter:blur(12px);color:var(--accent-light);text-transform:uppercase;letter-spacing:.5px;z-index:2;background:#06060ab3;border:1px solid #7c4dff33;border-radius:100px;padding:5px 14px;font-size:.72rem;font-weight:600;position:absolute;top:16px;right:16px}.project-info{padding:24px 24px 28px;position:relative}.project-info h3{margin-bottom:10px;font-size:1.2rem;font-weight:700;transition:color .3s}.project-card:hover .project-info h3{color:var(--accent-light)}.project-info p{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:18px;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.project-tech{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.project-tech span{color:var(--accent-light);background:#7c4dff14;border:1px solid #7c4dff1f;border-radius:6px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:.72rem;transition:all .3s}.project-card:hover .project-tech span{background:#7c4dff24;border-color:#7c4dff40}.project-link{color:var(--accent-light);opacity:.8;align-items:center;gap:6px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.project-card:hover .project-link{opacity:1;letter-spacing:.3px}.project-modal{z-index:2000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:none;position:fixed;top:0;left:0}.project-modal.active{display:flex}.pm-content{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-lg);border:1px solid var(--glass-border);width:100%;max-width:1000px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000080}.pm-close{z-index:10;background:var(--bg-card);color:var(--text-primary);cursor:pointer;border:none;border-radius:50%;width:40px;height:40px;font-size:1.5rem;position:absolute;top:20px;right:20px}.pm-hero{width:100%;height:400px;overflow:hidden}.pm-hero img{object-fit:cover;width:100%;height:100%}.pm-body{padding:40px}.pm-meta{border-bottom:1px solid var(--border);gap:20px;margin-bottom:30px;padding-bottom:20px;display:flex}.pm-meta-item span{color:var(--text-muted);text-transform:uppercase;font-size:.8rem;display:block}.pm-meta-item strong{font-size:1.1rem}.pm-description{color:var(--text-secondary);white-space:pre-wrap;margin-bottom:40px;font-size:1.1rem;line-height:1.8}.pm-gallery{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.pm-gallery img{border-radius:var(--radius-md);border:1px solid var(--border);width:100%}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px;display:grid}.article-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border);transition:var(--transition);overflow:hidden}.article-card:hover{border-color:var(--accent);transform:translateY(-5px)}.article-thumb{height:200px;overflow:hidden}.article-thumb img{object-fit:cover;width:100%;height:100%}.article-info{padding:20px}.article-info h4{margin-bottom:10px;font-size:1.2rem;line-height:1.4}.article-date{color:var(--text-muted);margin-bottom:15px;font-size:.8rem;display:block}.testi-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.testi-card{background:linear-gradient(145deg, var(--bg-card), #7c4dff0a);border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:32px;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.testi-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:0;height:2px;transition:opacity .5s;position:absolute;top:0;left:0;right:0}.testi-card:hover:before{opacity:.6}.testi-card:after{content:"\"";color:var(--accent);opacity:.05;pointer-events:none;font-family:serif;font-size:8rem;line-height:1;transition:opacity .4s;position:absolute;top:-10px;right:20px}.testi-card:hover:after{opacity:.1}.testi-card:hover{border-color:#7c4dff59;transform:translateY(-8px);box-shadow:0 20px 50px #0006,0 0 30px #7c4dff1a,inset 0 1px #ffffff0a}.testi-icon{color:var(--accent);opacity:.3;margin-bottom:16px;font-family:serif;font-size:2rem;line-height:1}.testi-content{color:var(--text-secondary);margin-bottom:24px;font-size:.95rem;font-style:italic;line-height:1.7}.testi-author h3{font-size:1rem;font-weight:700}.testi-author span{color:var(--text-muted);font-size:.8rem}.contact-grid{grid-template-columns:1fr 1.5fr;align-items:flex-start;gap:60px;display:grid}@media (width<=968px){.contact-grid{grid-template-columns:1fr;gap:40px}}.contact-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);align-items:center;gap:20px;margin-bottom:24px;padding:30px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.contact-card:before{content:"";background:linear-gradient(135deg, var(--accent-glow), transparent);opacity:0;transition:opacity .4s;position:absolute;inset:0}.contact-card:hover:before{opacity:1}.contact-card:hover{border-color:#7c4dff66;transform:translate(10px);box-shadow:0 10px 30px #0000004d}.contact-icon{background:var(--bg-secondary);width:50px;height:50px;color:var(--accent);border:1px solid var(--border);z-index:1;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-card h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;z-index:1;margin-bottom:4px;font-size:.9rem}.contact-card p{color:var(--text-primary);z-index:1;font-size:1.1rem;font-weight:600}.contact-form{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow);gap:24px;padding:40px;display:grid}.form-group{flex-direction:column;gap:10px;display:flex}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.form-group input,.form-group textarea{border:1px solid var(--border);color:var(--text-primary);background:#ffffff08;border-radius:12px;padding:16px 20px;font-family:inherit;font-size:1rem;transition:all .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow);background:#ffffff0d;outline:none}.btn-full{justify-content:center;align-items:center;gap:10px;width:100%;margin-top:10px;padding:18px;font-size:1rem;font-weight:700;display:flex}.form-meta-row{color:var(--text-muted);justify-content:space-between;gap:12px;margin-top:-8px;font-size:.78rem;display:flex}.contact-success-panel{color:#86efac;background:#10b98114;border:1px solid #10b98159;border-radius:12px;margin-top:14px;padding:12px 14px;font-size:.88rem;display:none}.contact-success-panel a{color:#a7f3d0;margin-left:6px;text-decoration:underline;display:inline-block}.mobile-lead-bar{display:none}.footer{border-top:1px solid var(--border);background:linear-gradient(#0000,#7c4dff08);padding:100px 0 40px;position:relative;overflow:hidden}.footer:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:.3;width:100%;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.footer-container{max-width:1200px;margin:0 auto;padding:0 20px}.footer-content-grid{grid-template-columns:2fr 1fr 1fr;gap:60px;margin-bottom:60px;display:grid}.footer-logo{margin-bottom:20px;font-family:JetBrains Mono,monospace;font-size:1.8rem;font-weight:800}.footer-bio{color:var(--text-secondary);max-width:400px;margin-bottom:25px;font-size:1rem;line-height:1.6}.footer-links h4,.footer-contact h4{color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:25px;font-size:1.1rem;font-weight:700}.footer-links ul,.footer-contact ul{flex-direction:column;gap:15px;list-style:none;display:flex}.footer-links a{color:var(--text-secondary);transition:var(--transition);font-weight:500}.footer-links a:hover{color:var(--accent);padding-left:5px}.footer-contact li{color:var(--text-secondary);align-items:center;gap:12px;display:flex}.footer-contact li span:first-child{color:var(--accent);font-size:1.2rem}.footer-bottom{border-top:1px solid var(--border);color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:40px;font-size:.9rem;display:flex}@media (width<=992px){.footer-content-grid{grid-template-columns:1fr 1fr}.footer-info{grid-column:span 2}}@media (width<=768px){.footer{padding:60px 0 30px}.footer-content-grid{grid-template-columns:1fr;gap:40px}.footer-info{grid-column:span 1}.footer-bottom{text-align:center;flex-direction:column;gap:15px}}.loader{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.section{position:relative}.project-card,.article-card,.testi-card,.highlight-item{animation:.6s ease-out both fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.badge-dot{animation:2s ease-in-out infinite dotPulse}@keyframes dotPulse{0%,to{box-shadow:0 0 5px var(--accent)}50%{box-shadow:0 0 15px var(--accent), 0 0 30px var(--accent-glow)}}.chatbot-wrapper{z-index:10000;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:30px;right:30px}.chatbot-toggle{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 10px 25px #6c3ce966}.chatbot-toggle:hover{transform:scale(1.1)}.chatbot-window{background:var(--glass-bg);width:350px;max-width:calc(100vw - 40px);height:450px;max-height:calc(100vh - 120px);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-md);transform-origin:100% 100%;opacity:0;pointer-events:none;flex-direction:column;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;bottom:80px;right:0;overflow:hidden;transform:scale(0);box-shadow:0 20px 40px #0006}.chatbot-window.active{opacity:1;pointer-events:all;transform:scale(1)}.chatbot-header{border-bottom:1px solid var(--glass-border);background:#ffffff08;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.chatbot-header-info{align-items:center;gap:10px;display:flex}.chatbot-dot{background:#22c55e;border-radius:50%;width:10px;height:10px;box-shadow:0 0 5px #22c55e}.chatbot-header-info div{flex-direction:column;display:flex}.chatbot-header-info strong{color:var(--text-primary);font-size:.95rem}.chatbot-header-info span{color:var(--text-muted);font-size:.75rem}.chatbot-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem;transition:color .3s}.chatbot-close:hover{color:var(--text-primary)}.chatbot-messages{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.msg-bot,.msg-user{word-wrap:break-word;border-radius:15px;max-width:85%;padding:10px 15px;font-size:.9rem;line-height:1.4}.msg-bot{color:var(--text-primary);border:1px solid var(--glass-border);background:#ffffff0d;border-bottom-left-radius:4px;align-self:flex-start}.msg-user{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chatbot-input{border-top:1px solid var(--glass-border);background:#ffffff05;gap:10px;padding:15px;display:flex}.chatbot-input input{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:20px;flex:1;padding:10px 15px;font-family:inherit;font-size:.9rem}.chatbot-input input:focus{border-color:var(--accent);outline:none}.chatbot-input button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .3s;display:flex}.chatbot-input button:hover{background:var(--accent-light)}.typing-dots{gap:4px;padding:5px 0;display:flex}.typing-dots span{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typing-bounce;display:inline-block}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1.2)}}#about{padding-top:20px;padding-bottom:20px}.testi-track{gap:2.5rem;width:max-content;animation:35s linear infinite scroll-horizontal;display:flex}@keyframes scroll-horizontal{0%{transform:translate(0)}to{transform:translate(-50%)}}.testi-card{border:1px solid var(--border);background:var(--bg-card);border-radius:1.25rem;flex-shrink:0;width:340px;padding:2rem;transition:transform .3s;box-shadow:0 10px 30px -10px #0000004d}.testi-card:hover{border-color:var(--accent);transform:translateY(-5px)}.testi-card p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem;font-style:italic;line-height:1.6}.testi-user{align-items:center;gap:.75rem;display:flex}.testi-user img{object-fit:cover;border:2px solid var(--accent);border-radius:9999px;width:2.75rem;height:2.75rem}.testi-user-info h3{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1.2}.testi-user-info span{opacity:.6;color:var(--text-muted);font-size:.8rem}.footer-socials-icons .social-wrapper{justify-content:flex-start;width:100%;height:80px;padding-top:20px;font-family:JetBrains Mono,monospace;list-style:none;display:inline-flex}.footer-socials-icons .icon{background:var(--bg-card);border:1px solid var(--border);width:45px;height:45px;box-shadow:var(--shadow);cursor:pointer;color:var(--text-primary);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;margin:10px;font-size:18px;transition:all .2s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:relative}.footer-socials-icons .tooltip{color:#fff;opacity:0;pointer-events:none;background:#fff;border-radius:5px;padding:5px 10px;font-size:12px;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);position:absolute;top:0;box-shadow:0 10px 10px #0000001a}.footer-socials-icons .tooltip:before{content:"";background:#fff;width:8px;height:8px;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);position:absolute;bottom:-3px;left:50%;transform:translate(-50%)rotate(45deg)}.footer-socials-icons .icon:hover .tooltip{opacity:1;visibility:visible;pointer-events:auto;top:-45px}.footer-socials-icons .icon:hover span,.footer-socials-icons .icon:hover .tooltip{text-shadow:0 -1px #0000001a}.footer-socials-icons .facebook:hover,.footer-socials-icons .facebook:hover .tooltip,.footer-socials-icons .facebook:hover .tooltip:before{color:#fff;background:#1877f2;border-color:#1877f2}.footer-socials-icons .twitter:hover,.footer-socials-icons .twitter:hover .tooltip,.footer-socials-icons .twitter:hover .tooltip:before{color:#fff;background:#1da1f2;border-color:#1da1f2}.footer-socials-icons .instagram:hover,.footer-socials-icons .instagram:hover .tooltip,.footer-socials-icons .instagram:hover .tooltip:before{color:#fff;background:#e4405f;border-color:#e4405f}.loader-wrapper{background-color:var(--bg-primary);z-index:9999;justify-content:center;align-items:center;width:100vw;height:100dvh;transition:opacity .5s,visibility .5s;display:flex;position:fixed;top:0;left:0}.loader-wrapper.hidden{opacity:0;visibility:hidden}@keyframes blinkCursor{50%{border-right-color:#0000}}@keyframes typeAndDelete{0%,10%{width:0}45%,55%{width:6.2em}90%,to{width:0}}.terminal-loader{color:#0f0;box-sizing:border-box;background-color:#1a1a1a;border:.1em solid #333;border-radius:4px;width:12em;padding:1.5em 1em;font-family:JetBrains Mono,monospace;font-size:1em;position:relative;overflow:hidden;box-shadow:0 4px 8px #0003}.terminal-loader .terminal-header{box-sizing:border-box;background-color:#333;border-top-left-radius:4px;border-top-right-radius:4px;height:1.5em;padding:0 .4em;position:absolute;top:0;left:0;right:0}.terminal-loader .terminal-controls{float:right}.terminal-loader .control{background-color:#777;border-radius:50%;width:.6em;height:.6em;margin-left:.4em;display:inline-block}.terminal-loader .control.close{background-color:#e33}.terminal-loader .control.minimize{background-color:#ee0}.terminal-loader .control.maximize{background-color:#0b0}.terminal-loader .terminal-title{float:left;color:#eee;font-size:.85em;line-height:1.5em}.terminal-loader .text{white-space:nowrap;border-right:.2em solid green;margin-top:1.5em;animation:4s steps(11,end) infinite typeAndDelete,.5s step-end infinite alternate blinkCursor;display:inline-block;overflow:hidden}@keyframes blink-cursor{0%,to{border-color:#0000}50%{border-color:var(--accent)}}#scrollProgress{pointer-events:none}@keyframes skeleton-loading{0%{background-position:100%}to{background-position:0%}}.skeleton{background:linear-gradient(90deg, var(--bg-card) 25%, var(--border) 50%, var(--bg-card) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s linear infinite skeleton-loading}.skeleton-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border);flex-direction:column;gap:16px;padding:20px;display:flex}.skeleton-image{border-radius:var(--radius-sm);width:100%;height:200px}.skeleton-title{width:65%;height:24px}.skeleton-text{width:90%;height:14px}.skeleton-badge{border-radius:20px;width:80px;height:20px}.lightbox{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:11000;opacity:0;background:#000000e6;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:40px;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.lightbox.active{opacity:1;display:flex}.lightbox-content{object-fit:contain;border-radius:var(--radius-md);max-width:90%;max-height:80vh;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);transform:scale(.9);box-shadow:0 20px 50px #00000080}.lightbox.active .lightbox-content{transform:scale(1)}.lightbox-close{color:#fff;cursor:pointer;z-index:10;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:2.5rem;transition:all .2s;display:flex;position:absolute;top:30px;right:30px}.lightbox-close:hover{background:var(--accent);transform:rotate(90deg)}.lightbox-nav{color:#fff;cursor:pointer;z-index:5;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-50%)scale(1.1)}.lightbox-prev{left:40px}.lightbox-next{right:40px}.lightbox-caption{color:#fff;text-align:center;max-width:80%;margin-top:20px;font-size:1.1rem;font-weight:500}@media (width<=768px){.lightbox{padding:20px}.lightbox-nav{width:45px;height:45px;font-size:1.1rem}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{width:40px;height:40px;font-size:2rem;top:15px;right:15px}}.pdf-modal{z-index:10000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:none;position:fixed;top:0;left:0}.pdf-modal.active{display:flex}.pdf-content{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-lg);border:1px solid var(--glass-border);width:100%;max-width:1100px;height:90vh;direction:column;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 30px 60px #00000080}.pdf-header{border-bottom:1px solid var(--glass-border);background:#ffffff08;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.pdf-header h3{color:var(--text-primary);font-size:1.1rem;font-weight:700}.pdf-close{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;transition:all .2s;display:flex}.pdf-close:hover{background:var(--accent);color:#fff;transform:rotate(90deg)}.pdf-body{background:#525659;flex:1}.pdf-body iframe{width:100%;height:100%}@media (width<=768px){.pdf-content{height:95vh}.pdf-header{padding:12px 16px}}.marquee-wrapper{z-index:5;pointer-events:none;background:0 0;height:300px;margin-top:-150px;margin-bottom:-80px;position:relative;overflow:hidden}.perspective-marquee-container{perspective:1200px;-webkit-mask-composite:source-in;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000),linear-gradient(#0000,#000 25% 75%,#0000);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000),linear-gradient(#0000,#000 25% 75%,#0000);mask-composite:JetBrains Monosect;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.marquee-content{width:100%;transform-style:preserve-3d;justify-content:flex-start;align-items:center;display:flex;transform:rotateX(8deg)rotateY(-28deg)}.marquee-track{white-space:nowrap;will-change:transform;display:flex}.marquee-item{color:var(--text-primary);letter-spacing:-.03em;padding-right:75px;font-family:JetBrains Mono,monospace;font-size:84px;font-weight:700;transition:filter .1s,opacity .1s;display:inline-block}@media (width<=768px){.marquee-wrapper{height:200px}.marquee-item{padding-right:40px;font-size:48px}.section-header{text-align:center!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;display:flex!important}.section-header>div{text-align:center;flex-direction:column;align-items:center;display:flex}.timeline-item{border-radius:var(--radius-md);background:#ffffff08;border:1px solid #ffffff0d;padding:20px;transition:all .3s}.timeline-item:hover{border-color:var(--accent-light);background:#ffffff0d}.timeline-item:before{left:-35px}.timeline-item h4{font-size:1rem}.timeline-item .tl-org{font-size:.85rem}}.pagination-nav{justify-content:center;width:100%;margin:0 auto;display:flex}.pagination-content{flex-direction:row;align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.pagination-link{white-space:nowrap;border-radius:var(--radius-md);cursor:pointer;min-width:2.5rem;height:2.5rem;color:var(--text-primary);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 .5rem;font-size:.875rem;font-weight:500;transition:colors .2s,background-color .2s;display:inline-flex}.pagination-link:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.pagination-link.active{border-color:var(--border);background-color:var(--bg-primary)}.pagination-link:disabled{pointer-events:none;opacity:.5}.pagination-ellipsis{width:2.25rem;height:2.25rem;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.chatbot-suggestions{background:0 0;border:none;flex-wrap:wrap;gap:8px;margin-top:4px;padding:8px 0;display:flex}.suggestion-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:20px;padding:6px 14px;font-size:.75rem;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1)}.suggestion-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 12px var(--accent-glow);transform:translateY(-2px)}.msg-bot{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.msg-user{background:var(--accent);color:#fff;box-shadow:0 4px 15px var(--accent-glow);border-bottom-right-radius:4px;align-self:flex-end}.msg-bot h1,.msg-bot h2,.msg-bot h3{color:var(--accent-light);margin:10px 0 5px;font-size:1rem}.msg-bot p{margin-bottom:8px}.msg-bot ul,.msg-bot ol{margin-bottom:10px;margin-left:20px;display:block}.msg-bot li{margin-bottom:4px}.msg-bot code{color:var(--accent-light);background:#7c4dff26;border-radius:4px;padding:2px 5px;font-family:JetBrains Mono,monospace;font-size:.85em}.msg-bot pre{border:1px solid var(--border);background:#0a0a0f;border-radius:8px;margin:12px 0;padding:12px;overflow-x:auto}.msg-bot pre code{color:#f0f0f5;background:0 0;padding:0}.msg-bot blockquote{border-left:3px solid var(--accent);color:var(--text-muted);margin:10px 0;padding-left:12px;font-style:italic}.chatbot-cta-container{flex-direction:column;gap:8px;margin-top:10px;margin-bottom:15px;animation:.5s forwards fadeIn;display:flex}.cta-btn{background:var(--bg-card);border:1px solid var(--accent);color:var(--accent-light);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:fit-content;padding:8px 16px;font-size:.85rem;font-weight:600;transition:all .3s;display:flex}.cta-btn:hover{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow);transform:translateY(-2px)}.cta-btn svg{width:16px;height:16px}.typing-container{padding:12px 16px}.typing-indicator{align-items:center;gap:12px;display:flex}.typing-label{color:var(--text-muted);letter-spacing:.3px;font-size:.78rem;font-style:italic}.typing-dots{align-items:center;gap:5px;display:flex}.typing-dots span{background:var(--accent);width:6px;height:6px;box-shadow:0 0 5px var(--accent-glow);border-radius:50%;animation:1.4s ease-in-out infinite both typing-bounce;display:inline-block}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}:root{--accent:#9b7cff;--accent-light:#c4b5fd;--accent-glow:#9b7cff47;--bg-primary:#080811;--bg-secondary:#10101c;--bg-card:#141422b8;--border:#c4b5fd24;--glass:#ffffff0b}html{scroll-padding-top:88px}body{background:radial-gradient(circle at 82% 6%, #9b7cff1c, transparent 30rem), var(--bg-primary)}body:before{content:"";pointer-events:none;opacity:.22;z-index:-1;background-image:linear-gradient(#ffffff05 1px,#0000 1px);background-size:100% 5px;position:fixed;inset:0}:where(a,button,input,textarea):focus-visible{outline:3px solid var(--accent-light);outline-offset:4px}.nav-container,.section-container{max-width:1180px}.nav-container{padding-inline:28px}.navbar{padding-block:18px}.navbar.scrolled{background:#080811d1}.nav-link{font-size:.88rem}.nav-links{gap:24px}.hero{min-height:min(880px,100dvh);padding-block:110px 70px}.hero-container{align-items:center;gap:clamp(36px,7vw,110px);max-width:1180px;padding-inline:28px}.hero-content{max-width:650px}.hero-title{letter-spacing:-.065em;font-size:clamp(3.2rem,7vw,6.4rem);line-height:.98}.hero-description{max-width:580px;font-size:1.05rem;line-height:1.8}.hero-badge{margin-bottom:28px}.hero-cta{margin-bottom:38px}.hero-stats{border-top:1px solid var(--border);gap:32px;padding-top:22px}.stat-number{color:var(--accent-light)}.stat-label{letter-spacing:.08em;font-size:.72rem}.section{padding-block:clamp(76px,10vw,140px)}.section-header{margin-bottom:42px}.section-title{letter-spacing:-.045em;font-size:clamp(2rem,4vw,3.25rem)}.section-tag{color:var(--accent-light);letter-spacing:.04em}.about-card,.terminal-window,.timeline-item,.project-card,.testimonial-card,.contact-form{border:1px solid var(--border);background:linear-gradient(145deg,#1b1a30d1,#0d0d18c7);box-shadow:0 20px 70px #0000002e}.about-card,.contact-form{border-radius:24px}.project-card,.testimonial-card{border-radius:18px;overflow:hidden}.project-card:hover{border-color:#c4b5fd6b;transform:translateY(-6px)}.btn{border-radius:10px;min-height:48px;padding-inline:22px}.btn-primary{background:var(--accent);color:#0b0915;border-color:var(--accent);font-weight:800}.btn-primary:hover{background:var(--accent-light);color:#0b0915}.btn-outline{border-color:var(--border)}.filter-btn{border-radius:999px;padding:9px 16px}.project-filters{gap:10px;margin-bottom:30px}input,textarea{border-color:var(--border);background:#0808118c;border-radius:10px}input:focus,textarea:focus{border-color:var(--accent-light);box-shadow:0 0 0 4px #9b7cff1f}.mobile-lead-bar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top-color:var(--border);background:#080811db}@media (width<=700px){.nav-container,.hero-container{padding-inline:20px}.hero{min-height:auto;padding-top:130px;padding-bottom:74px}.hero-title{font-size:clamp(3rem,15vw,4.6rem)}.hero-description{font-size:.98rem}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{justify-content:center;width:100%}.hero-stats{justify-content:space-between;gap:12px}.stat-number{font-size:1.45rem}.section{padding-block:78px}.section-container{padding-inline:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}.hwf-root{--hwf-bg:#0c0c0b;--hwf-ink:#e9e4da;--hwf-warm:#e9762b;isolation:isolate;background:var(--hwf-bg);width:100%;color:var(--hwf-ink);-webkit-font-smoothing:antialiased;margin-top:60px;position:relative;overflow:hidden}[data-theme=light] .hwf-root{--hwf-bg:#efebe3;--hwf-ink:#17150f;--hwf-warm:#c2361c}.hwf-top{z-index:1;letter-spacing:.13em;text-transform:uppercase;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:32px;padding:clamp(28px,4vw,56px) clamp(24px,4vw,64px) 0;font:11px/1.9 JetBrains Mono,monospace;display:grid;position:relative}.hwf-brand strong{letter-spacing:.16em;font-size:13px;font-weight:500;display:block}.hwf-brand p{max-width:290px;color:var(--hwf-ink);opacity:.65;margin:12px 0 18px;font-size:10px}.hwf-meta{opacity:.6;font-size:10px;display:block}.hwf-col h3{font:inherit;opacity:.6;margin:0 0 12px}.hwf-col ul{margin:0;padding:0;list-style:none}.hwf-col li+li{margin-top:5px}.hwf-root a,.hwf-up{color:inherit;text-decoration:none}.hwf-col a,.hwf-up{opacity:.85;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:linear-gradient(currentColor,currentColor) 0 100%/0% 1px no-repeat;border:0;padding:0;transition:opacity .2s,background-size .3s;display:inline-block}.hwf-col a:hover,.hwf-up:hover{opacity:1;background-size:100% 1px}.hwf-root a:focus-visible,.hwf-up:focus-visible{outline-offset:5px;outline:2px solid}.hwf-rule{z-index:1;border-top:1px solid color-mix(in srgb,var(--hwf-ink) 20%,transparent);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;margin:28px clamp(24px,4vw,64px) 0;padding-top:16px;font:10px/1.8 JetBrains Mono,monospace;display:flex;position:relative}.hwf-rule span{opacity:.6}.hwf-art{height:clamp(145px,24vw,390px);margin-top:26px;position:relative;overflow:hidden}.hwf-art canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.hwf-word{text-align:center;letter-spacing:-.06em;white-space:nowrap;margin:0;padding-top:3vw;font:900 20vw/.85 Inter,Arial,sans-serif;display:block}.hwf-root.hwf-ready .hwf-word{clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.hwf-socials{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.hwf-root .hwf-socials a{border-color:color-mix(in srgb,var(--hwf-ink) 25%,transparent)!important;color:var(--hwf-ink)!important;border-radius:0!important}@media (width<=720px){.hwf-top{letter-spacing:.07em;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 14px;font-size:10px}.hwf-brand{grid-column:1/-1}.hwf-brand p{max-width:340px}.hwf-col a{overflow-wrap:anywhere;padding:5px 0}.hwf-rule{letter-spacing:.08em;font-size:9px}.hwf-art{margin-top:32px}.hwf-root{margin-bottom:72px}}@media (width<=380px){.hwf-top{grid-template-columns:repeat(2,minmax(0,1fr))}.hwf-rule span{max-width:150px}}@media (prefers-reduced-motion:reduce){.hwf-col a,.hwf-up{transition:none}}#resume .timeline-grid{flex-direction:column;gap:clamp(64px,12vh,140px);display:flex}#resume .timeline-column{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(24px,5vw,80px);display:grid}#resume .timeline-title{letter-spacing:-.045em;text-align:left;overflow-wrap:anywhere;flex-direction:row;margin:0;font-size:clamp(1.4rem,3.2vw,3rem);line-height:1.15;position:sticky;top:45vh}#resume .timeline-title svg{display:none}#resume .timeline-list{text-align:left;border:0;gap:0;min-width:0;padding:0}#resume .timeline-item{opacity:var(--career-opacity,1);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow-wrap:anywhere;background:0 0;border:0;flex-direction:column;justify-content:center;padding-block:clamp(44px,6vh,76px);display:flex}#resume .timeline-item:before{display:none}#resume .timeline-item h4{letter-spacing:-.045em;color:oklch(65% .2 var(--career-hue,265));text-wrap:balance;margin-bottom:16px;font-size:clamp(1.8rem,4.3vw,4.4rem);line-height:1.08}#resume .timeline-item .tl-org{color:var(--text-primary);margin-bottom:12px;font-size:clamp(1rem,1.7vw,1.4rem)}#resume .timeline-item .tl-date{align-self:flex-start}#resume .timeline-item p{max-width:48ch;font-size:1rem}@media (width<=768px){#resume .timeline-grid{gap:48px}#resume .timeline-column{grid-template-columns:minmax(0,1fr);gap:8px}#resume .timeline-title{z-index:3;background:var(--bg-primary);letter-spacing:-.025em;border-bottom:1px solid var(--border);padding:16px 0;font-size:clamp(1.15rem,5vw,1.5rem);position:sticky;top:56px}#resume .timeline-item{translate:0 calc((1 - var(--career-opacity,1)) * 18px);padding-block:clamp(30px,4.6svh,52px)}#resume .timeline-item h4{margin-bottom:12px;font-size:clamp(1.65rem,7vw,2.4rem);line-height:1.15}#resume .timeline-item .tl-org{font-size:1rem;line-height:1.5}#resume .timeline-item p{font-size:.9rem;line-height:1.7}#resume .timeline-item .tl-date{font-size:.7rem}}@media (prefers-reduced-motion:reduce){#resume .timeline-item{opacity:1;min-height:auto;transform:translate(0,0)}#resume .timeline-title{position:static}}#hero{background:var(--bg-primary);width:100%;max-width:100vw;min-height:auto;padding:80px 0 64px;overflow:hidden}#hero .hero-container{text-align:left;width:100%;max-width:1440px;margin:auto;padding-inline:clamp(24px,5vw,72px);display:block}#hero .hero-visual{isolation:isolate;width:100%;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;margin:0 0 36px;display:block;position:relative;overflow:hidden}#hero .hwf-art{height:clamp(100px,22vw,310px);margin:0}#hero .hwf-word{font-size:clamp(1rem,16vw,230px)}:root:not([data-theme=light]) #hero .hero-visual{--hwf-ink:#f4ead8;--hwf-warm:#ffad66;color:var(--hwf-ink)}#hero .hero-content{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);max-width:none;padding-top:36px;display:grid}#hero .hero-identity,#hero .hero-details{min-width:0}#hero .hero-eyebrow{font:10px/1.6 var(--site-mono);letter-spacing:.12em;color:var(--text-muted);margin-bottom:22px}#hero .hero-badge{color:var(--text-secondary);font:11px var(--site-mono);background:0 0;border:0;margin-bottom:20px;padding:0;animation:none}#hero .badge-dot{background:var(--accent);box-shadow:none}#hero .hero-title{font:600 clamp(2.8rem,5vw,5rem)/1.07 var(--site-display);letter-spacing:-.055em;overflow-wrap:anywhere;margin:0}#hero .hero-title>.hero-line:first-child{letter-spacing:0;color:var(--text-secondary);margin-bottom:10px;font-size:1rem;font-weight:400}#hero .hero-name .gradient-text{color:var(--text-primary);-webkit-text-fill-color:var(--text-primary);background:0 0}#hero .hero-role{min-height:1.5em;font:400 clamp(.95rem,1.6vw,1.35rem)/1.5 var(--site-mono);letter-spacing:-.025em;color:var(--accent);margin-top:18px}#hero .hero-description{max-width:52ch;font:400 clamp(1rem,1.25vw,1.1rem)/1.8 var(--site-display);color:var(--text-secondary);margin:0 0 24px}#hero .hero-cta{flex-flow:wrap;justify-content:flex-start;gap:10px;margin:0 0 28px;display:flex}#hero .hero-cta .btn{border-radius:2px;width:auto;min-height:44px;padding:12px 16px;font-size:11px}#hero .hero-cta a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}#hero .hero-stats{border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:none;padding-top:20px;display:grid}#hero .stat-item+.stat-item{border-left:1px solid var(--border);padding-left:16px}#hero .stat-number{font:600 clamp(1.4rem,2.2vw,2rem)/1.2 var(--site-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}#hero .stat-label{font:10px var(--site-mono);letter-spacing:.08em;margin-top:6px}@media (width<=700px){#hero{padding:32px 0 40px}#hero .hero-container{padding-inline:20px}#hero .hero-visual{margin-bottom:20px}#hero .hwf-art{height:clamp(96px,25vw,170px)}#hero .hero-content{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px}#hero .hero-eyebrow{letter-spacing:.08em;margin-bottom:16px;font-size:9px}#hero .hero-badge{margin-bottom:16px}#hero .hero-title{letter-spacing:-.04em;overflow-wrap:normal;font-size:clamp(2rem,8.5vw,3.5rem);line-height:1.12}#hero .hero-name{overflow-wrap:anywhere;text-wrap:balance}#hero .hero-role{min-height:3em;margin-top:14px;font-size:.95rem}#hero .hero-description{margin-bottom:22px;font-size:1rem;line-height:1.7}#hero .hero-cta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px;display:grid}#hero .hero-cta .btn{justify-content:center;width:100%;min-height:48px;padding:12px 8px;font-size:11px}#hero #cvDownloadContainer{grid-column:1/-1;min-width:0}#hero .hero-stats{gap:10px;padding-top:18px}#hero .stat-item+.stat-item{padding-left:10px}#hero .stat-label{letter-spacing:.04em;font-size:9px}}@media (width<=360px){#hero .hero-container{padding-inline:16px}#hero .hero-eyebrow{letter-spacing:0;font-size:8px}}@media (prefers-reduced-motion:reduce){#hero #heroRole{border-right:0!important;animation:none!important}}#testimonials{max-width:100vw;overflow:hidden}#testimonials>.hero-bg-grid,#testimonials>.hero-float{display:none}#testimonials>.section-container{max-width:none;padding-inline:0}#testimonials .section-header{padding-inline:24px;max-width:900px!important;margin-bottom:72px!important}#testimonials .section-title{letter-spacing:-.045em;font-size:clamp(2rem,4.5vw,3.75rem);line-height:1.1}#testimonials .section-header p{max-width:640px;color:var(--text-secondary);margin:20px auto 0;line-height:1.7}#testimonials .testimonial-slider-container{padding:0!important;-webkit-mask-image:none!important;mask-image:none!important}#testimonials .testi-marquee{flex-direction:column;gap:54px;display:flex}#testimonials .testi-marquee-row{gap:40px;padding-block:6px;display:flex;overflow:hidden}#testimonials .testi-marquee-group{flex:none;gap:40px;animation:55s linear infinite testimonial-canopy;display:flex}#testimonials .testi-marquee-row:nth-child(2) .testi-marquee-group{animation-duration:62s;animation-direction:reverse}#testimonials .testi-marquee-row:hover .testi-marquee-group,#testimonials .testi-marquee-row:focus-within .testi-marquee-group{animation-play-state:paused}#testimonials .testi-marquee-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}#testimonials .testi-quote{width:340px;box-shadow:none;background:0 0;border:0;flex:none;align-items:flex-start;gap:14px;display:flex}#testimonials .testi-avatar{border:1px solid var(--border);background:var(--bg-secondary);width:46px;height:46px;color:var(--accent-light);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:grid}#testimonials .testi-identity{flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-bottom:6px;display:flex}#testimonials .testi-identity h3{color:var(--text-primary);font-size:.875rem}#testimonials .testi-identity span{color:var(--text-muted);font-size:.75rem}#testimonials .testi-quote p{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}@keyframes testimonial-canopy{to{transform:translate(calc(-100% - 40px))}}@media (width<=600px){#testimonials .section-header{margin-bottom:40px!important}#testimonials .testi-marquee{gap:32px}#testimonials .testi-quote{width:290px}}@media (prefers-reduced-motion:reduce){#testimonials .testi-marquee-row{overflow-x:auto}#testimonials .testi-marquee-group{animation:none}#testimonials .testi-marquee-group[aria-hidden]{display:none}}#projects .project-marquee{width:100%;height:640px;box-shadow:none;background:0 0;border:0;border-radius:24px;justify-content:center;align-items:center;display:flex;overflow:hidden}#projects .project-marquee-plane{width:1800px;height:1800px;transform-style:preserve-3d;flex:none;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:24px;display:grid;transform:rotateX(55deg)rotate(-45deg)scale(.8)}#projects .project-marquee-column{border-left:1px dashed var(--border);flex-direction:column;gap:24px;padding-left:12px;animation:90s linear infinite project-drift;display:flex;position:relative}#projects .project-marquee-group{flex-direction:column;gap:24px;display:flex}#projects .project-marquee-column:nth-child(2n){animation-duration:110s;animation-direction:reverse}#projects .project-marquee-card{aspect-ratio:970/700;border:1px solid var(--border);background:var(--bg-primary);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;border-radius:12px;padding:0;transition:transform .3s,box-shadow .3s;display:block;position:relative;overflow:hidden}#projects .project-marquee-card img{object-fit:cover;width:100%;height:100%;display:block}#projects .project-marquee-card span{color:#fff;background:linear-gradient(#0000,#000000d9);padding:28px 16px 16px;font-size:1rem;line-height:1.4;position:absolute;inset:auto 0 0}#projects .project-marquee-card:hover{transform:translateY(-10px);box-shadow:0 18px 40px #0005}#projects .project-marquee:focus-within .project-marquee-column{animation-play-state:paused}#projects .project-marquee:has(:hover) .project-marquee-column{animation-play-state:paused}#projects .project-marquee-card:focus-visible{outline:4px solid var(--accent);outline-offset:-4px}@keyframes project-drift{0%{translate:0}to{translate:0 calc(-50% - 12px)}}#projects>.hero-bg-grid,#projects>.hero-float{display:none}@media (width<=700px){#projects .project-marquee{height:430px}#projects .project-marquee-plane{transform:rotateX(55deg)rotate(-45deg)scale(.48)}}@media (prefers-reduced-motion:reduce){#projects .project-marquee{height:auto;max-height:600px;padding:16px;overflow-y:auto}#projects .project-marquee-group[aria-hidden]{display:none}#projects .project-marquee-plane{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;height:auto;transform:none}#projects .project-marquee-column{border:0;gap:12px;padding:0;animation:none}#projects .project-marquee-card{transition:none}}:root{--bg-primary:#0c0c0b;--bg-secondary:#151512;--bg-card:#1b1b17;--text-primary:#e9e4da;--text-secondary:#b9b3a8;--text-muted:#a39d92;--accent:#e9762b;--accent-light:#f5a168;--accent-glow:#e9762b33;--border:#e9e4da26;--glass:#e9e4da08;--glass-bg:#151512cc;--glass-border:#e9e4da26;--site-display:Inter, Arial, sans-serif;--site-mono:"JetBrains Mono", monospace}[data-theme=light]{--bg-primary:#efebe3;--bg-secondary:#e5dfd4;--bg-card:#f7f3ec;--text-primary:#17150f;--text-secondary:#514b40;--text-muted:#6b6255;--accent:#c2361c;--accent-light:#a52b16;--accent-glow:#c2361c26;--border:#17150f26;--glass:#17150f08;--glass-bg:#efebe3dd;--glass-border:#17150f26}body{background:var(--bg-primary);font-family:var(--site-mono)}body:before{display:none}@media (width<=768px){#about .about-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:32px}#about .about-card{order:0;width:100%;min-width:0}#about .about-text{order:1;width:100%}}@media (width<=700px){.about-grid,.about-text,.about-highlights,.highlight-item,.highlight-item>div{min-width:0}.highlight-item{overflow-wrap:anywhere}}@media (width<=360px){.about-highlights{grid-template-columns:minmax(0,1fr)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--shadow:0 12px 36px #17150f12}#themeToggle{color:var(--text-primary);border:1px solid var(--border);background:var(--glass)}#themeToggle:hover{background:var(--bg-card);border-color:var(--accent)}.pm-content,.terminal-body,.chat-window{background:var(--bg-card);color:var(--text-primary)}.terminal-input-line,#terminalInput{color:var(--text-primary)}.terminal-output,[data-theme=light] .hero-badge{color:var(--text-secondary)}[data-theme=light] .project-marquee-card{box-shadow:0 8px 24px #17150f15}h1,h2,h3,h4,.hero-title,.section-title,.nav-logo{font-family:var(--site-display)}button,input,textarea,select,.btn,.nav-link{font-family:var(--site-mono)}.navbar.scrolled,.mobile-lead-bar,.nav-links{background:var(--glass-bg)}.gradient-text{background-image:linear-gradient(135deg, var(--accent), var(--accent-light))}.about-card,.terminal-window,.project-card,.testimonial-card{background:var(--bg-card)}.btn-primary,.btn-primary:hover{color:var(--bg-primary)}input,textarea{background:var(--bg-secondary)}input:focus,textarea:focus{box-shadow:0 0 0 4px var(--accent-glow)}#resume .timeline-item h4{color:var(--accent)}#resume .timeline-item .tl-date{background:var(--glass)}#scrollProgress{background:var(--accent)!important}::selection{background:var(--accent);color:var(--bg-primary)}#about .about-card{box-shadow:none;background:0 0;border:0}#about .terminal-window{border-color:color-mix(in srgb, var(--accent) 24%, var(--border));box-shadow:0 24px 56px -24px #000b, 0 8px 20px -12px #0008, 0 0 36px -20px var(--accent-glow), inset 0 1px 0 #ffffff0a;transition:box-shadow .3s,border-color .3s}#about .terminal-window:hover,#about .terminal-window:focus-within{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:0 30px 64px -24px #000c, 0 10px 24px -12px #0009, 0 0 44px -18px var(--accent-glow), inset 0 1px 0 #ffffff0d}#about .terminal-header{background:var(--bg-secondary);border-bottom-color:var(--border)}[data-theme=light] #about .terminal-window{box-shadow:0 20px 48px -24px #17150f40,0 6px 16px -10px #17150f30,inset 0 1px #ffffff80}[data-theme=light] #about .terminal-window:hover,[data-theme=light] #about .terminal-window:focus-within{box-shadow:0 26px 56px -24px #17150f50, 0 8px 20px -10px #17150f38, 0 0 32px -20px var(--accent-glow)}@media (prefers-reduced-motion:reduce){#about .terminal-window{transition:none}}#navbar{z-index:1000;background:var(--bg-primary);border-bottom:1px solid #0000;width:100%;padding:0;position:sticky;top:0}#navbar.scrolled{background:var(--glass-bg);border-color:var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}#navbar .nav-container{justify-content:space-between;align-items:center;gap:20px;max-width:1180px;height:72px;padding-inline:20px;display:flex}#navbar .nav-logo{letter-spacing:-.04em;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:4px;font-size:1rem;display:inline-flex}#navbar .nav-logo img{object-fit:contain;width:auto;max-width:140px;height:48px;image-rendering:-webkit-optimize-contrast;display:block}#navbar .nav-logo:hover{background:var(--glass)}#navbar .nav-links{background:0 0;align-items:center;gap:2px;display:flex;position:static}#navbar .nav-link{min-height:36px;color:var(--text-secondary);border-radius:6px;justify-content:center;align-items:center;padding:8px 10px;font-size:.72rem;display:inline-flex}#navbar .nav-link:after{display:none}#navbar .nav-link:hover,#navbar .nav-link.active{background:var(--glass);color:var(--text-primary)}#navbar .nav-link[data-section=admin]{border:1px solid var(--border)}#navbar .nav-link[data-section=contact]{background:var(--accent);color:var(--bg-primary)}#navbar .nav-toggle{border:1px solid var(--border);background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;display:none}#navbar .nav-toggle span{background:var(--text-primary);width:18px;height:2px;margin:0;transition:transform .3s,opacity .3s}#navbar .nav-toggle.active span:first-child{transform:translateY(7px)rotate(45deg)}#navbar .nav-toggle.active span:nth-child(2){opacity:0}#navbar .nav-toggle.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}#navbar .theme-toggle{width:36px;height:36px}@media (width<=1024px){#navbar .nav-toggle{flex-direction:column;display:flex}#navbar .nav-links{border-top:1px solid var(--border);background:var(--bg-primary);visibility:visible;opacity:1;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;width:100%;max-width:none;height:calc(100dvh - 72px);margin:0;padding:20px;display:none;position:fixed;inset:72px 0 0;overflow-y:auto;transform:none}#navbar .nav-links.active{display:flex}#navbar .nav-link{justify-content:flex-start;width:100%;min-height:44px;font-size:.9rem}#navbar .nav-links>li:last-child{margin-top:auto;padding-block:16px}#navbar .nav-links>li:last-child>div{margin-left:0!important}#navOverlay{display:none}}@media (prefers-reduced-motion:reduce){#navbar .nav-toggle span{transition:none}}#chatbotWrapper{z-index:1100;bottom:24px;right:24px}#chatbotToggle{background:var(--accent);width:54px;height:54px;color:var(--bg-primary);border:1px solid var(--border);box-shadow:0 8px 24px #0003, 0 0 0 5px var(--glass)}#chatbotToggle:hover{transform:translateY(-3px)}#chatbotWindow{background:var(--bg-primary);border:1px solid var(--border);-webkit-backdrop-filter:none;backdrop-filter:none;visibility:hidden;border-radius:18px;width:390px;max-width:calc(100vw - 48px);height:540px;max-height:calc(100dvh - 116px);bottom:72px;box-shadow:0 24px 64px -16px #0006}#chatbotWindow.active{visibility:visible}#chatbotWindow .chatbot-header{background:var(--bg-secondary);border-color:var(--border);flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:16px 18px;display:flex}#chatbotWindow .chatbot-header-info{align-items:center;gap:12px;min-width:0;display:flex}#chatbotWindow .chatbot-header-info>.chatbot-heading{flex-direction:column;gap:5px;min-width:0;display:flex}#chatbotWindow .chatbot-header-info>.chatbot-avatar{border:1px solid var(--border);background:var(--accent-glow);width:42px;height:42px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}#chatbotWindow .chatbot-status{align-items:center;gap:6px;display:flex}#chatbotWindow .chatbot-status i{background:var(--accent);border-radius:50%;width:5px;height:5px}#chatbotWindow .chatbot-close svg{display:block}#chatbotWindow .chatbot-header-info strong{line-height:1.25}#chatbotWindow .chatbot-header-info>div>span{letter-spacing:.04em;line-height:1.4}#chatbotWindow .chatbot-dot{flex:none;width:8px;height:8px;margin-inline:4px;animation:none}#chatbotWindow .chatbot-close{border:1px solid var(--border);flex:none;padding:0;line-height:1}#chatbotWindow .chatbot-close:hover{color:var(--accent);border-color:var(--accent)}#chatbotWindow .chatbot-header-info strong{font-family:var(--site-display);color:var(--text-primary);font-size:1rem}#chatbotWindow .chatbot-header-info span{color:var(--text-muted);font-size:.7rem}#chatbotWindow .chatbot-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}#chatbotWindow .chatbot-close{background:var(--glass);width:36px;height:36px;color:var(--text-primary);border-radius:8px;place-items:center;font-size:24px;display:grid}#chatbotWindow .chatbot-messages{overscroll-behavior:contain;gap:14px;min-height:0;padding:20px}#chatbotWindow .msg-bot,#chatbotWindow .msg-user{font-family:var(--site-display);overflow-wrap:anywhere;border:1px solid var(--border);max-width:90%;box-shadow:none;padding:12px 15px;font-size:.9rem;line-height:1.65}#chatbotWindow .msg-bot{background:var(--bg-secondary);color:var(--text-primary);border-radius:3px 14px 14px}#chatbotWindow .msg-user{background:var(--accent);color:var(--bg-primary);border-color:#0000;border-radius:14px 3px 14px 14px}#chatbotWindow .suggestion-btn{background:var(--glass);color:var(--text-secondary);border:1px solid var(--border);text-align:left;border-radius:8px;padding:10px 12px;font-size:.75rem}#chatbotWindow .suggestion-btn:hover{color:var(--accent);border-color:var(--accent)}#chatbotWindow .chatbot-input{background:var(--bg-primary);border-color:var(--border);flex:none;gap:10px;padding:14px}#chatbotInput{background:var(--bg-secondary);min-width:0;color:var(--text-primary);border:1px solid var(--border);border-radius:10px;padding:12px;font-size:16px}#chatbotWindow .chatbot-input button{background:var(--accent);width:44px;height:44px;color:var(--bg-primary);border-radius:10px;flex:none}@media (width<=768px){#chatbotWrapper{right:max(16px, env(safe-area-inset-right));bottom:calc(80px + env(safe-area-inset-bottom))}#chatbotToggle{border-radius:18px;width:54px;height:54px}#chatbotWindow{inset:var(--chat-top,0px) 0 auto;width:100vw;height:var(--chat-height,100dvh);background:var(--bg-primary);max-width:none;max-height:none;box-shadow:none;opacity:1;visibility:visible;pointer-events:none;border:0;border-radius:0;margin:0;transition:none;display:none;position:fixed;transform:none}#chatbotWindow.active{pointer-events:auto;grid-template-rows:auto minmax(0,1fr) auto;display:grid}#chatbotWindow .chatbot-header{min-height:76px;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;background:var(--bg-primary);gap:12px}#chatbotWindow .chatbot-avatar{border-radius:50%}#chatbotWindow .chatbot-heading strong{font-size:1rem}#chatbotWindow .chatbot-close{border-radius:50%;width:44px;height:44px}#chatbotWindow .chatbot-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;gap:16px;min-height:0;padding:20px 16px;overflow:hidden auto}#chatbotWindow .msg-bot,#chatbotWindow .msg-user{flex:none;max-width:88%;padding:13px 15px;font-size:15px;line-height:1.65}#chatbotWindow .chatbot-suggestions{grid-template-columns:minmax(0,1fr);gap:8px;width:100%;margin-top:8px;display:grid}#chatbotWindow .suggestion-btn{white-space:normal;border-radius:12px;width:100%;min-height:48px;padding:12px 14px;font-size:13px}#chatbotWindow .chatbot-input{padding:12px 12px calc(12px + env(safe-area-inset-bottom));background:var(--bg-primary);align-items:center;gap:8px;margin:0;display:flex}#chatbotInput{border-radius:24px;flex:1;width:0;min-width:0;min-height:48px;padding-inline:16px;font-size:16px}#chatbotWindow .chatbot-input button{border-radius:50%;width:48px;height:48px}#chatbotWrapper:has(.chatbot-window.active) #chatbotToggle{display:none}body:has(#chatbotWindow.active){overflow:hidden}}#about .about-grid{grid-template-columns:minmax(0,1fr)}#about .about-card{width:100%;max-width:840px;margin-inline:auto}#skills{--skills-orange:#f07835;min-width:0;padding-block:40px;position:relative}#skills .skills-sticky{padding-top:90px}#skills .section-container{min-width:0}#skills .skills-intro{max-width:640px}#skills .skills-intro .section-title{margin-bottom:12px}#skills .skills-intro p{color:var(--text-secondary);margin-bottom:24px}#skills .skills-viewport{overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;width:100%;-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 calc(var(--skill-scene-progress,0) * 30px), #000 calc(100% - (1 - var(--skill-scene-progress,0)) * 30px), transparent 100%);-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 calc(var(--skill-scene-progress,0) * 30px), #000 calc(100% - (1 - var(--skill-scene-progress,0)) * 30px), transparent 100%);mask-image:linear-gradient(90deg, transparent 0, #000 calc(var(--skill-scene-progress,0) * 30px), #000 calc(100% - (1 - var(--skill-scene-progress,0)) * 30px), transparent 100%);overflow:auto hidden}#skills .skills-viewport::-webkit-scrollbar{width:0;height:0;display:none}#skills .skills-viewport:focus-visible{outline:2px solid var(--skills-orange);outline-offset:4px}#skills .about-highlights{counter-reset:skill;gap:0;width:max-content;height:360px;padding-inline:28px;display:flex;position:relative}#skills .skills-axis{background:color-mix(in srgb, var(--skills-orange) 22%, transparent);border-radius:2px;height:2px;margin-top:-1px;position:absolute;top:50%;left:28px;right:28px}#skills .skills-axis-line{width:calc(var(--skill-scene-progress,0) * 100%);border-radius:inherit;background:var(--skills-orange);height:100%;display:block}#skills .highlight-item{counter-increment:skill;width:250px;height:138px;box-shadow:none;--skill-icon-drift:-12px;background:0 0;border:0;border-radius:0;flex-wrap:wrap;flex:0 0 250px;align-content:flex-end;align-self:flex-start;gap:12px;margin:0;padding:0 24px 0 0;transition:none;display:flex;position:relative;transform:none}#skills .highlight-item:nth-child(2n){--skill-icon-drift:12px;align-content:flex-start;align-self:flex-end}#skills .highlight-item:before{content:none}#skills .highlight-item>div:not(.highlight-icon){position:relative}#skills .highlight-item>div:not(.highlight-icon):before{content:"";background:var(--skills-orange);width:2px;transform:scaleY(var(--skill-progress,1));transform-origin:bottom;position:absolute;top:44px;bottom:-42px;left:-35px}#skills .highlight-item:nth-child(2n)>div:not(.highlight-icon):before{content:none}#skills .highlight-item:nth-child(2n):before{content:"";background:var(--skills-orange);width:2px;height:42px;transform:scaleY(var(--skill-progress,1));transform-origin:top;position:absolute;top:-42px;left:21px}#skills .highlight-item:after{content:counter(skill, decimal-leading-zero);border:2px solid var(--skills-orange);width:34px;height:34px;color:var(--skills-orange);background:var(--bg-primary);font:600 11px var(--font-mono,monospace);transform:scale(var(--skill-progress,1));border-radius:50%;place-items:center;display:grid;position:absolute;top:164px;left:5px}#skills .highlight-item:nth-child(2n):after{top:-58px}#skills .highlight-item>div{min-width:0}#skills .highlight-item>div:not(.highlight-icon){flex:1 1 0}#skills .highlight-icon,#skills .highlight-item:hover .highlight-icon{color:var(--skills-orange);background:color-mix(in srgb, var(--skills-orange) 10%, transparent);border:1px solid color-mix(in srgb, var(--skills-orange) 25%, transparent);box-shadow:none;flex:0 0 44px;transition:none}#skills .highlight-icon svg{stroke:currentColor}#skills .highlight-item h3{margin-bottom:6px;font-size:1rem;line-height:1.4}#skills .highlight-item p{color:var(--text-secondary);overflow-wrap:anywhere;margin:0;font-size:.85rem;line-height:1.6}#skills .highlight-item .skill-mask{transform:translateX(calc((1 - var(--skill-text-progress,1)) * 14px));display:block;overflow:clip}#skills .highlight-item .skill-mask>h3,#skills .highlight-item .skill-mask>p{transform:translateY(calc((1 - var(--skill-text-progress,1)) * 100%))}#skills .highlight-icon{transform:translateY(calc((1 - var(--skill-icon-progress,1)) * var(--skill-icon-drift,-12px))) scale(calc(.72 + .28 * var(--skill-icon-progress,1)));opacity:calc(.35 + .65 * var(--skill-icon-progress,1))}#skills .highlight-item>div:not(.highlight-icon){opacity:calc(.3 + .7 * var(--skill-text-progress,1))}#skills.is-scroll-driven{padding-block:0}#skills.is-scroll-driven .skills-viewport{overflow-x:hidden}#skills.is-scroll-driven .skills-sticky{align-items:center;height:100svh;padding-block:90px 24px;display:flex;position:sticky;top:0}#skills.is-scroll-driven .section-container{width:100%}@media (width<=600px){#skills{padding-block:12px 48px}#skills .skills-sticky{padding-top:32px}#skills .highlight-item{flex-basis:230px;width:230px}#skills .skills-intro .section-title{font-size:2rem}}@media (prefers-reduced-motion:reduce){#skills .skills-viewport{scroll-behavior:auto}#skills .about-highlights{--skill-scene-progress:1}#skills .highlight-item{--skill-progress:1;--skill-icon-progress:1;--skill-text-progress:1}}.stf{--stf-flood-in:.4s;--stf-flood-out:.28s;--stf-rule:1px;--stf-ease-flood:cubic-bezier(.76, 0, .24, 1);--stf-ease-out:cubic-bezier(.22, 1, .36, 1);--stf-gutter:clamp(16px, 4vw, 48px);--p:var(--bg-primary);--k:var(--accent);--o:#fff;box-sizing:border-box;background:var(--p);width:100%;color:var(--text-primary);-webkit-font-smoothing:antialiased;border-top:1px solid var(--border);padding:clamp(56px,8vw,100px) 0 clamp(48px,6vw,84px);font-family:inherit;position:relative}[data-theme=light] .stf{--p:var(--bg-primary);--k:var(--accent);--o:#fff}.stf *,.stf :before,.stf :after{box-sizing:border-box}.stf-wrap{max-width:1200px;padding:0 var(--stf-gutter);margin:0 auto}.stf-title{letter-spacing:-.045em;text-transform:uppercase;color:var(--k);margin:0 0 16px;font-size:clamp(38px,9vw,92px);font-weight:900;line-height:.92}.stf-line{margin-top:-.06em;padding-top:.06em;display:block;overflow:hidden}.stf-word{white-space:nowrap;display:inline-block}.stf-ch{transform:translateY(var(--stf-cut,.18em));transition:transform .72s var(--stf-ease-out);transition-delay:min(calc(var(--i) * 22ms), .36s);display:inline-block}.stf[data-intro=pending] .stf-ch{transition:none;transform:translateY(104%)}@media (hover:hover) and (pointer:fine){.stf-title[data-slit=true]:hover .stf-ch{transition-duration:.38s;transition-delay:min(calc(var(--i) * 12ms), .18s);transform:translateY(0)}}.stf-meta{grid-template-columns:minmax(0,1fr);align-items:end;gap:24px;margin:clamp(24px,3.5vw,44px) 0 clamp(20px,2.5vw,32px);display:grid}@media (width>=760px){.stf-meta{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:48px}}.stf-intro{max-width:36ch;color:var(--text-secondary);margin:0;font-size:clamp(16px,1.35vw,19px);line-height:1.5}.stf-search{position:relative}.stf-search label{letter-spacing:.02em;color:var(--text-muted);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.stf-field{border-bottom:2px solid var(--border);align-items:center;transition:border-color .2s;display:flex;position:relative}.stf-field svg{width:20px;height:20px;color:var(--k);flex:none;margin-right:10px}.stf-field input{appearance:none;min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:10px 0 12px;font-size:clamp(16px,1.5vw,20px);font-weight:500}.stf-field input::placeholder{color:var(--text-muted);opacity:.65}.stf-field:focus-within{border-color:var(--k);box-shadow:0 1px 0 var(--k)}.stf-clear{appearance:none;color:var(--text-secondary);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;flex:none;padding:8px 0 8px 12px;font-size:14px;font-weight:600;text-decoration:underline}.stf-clear:hover{color:var(--k)}.stf-count{color:var(--text-muted);font-variant-numeric:tabular-nums;min-height:1.4em;margin-top:8px;font-size:13px}.stf-chips{flex-wrap:wrap;gap:8px;margin:0 0 clamp(20px,2.4vw,32px);padding:0;list-style:none;display:flex}.stf-chip{appearance:none;border:1.5px solid var(--border);min-height:38px;color:var(--text-secondary);font:inherit;cursor:pointer;background:#ffffff05;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;transition:all .16s;display:inline-flex}.stf-chip small{opacity:.75;font-variant-numeric:tabular-nums;font-size:12px}.stf-chip[aria-pressed=true]{background:var(--k);color:var(--o);border-color:var(--k)}.stf-chip:hover:not([aria-pressed=true]){border-color:var(--k);color:var(--text-primary)}.stf-list{border-bottom:1px solid var(--border);margin:0;padding:0;list-style:none}.stf-item{border-top:1px solid var(--border);position:relative}.stf-fill{inset:-1px calc(var(--stf-gutter) * -1) 0;background:var(--k);clip-path:inset(0 100% 0 0);pointer-events:none;position:absolute}.stf-item[data-state=open] .stf-fill{clip-path:inset(0);transition:clip-path var(--stf-flood-in) var(--stf-ease-flood)}.stf-item[data-state=closing] .stf-fill{clip-path:inset(0 0 0 100%);transition:clip-path var(--stf-flood-out) var(--stf-ease-flood)}.stf-h{font:inherit;margin:0}.stf-btn{appearance:none;width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;display:block;position:relative}.stf-btn:focus-visible{outline:2px solid var(--k);outline-offset:4px}.stf-row{letter-spacing:-.02em;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:60px;padding:clamp(16px,2vw,24px) 0;font-size:clamp(18px,2vw,26px);font-weight:700;line-height:1.2;display:grid}.stf-row--inv{top:0;bottom:0;left:calc(var(--stf-gutter) * -1);right:calc(var(--stf-gutter) * -1);padding-left:var(--stf-gutter);padding-right:var(--stf-gutter);color:var(--o);clip-path:inset(0 100% 0 0);pointer-events:none;position:absolute}.stf-item[data-state=open] .stf-row--inv{clip-path:inset(0);transition:clip-path var(--stf-flood-in) var(--stf-ease-flood)}.stf-item[data-state=closing] .stf-row--inv{clip-path:inset(0 0 0 100%);transition:clip-path var(--stf-flood-out) var(--stf-ease-flood)}.stf-label{transition:transform .24s var(--stf-ease-out);display:block}.stf-cell{place-items:center;width:clamp(38px,3.5vw,48px);height:clamp(38px,3.5vw,48px);display:grid;position:relative}.stf-plus{width:clamp(20px,2vw,26px);height:clamp(20px,2vw,26px);transition:transform .28s var(--stf-ease-out), color .16s ease;stroke:currentColor;display:block;position:relative}.stf-item[data-state=open] .stf-plus{transition-duration:var(--stf-flood-in);transform:rotate(135deg)}@media (hover:hover) and (pointer:fine){.stf-btn:hover .stf-label{transform:translate(.25em)}.stf-item[data-state=closed] .stf-btn:hover .stf-plus{color:var(--k)}}.stf-mark{background:var(--k);color:var(--o);border-radius:2px;padding:0 3px}.stf-row--inv .stf-mark{background:var(--o);color:var(--k)}.stf-panel{transition:grid-template-rows .24s var(--stf-ease-out);grid-template-rows:0fr;display:grid;position:relative}.stf-item[data-state=open] .stf-panel{transition:grid-template-rows .36s var(--stf-ease-out);grid-template-rows:1fr}.stf-panel-in{min-height:0;overflow:hidden}.stf-item[data-state=closed] .stf-panel-in{visibility:hidden}.stf-answer{color:var(--o);grid-template-columns:minmax(0,1fr);gap:16px;padding:0 0 clamp(20px,2.5vw,36px);display:grid}.stf-text{max-width:64ch;color:var(--o);opacity:.92;font-size:clamp(15px,1.25vw,18px);font-weight:400;line-height:1.6}.stf-text p{margin:0 0 .8em}.stf-text p:last-child{margin-bottom:0}.stf-text a{color:inherit;text-underline-offset:3px;text-decoration:underline}.stf-tools{order:1;align-items:center;gap:14px;font-size:13px;font-weight:600;display:flex}.stf-tag{border:1px solid var(--o);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:12px}.stf-copy{appearance:none;color:var(--o);font:inherit;text-underline-offset:3px;cursor:pointer;opacity:.85;background:0 0;border:0;padding:6px 0;font-size:13px;text-decoration:underline;transition:opacity .2s}.stf-copy:hover{opacity:1}@media (width>=760px){.stf-answer{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);column-gap:48px}.stf-text,.stf-tools{grid-column:2}}.stf-empty{border-top:1px solid var(--border);text-align:center;padding:clamp(24px,4vw,48px) 0}.stf-empty p{margin:0 0 12px;font-size:clamp(18px,2vw,24px);font-weight:700}.stf-contact{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 32px;margin-top:clamp(36px,5vw,64px);padding-top:clamp(24px,3vw,40px);display:flex}.stf-contact p{margin:0;font-size:clamp(20px,2.2vw,32px);font-weight:800}.stf-cta{background:var(--k);color:var(--o);border-radius:999px;align-items:center;gap:10px;padding:12px 24px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.stf-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #f078354d}@media (prefers-reduced-motion:reduce){.stf-ch,.stf[data-intro=pending] .stf-ch{transform:translateY(var(--stf-cut,.18em));transition:none!important}.stf-fill,.stf-row--inv,.stf-panel,.stf-plus,.stf-label{transition:none!important}}
