/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.order-1{order:1}.order-2{order:2}.col-12{grid-column:12}.container{width:100%}.mx-auto{margin-inline:auto}.ms-auto{margin-inline-start:auto}.mt-auto{margin-top:auto}.flex-grow-1{flex-grow:1}.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}.list-disc{list-style-type:disc}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.text-center{text-align:center}.text-start{text-align:start}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@font-face{font-family:Jost;src:url(/jost_variable.ttf)format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}:root{--bg-900:#0b0f1a;--bg-800:#101626;--bg-700:#121a2d;--surface-800:#0f1526;--surface-700:#121a2d;--surface-600:#1b2440;--bs-body-bg:var(--bg-900);--bs-body-color:var(--text-200);--bs-border-color:#a28bff33;--bs-link-color:var(--text-100);--secondary:#1b2440;--secondary-light:#2a365e;--primary:#7c5cff;--primary-600:#6e49ff;--primary-500:#8a6cff;--primary-400:#a28bff;--accent:#00e5ff;--accent-400:#33ecff;--success:#1db954;--warning:#ffb020;--danger:#ff5470;--text-100:#fff;--text-200:#d5dbff;--text-300:#b3bef5;--muted:#89a1c1;--white:#fff;--gray-100:#0b0f1a;--elevation-1:0 8px 24px #02061799;--elevation-2:0 16px 40px #020617a6;--grid-overlay:radial-gradient(circle at 25px 25px,#7c5cff26 0,#7c5cff14 2px,transparent 0)0 0/50px 50px;--font-family-base:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}body{font-family:var(--font-family-base);color:var(--text-200);background:linear-gradient(180deg,var(--bg-900),var(--bg-800));background-attachment:fixed;line-height:1.6}body,html{max-width:100%;position:relative;overflow-x:hidden}section[id]{scroll-margin-top:90px}.lead,h1,h2,h3,h4,h5,h6,label,li,p{color:var(--text-100)}#spinner{opacity:0;visibility:hidden;z-index:99999;transition:opacity .5s ease-out,visibility 0s linear .5s}#spinner.show{visibility:visible;opacity:1;transition:opacity .5s ease-out,visibility linear}.text-primary-gradient{background:linear-gradient(135deg,var(--accent)0,var(--primary)70%);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:gradient-shift 3s ease-in-out infinite}.text-secondary-gradient{background:linear-gradient(135deg,var(--secondary)0,var(--secondary-light)50%,#666 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.bg-primary-gradient{background-color:#0000;background-image:radial-gradient(1200px 600px at 80% -20%,#00e5ff1a,#0000 60%),radial-gradient(1200px 600px at 10% 120%,#7c5cff1f,#0000 60%),linear-gradient(135deg,#7c5cffe6,#00e5ffb3);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.bg-secondary-gradient{background:linear-gradient(135deg,var(--secondary)0,var(--secondary-light)50%,#666 100%)}@keyframes gradient-shift{0%,to{background-position:0}50%{background-position:100%}}.btn-primary-gradient{background:linear-gradient(135deg,var(--primary)0,var(--accent)100%);color:var(--text-100);z-index:1;border:none;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 6px 22px #00e5ff2e,0 8px 30px #7c5cff2e}.btn-primary-gradient:hover{background:linear-gradient(135deg,var(--primary-600)0,var(--primary)100%);color:var(--text-100);transform:translateY(-2px);box-shadow:0 10px 26px #00e5ff3d,0 12px 36px #7c5cff3d}.btn-primary-gradient:active{transform:translateY(0)}.btn-secondary-gradient{background:linear-gradient(135deg,var(--surface-600)0,var(--surface-700)100%);color:var(--text-200);z-index:1;border:none;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 16px #02061780}.btn-secondary-gradient:hover{background:linear-gradient(135deg,var(--surface-700)0,var(--surface-800)100%);color:var(--text-100);transform:translateY(-2px);box-shadow:0 8px 22px #02061799}.navbar-toggler{color:var(--text-200)}.navbar-toggler .bi-list{color:currentColor;font-size:1.5rem}.navbar-light{-webkit-backdrop-filter:saturate(140%)blur(16px);backdrop-filter:saturate(140%)blur(16px);box-shadow:var(--elevation-1);border-bottom:1px solid #a28bff33;transition:all .3s;background:#0c1224f2!important}.navbar-collapse{opacity:0;max-height:0;transition:all .3s ease-in-out;overflow:hidden}.navbar-collapse.show{opacity:1;max-height:500px}@media (min-width:992px){.navbar-collapse{opacity:1!important;max-height:none!important;overflow:visible!important}}.navbar,.navbar.navbar-light.sticky-top,nav.navbar.sticky-top{will-change:transform;contain:layout style paint;width:100%;left:0;right:0;z-index:1100!important;position:sticky!important;top:0!important}.navbar+*{z-index:1;position:relative}.navbar-light .navbar-brand h1{text-shadow:0 2px 12px #00000040}.navbar-light .nav-link{text-shadow:0 1px 6px #0003}.navbar-light .navbar-nav .nav-link{color:var(--text-300);margin-left:0;margin-right:30px;padding:25px 0;font-size:1rem;font-weight:500;transition:all .3s;position:relative}.navbar-light .navbar-nav .nav-link:before{content:"";background:linear-gradient(90deg,var(--accent),var(--primary));border-radius:2px;width:0;height:3px;transition:all .3s;position:absolute;bottom:0;left:0}.navbar-light .navbar-nav .nav-link.active:before,.navbar-light .navbar-nav .nav-link:hover:before{width:100%}.navbar-light .navbar-nav .nav-link:hover{color:var(--text-100);transform:translateY(-1px)}.navbar-light .navbar-brand h1{color:var(--text-100);background:linear-gradient(135deg,var(--accent)0,var(--primary)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:2.5rem;font-weight:700}.navbar-toggler{border:none;padding:.25rem .5rem;transition:all .3s}.navbar-toggler:focus{box-shadow:none}.hero-header{background:radial-gradient(900px 500px at 20% -10%,#00e5ff1f,transparent 60%),radial-gradient(900px 500px at 100% 80%,#7c5cff1f,transparent 60%),linear-gradient(180deg,var(--bg-800)0,var(--bg-900)60%);align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-header:before{content:"";background:linear-gradient(180deg,#8a6cff14,#0000),var(--grid-overlay);opacity:1;position:absolute;inset:0}.hero-header .container{z-index:2;position:relative}.container-xxl{max-width:1320px;margin:0 auto;padding:0 15px}.section-dark{z-index:1;background:radial-gradient(1000px 500px at 10% -10%,#00e5ff0f,transparent 60%),radial-gradient(1000px 500px at 90% 120%,#7c5cff14,transparent 60%),linear-gradient(180deg,var(--bg-900),var(--surface-700));position:relative}.section-dark:after{content:"";background:var(--grid-overlay);opacity:.25;pointer-events:none;z-index:-1;position:absolute;inset:0}.section-darker{z-index:1;background:radial-gradient(1200px 600px at 80% 0,#7c5cff14,transparent 60%),linear-gradient(180deg,var(--surface-700),var(--bg-900));border-top:1px solid #a28bff1f;border-bottom:1px solid #a28bff1f;position:relative}.section-darker:after{content:"";background:var(--grid-overlay);opacity:.25;pointer-events:none;z-index:-1;position:absolute;inset:0}.image-frame{background:linear-gradient(135deg,#7c5cff99,#00e5ff99);border-radius:18px;padding:2px;position:relative;box-shadow:0 16px 48px #02061799}.image-inner{aspect-ratio:3/2;background:linear-gradient(#ffffff05,#ffffff03);border:1px solid #a28bff26;border-radius:16px;position:relative;overflow:hidden}.image-inner :where(img){object-fit:cover}.image-glow{filter:blur(24px);z-index:-1;background:radial-gradient(60% 60%,#7c5cff1f,#0000 70%);position:absolute;inset:-10%}.position-relative.bg-light.rounded,.position-relative.bg-white.rounded-3{box-shadow:var(--elevation-1);border:1px solid #a28bff1f;padding-top:clamp(3.75rem,6vw,5rem);transition:all .3s;overflow:visible;background:linear-gradient(#ffffff05,#ffffff03)!important;border-radius:16px!important}.position-relative.bg-light.rounded:hover,.position-relative.bg-white.rounded-3:hover{box-shadow:var(--elevation-2);transform:translateY(-6px)}.skill-logo{filter:brightness()saturate(1.2);width:50px;height:50px;transition:all .3s}.position-relative.bg-light.rounded:hover .skill-logo,.position-relative.bg-white.rounded-3:hover .skill-logo{transform:scale(1.1)}.d-inline-flex.align-items-center.justify-content-center.rounded-circle{border:1px solid #a28bff33;transition:all .3s;box-shadow:0 8px 24px #02061799}.position-relative.bg-light.rounded:hover .d-inline-flex.align-items-center.justify-content-center.rounded-circle,.position-relative.bg-white.rounded-3:hover .d-inline-flex.align-items-center.justify-content-center.rounded-circle{transform:scale(1.05);box-shadow:0 6px 20px #0000004d}.footer{background:radial-gradient(1000px 500px at 10% 120%,#7c5cff26,transparent 60%),linear-gradient(180deg,var(--surface-700),var(--bg-900));color:#fff;border-top:1px solid #a28bff1f;position:relative;overflow:hidden}.footer:before{content:"";background:var(--grid-overlay);opacity:.35;position:absolute;inset:0}.footer .container{z-index:2;position:relative}.footer .btn.btn-link{color:#fff;text-align:left;margin:0 0 8px;padding:0;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.footer .btn.btn-link:before{content:"";background:#fff;border-radius:1px;width:0;height:2px;transition:all .3s;position:absolute;bottom:-2px;left:0}.footer .btn.btn-link:hover{color:#fff;transform:translate(5px)}.footer .btn.btn-link:hover:before{width:100%}.form-card{box-shadow:var(--elevation-1);background:linear-gradient(#121a2dd9,#0f1526d9);border:1px solid #a28bff1f}.form-card:hover{box-shadow:var(--elevation-2)}.form-control,.form-select,textarea.form-control{background-color:var(--surface-600);color:var(--text-100);caret-color:var(--accent);border:1px solid #a28bff33;border-radius:10px;height:calc(3.5rem + 2px);padding:.75rem 1rem;transition:all .25s}textarea.form-control{resize:vertical;min-height:calc(3.5rem + 2px)}.form-control:focus,.form-select:focus,textarea.form-control:focus{border-color:var(--primary);background-color:var(--surface-700);outline:none;box-shadow:0 0 0 .25rem #7c5cff2e}.form-control:hover,.form-select:hover,textarea.form-control:hover{border-color:#a28bff4d}.form-control::placeholder,textarea.form-control::placeholder{color:var(--text-300);opacity:.7;opacity:.8;font-weight:400}.form-control:focus::placeholder,textarea.form-control:focus::placeholder{opacity:.6}input:-webkit-autofill,input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-100);-webkit-box-shadow:0 0 0 1000px var(--surface-700)inset;box-shadow:0 0 0 1000px var(--surface-700)inset;transition:background-color 5000s ease-in-out}input:-webkit-autofill:focus,textarea:-webkit-autofill{-webkit-text-fill-color:var(--text-100);-webkit-box-shadow:0 0 0 1000px var(--surface-700)inset;box-shadow:0 0 0 1000px var(--surface-700)inset;transition:background-color 5000s ease-in-out}textarea:-webkit-autofill:focus,textarea:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-100);-webkit-box-shadow:0 0 0 1000px var(--surface-700)inset;box-shadow:0 0 0 1000px var(--surface-700)inset;transition:background-color 5000s ease-in-out}select:-webkit-autofill,select:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-100);-webkit-box-shadow:0 0 0 1000px var(--surface-700)inset;box-shadow:0 0 0 1000px var(--surface-700)inset;transition:background-color 5000s ease-in-out}select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-100);-webkit-box-shadow:0 0 0 1000px var(--surface-700)inset;box-shadow:0 0 0 1000px var(--surface-700)inset;transition:background-color 5000s ease-in-out}@media (max-width:575.98px){.navbar-light .navbar-brand h1{font-size:1.75rem}.hero-header{min-height:80vh;padding-top:4rem;padding-bottom:4rem}.display-4{font-size:2rem}.display-5{font-size:1.75rem}.lead{font-size:1rem}.container-xxl{padding:0 10px}.navbar-light .navbar-nav .nav-link{text-align:center;border-bottom:1px solid #a28bff1a;margin-right:0;padding:12px 0}.navbar-light .navbar-nav .nav-link:last-child{border-bottom:none}.position-relative.bg-light.rounded,.position-relative.bg-white.rounded-3{padding-top:4.25rem}.navbar-collapse.show{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c1224fa;border:1px solid #a28bff33;border-radius:12px;margin-top:1rem;padding:1rem}.navbar-toggler{background:#0c1224cc;border:1px solid #a28bff4d;padding:.5rem}.navbar-toggler:hover{background:#a28bff1a}.navbar-toggler:focus{outline:none;box-shadow:0 0 0 .25rem #7c5cff40}}@media (min-width:576px) and (max-width:767.98px){.navbar-light .navbar-brand h1{font-size:2rem}.hero-header{min-height:85vh;padding-top:5rem;padding-bottom:5rem}.display-4{font-size:2.5rem}.display-5{font-size:2rem}.navbar-collapse.show{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c1224fa;border:1px solid #a28bff33;border-radius:12px;margin-top:1rem;padding:1rem}.navbar-light .navbar-nav .nav-link{text-align:center;border-bottom:1px solid #a28bff1a;padding:12px 0}.navbar-light .navbar-nav .nav-link:last-child{border-bottom:none}.navbar-toggler{background:#0c1224cc;border:1px solid #a28bff4d;padding:.5rem}.navbar-toggler:hover{background:#a28bff1a}}@media (min-width:768px) and (max-width:991.98px){.navbar-light .navbar-nav .nav-link{margin:0;padding:10px 0;font-size:1.1rem}.navbar-light .navbar-brand h1{font-size:2rem}.hero-header{min-height:90vh;padding-top:6rem;padding-bottom:6rem}.display-4{font-size:3rem}.display-5{font-size:2.5rem}}@media (min-width:992px) and (max-width:1199.98px){.container-xxl{max-width:1200px}.display-4{font-size:3.5rem}.display-5{font-size:3rem}}@media (min-width:1200px) and (max-width:1399.98px){.container-xxl{max-width:1400px}.display-4{font-size:4rem}.display-5{font-size:3.5rem}}@media (min-width:1400px){.container-xxl{max-width:1600px}.display-4{font-size:4.5rem}.display-5{font-size:4rem}.hero-header{min-height:90vh}.py-5{padding-top:6rem!important;padding-bottom:6rem!important}}@media (min-width:1600px){.container-xxl{max-width:1800px}.display-4{font-size:5rem}.display-5{font-size:4.5rem}.hero-header{min-height:100vh}.py-5{padding-top:8rem!important;padding-bottom:8rem!important}}@media (min-width:1920px){.container-xxl{max-width:2000px}.display-4{font-size:5.5rem}.display-5{font-size:5rem}.py-5{padding-top:10rem!important;padding-bottom:10rem!important}}.animated{animation-duration:1s;animation-fill-mode:both}.slideInDown{animation-name:slideInDown}.slideInLeft{animation-name:slideInLeft}.slideInRight{animation-name:slideInRight}.fadeInUp{animation-name:fadeInUp}@keyframes slideInDown{0%{visibility:visible;transform:translateY(-100%)}to{transform:translate(0)}}@keyframes slideInLeft{0%{visibility:visible;transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInRight{0%{visibility:visible;transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translate(0)}}.text-white{color:var(--white)!important}.bg-primary{background-color:var(--primary)!important}.bg-light{background-color:#ffffff05!important}.text-dark{color:var(--text-100)!important}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-900)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-600)}body,html{scrollbar-width:thin;scrollbar-color:var(--primary)var(--bg-900)}.h-100{height:100%!important}.shadow-sm{box-shadow:0 .125rem .25rem #00000013!important}.rounded-3{border-radius:.5rem!important}.fw-semibold{font-weight:600!important}.fs-5{font-size:1.25rem!important}.text-muted{color:var(--text-100)!important}.image-frame{width:100%;max-width:640px;margin-left:auto;margin-right:auto}@media (min-width:1400px){.image-frame{max-width:700px}}.small{font-size:.875rem!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}