@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-scale-x: 1;--tw-scale-y: 1;--tw-scale-z: 1;--tw-rotate-x: rotateX(0);--tw-rotate-y: rotateY(0);--tw-rotate-z: rotateZ(0);--tw-skew-x: skewX(0);--tw-skew-y: skewY(0);--tw-space-y-reverse: 0;--tw-border-style: solid;--tw-gradient-position: initial;--tw-gradient-from: #0000;--tw-gradient-via: #0000;--tw-gradient-to: #0000;--tw-gradient-stops: initial;--tw-gradient-via-stops: initial;--tw-gradient-from-position: 0%;--tw-gradient-via-position: 50%;--tw-gradient-to-position: 100%;--tw-leading: initial;--tw-font-weight: initial;--tw-tracking: 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}}}@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(.936 .032 17.717);--color-red-200: oklch(.885 .062 18.334);--color-red-300: oklch(.808 .114 19.571);--color-red-800: oklch(.444 .177 26.899);--color-orange-100: oklch(.954 .038 75.164);--color-orange-200: oklch(.901 .076 70.697);--color-orange-300: oklch(.837 .128 66.29);--color-orange-800: oklch(.47 .157 37.304);--color-yellow-100: oklch(.973 .071 103.193);--color-yellow-200: oklch(.945 .129 101.54);--color-yellow-300: oklch(.905 .182 98.111);--color-yellow-800: oklch(.476 .114 61.907);--color-green-100: oklch(.962 .044 156.743);--color-green-200: oklch(.925 .084 155.995);--color-green-300: oklch(.871 .15 154.449);--color-green-800: oklch(.448 .119 151.328);--color-teal-100: oklch(.953 .051 180.801);--color-teal-200: oklch(.91 .096 180.426);--color-teal-300: oklch(.855 .138 181.071);--color-teal-800: oklch(.437 .078 188.216);--color-blue-100: oklch(.932 .032 255.585);--color-blue-200: oklch(.882 .059 254.128);--color-blue-300: oklch(.809 .105 251.813);--color-blue-800: oklch(.424 .199 265.638);--color-indigo-100: oklch(.93 .034 272.788);--color-indigo-200: oklch(.87 .065 274.039);--color-indigo-300: oklch(.785 .115 274.713);--color-indigo-800: oklch(.398 .195 277.366);--color-purple-50: oklch(.977 .014 308.299);--color-purple-100: oklch(.946 .033 307.174);--color-purple-200: oklch(.902 .063 306.703);--color-purple-300: oklch(.827 .119 306.383);--color-purple-400: oklch(.714 .203 305.504);--color-purple-500: oklch(.627 .265 303.9);--color-purple-600: oklch(.558 .288 302.321);--color-purple-700: oklch(.496 .265 301.924);--color-purple-800: oklch(.438 .218 303.724);--color-purple-900: oklch(.381 .176 304.987);--color-pink-50: oklch(.971 .014 343.198);--color-pink-100: oklch(.948 .028 342.258);--color-pink-200: oklch(.899 .061 343.231);--color-pink-300: oklch(.823 .12 346.018);--color-pink-400: oklch(.718 .202 349.761);--color-pink-500: oklch(.656 .241 354.308);--color-pink-600: oklch(.592 .249 .584);--color-pink-700: oklch(.525 .223 3.958);--color-pink-800: oklch(.459 .187 3.815);--color-pink-900: oklch(.408 .153 2.432);--color-slate-50: oklch(.984 .003 247.858);--color-slate-100: oklch(.968 .007 247.896);--color-slate-200: oklch(.929 .013 255.508);--color-slate-700: oklch(.372 .044 257.287);--color-gray-100: oklch(.967 .003 264.542);--color-gray-200: oklch(.928 .006 264.531);--color-gray-300: oklch(.872 .01 258.338);--color-gray-600: oklch(.446 .03 256.802);--color-gray-700: oklch(.373 .034 259.733);--color-gray-800: oklch(.278 .033 256.848);--color-gray-900: oklch(.21 .034 264.665);--color-black: #000;--color-white: #fff;--spacing: .25rem;--container-md: 28rem;--container-2xl: 42rem;--container-4xl: 56rem;--container-6xl: 72rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-xl: 1.25rem;--text-xl--line-height: calc(1.75 / 1.25);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--text-3xl: 1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl: 2.25rem;--text-4xl--line-height: calc(2.5 / 2.25);--text-5xl: 3rem;--text-5xl--line-height: 1;--text-6xl: 3.75rem;--text-6xl--line-height: 1;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--tracking-wide: .025em;--leading-tight: 1.25;--leading-relaxed: 1.625;--radius-2xl: 1rem;--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm: 8px;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-font-feature-settings: var(--font-sans--font-feature-settings);--default-font-variation-settings: var(--font-sans--font-variation-settings);--default-mono-font-family: var(--font-mono);--default-mono-font-feature-settings: var(--font-mono--font-feature-settings);--default-mono-font-variation-settings: var(--font-mono--font-variation-settings)}}@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}body{line-height:inherit}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;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;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}:-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}*{border-color:color-mix(in oklab,var(--color-gray-300) 68%,var(--color-purple-600) 32%);outline-color:color-mix(in oklab,var(--color-gray-300) 58%,var(--color-purple-600) 42%)}body{background-color:#fff;color:#0a0a0a}}@keyframes float{0%{transform:translateY(0) rotate(0) translate(0);opacity:.6}25%{transform:translateY(-30px) rotate(5deg) translate(10px);opacity:.85}50%{transform:translateY(-60px) rotate(-5deg) translate(-10px);opacity:1}75%{transform:translateY(-30px) rotate(3deg) translate(15px);opacity:.75}to{transform:translateY(0) rotate(0) translate(0);opacity:.6}}@keyframes drift{0%{transform:translate(0) translateY(0);opacity:.6}33%{transform:translate(30px) translateY(-20px);opacity:.9}66%{transform:translate(-20px) translateY(-40px);opacity:.8}to{transform:translate(0) translateY(0);opacity:.6}}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #3b82f64d}50%{box-shadow:0 0 20px #3b82f699}}.animate-float{animation-name:float;animation-iteration-count:infinite;animation-timing-function:ease-in-out}.animate-drift{animation-name:drift;animation-iteration-count:infinite;animation-timing-function:ease-in-out}.animate-gradient{animation:gradient-shift 8s ease infinite;background-size:200% 200%}.pulse-glow{animation:pulse-glow 2s ease-in-out infinite}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,#3b82f6,#6366f1);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(to bottom,#2563eb,#4f46e5)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background-color:#ffbee60f;background-image:linear-gradient(180deg,#ffbee60a,#ffbee614)}:root{--site-font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;--heading-font-family: var(--site-font-family);--text-color: #111827;--muted-color: #6b7280;--section-title-size: 2.25rem;--section-subtitle-size: 1.5rem;--hero-name-size: 3.75rem}html,body,#root{font-family:var(--site-font-family);color:var(--text-color)}.heading-hero{font-family:var(--heading-font-family);font-weight:700;font-size:var(--hero-name-size);line-height:1}.section-title{font-family:var(--heading-font-family);font-weight:700;font-size:var(--section-title-size)}.section-subtitle{font-size:var(--section-subtitle-size);color:#fff;margin-top:.5rem}.body-text{font-size:1rem;line-height:1.6;color:var(--text-color)}.measured-width{width:var(--measured-width)}.measured-center{margin:0 auto}.btn-hobby-tall{height:4.25rem}.polaroid-rotate{transform:rotate(var(--rotate))}.project-card-frame{padding:20px;box-shadow:0 0 12px #7c3aed38,0 6px 18px #7c3aed1a}.logo-gap{margin-top:var(--logo-gap)}.card-content-padding{padding-bottom:var(--content-padding-bottom)}.actions-overlay{position:absolute;left:20px;right:20px;bottom:var(--actions-bottom)}.more-projects-frame{box-shadow:0 0 12px #7c3aed38,0 6px 18px #7c3aed1a;display:flex;flex-direction:column}.more-projects-mobile-title{padding:18px 18px 8px}.ml-16-abs{margin-left:16px}.pointer-none{pointer-events:none}.hover-action-bottom{bottom:10px}.visually-hidden{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;visibility:hidden!important;pointer-events:none!important}.skill-legend-frame{box-shadow:0 0 12px #7c3aed33,0 6px 16px #7c3aed14}.skill-badge{padding:5px;box-sizing:border-box;white-space:normal;text-align:center;overflow-wrap:anywhere;word-break:break-word}.skill-badge-measure{padding:5px;box-sizing:border-box;white-space:normal}.caption-small{font-size:.82rem;color:#6b7280}button:focus-visible,a:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-4px)}@media(prefers-reduced-motion:reduce){.animate-float,.animate-gradient,.pulse-glow{animation:none}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{min-height:100vh;position:relative;z-index:30;overflow-x:hidden}.page-dim{filter:brightness(.95);transition:filter .3s ease}#emoji-root{position:absolute;inset:0;z-index:10;pointer-events:none}.hero-section{position:relative}.hero-overlay{position:absolute;inset:0;z-index:-100;background:linear-gradient(180deg,#f3f4f6,#f3f4f600 55%)}.hero-container{position:relative;z-index:20;min-height:100vh;padding:4rem 1.5rem;display:flex;flex-direction:column;justify-content:center}@media(min-width:768px){.hero-container{padding-top:5rem;padding-bottom:5rem}}.hero-inner{max-width:56rem;margin-left:auto;margin-right:auto;text-align:center;display:grid;gap:2rem;justify-items:center}.status-pill{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#dcfce7;color:#166534;border-radius:9999px;font-size:1.125rem;font-weight:600;border:1px solid #bbf7d0;max-width:100%;width:auto;white-space:normal;flex-wrap:wrap;text-align:center;justify-content:center;justify-self:center}@keyframes dot-flicker{0%,to{opacity:.95;transform:scale(1);box-shadow:0 0 #22c55e59}45%{opacity:.7;transform:scale(.92);box-shadow:0 0 6px 2px #22c55e40}55%{opacity:.85;transform:scale(1.05);box-shadow:0 0 10px 3px #22c55e59}}.status-dot{width:.75rem;height:.75rem;background:#22c55e;border-radius:9999px;box-shadow:0 1px 2px #0000000d;animation:dot-flicker 1.6s ease-in-out infinite;will-change:opacity,transform}.avatar-hero{border-radius:9999px;overflow:hidden;width:min(80vw,450px);height:min(80vw,450px)}.hero-name{font-size:3.75rem;line-height:1;font-weight:700;background:linear-gradient(to right,#000,#4c1d95,#831843);-webkit-background-clip:text;background-clip:text;color:transparent}@media(min-width:768px){.hero-name{font-size:3.75rem}}.hero-title{font-size:1.25rem;line-height:1.75rem;color:#000;font-weight:500}@media(min-width:768px){.hero-title{font-size:1.5rem;line-height:2rem}}.hero-subtitle{font-size:1.125rem;line-height:1.75rem;color:#374151;max-width:42rem;margin-left:auto;margin-right:auto}.cta-row{display:grid;grid-template-columns:1fr;gap:1rem;justify-items:center}.cta-row>*{width:100%;max-width:22rem}.cta-row a{width:100%}.cta-row .btn-email,.cta-row .btn-phone,.cta-row .btn-resume,.cta-row .btn-linkedin{width:100%;justify-content:center}.cta-group{display:grid;grid-template-columns:1fr;gap:1rem;width:100%}@media(min-width:640px){.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.cta-row>*{width:auto;max-width:none}.cta-row a,.cta-row .btn-email,.cta-row .btn-phone,.cta-row .btn-resume,.cta-row .btn-linkedin{width:auto}.cta-group{display:flex;flex-wrap:wrap;width:auto;gap:1rem}}.phone-group{display:flex;align-items:center;gap:1rem}.btn-email{background-color:#f43f5e;color:#fff;padding:.75rem 1.5rem;display:inline-flex;align-items:center;max-width:100%;white-space:normal;overflow-wrap:anywhere}.btn-email:hover{background-color:#e11d48}.btn-phone{background-color:#f472b6;color:#fff;padding:.75rem 1.5rem;display:inline-flex;align-items:center;max-width:100%;white-space:normal;overflow-wrap:anywhere}.btn-phone:hover{background-color:#fa59ac}.btn-resume{background-image:linear-gradient(to right,#db2777,#9333ea);color:#fff;max-width:100%;white-space:normal;overflow-wrap:anywhere}.btn-linkedin{background-color:#0077b5;color:#fff;display:inline-flex;align-items:center;padding:.75rem 1.5rem;max-width:100%;white-space:normal;overflow-wrap:anywhere}.projects-section{position:relative}.contact-section{position:relative;z-index:20;padding:8rem 1.5rem 16rem;background-image:linear-gradient(to right,#000,#4c1d95,#831843)}.contact-inner{max-width:64rem;margin-left:auto;margin-right:auto;text-align:center;display:grid;gap:2rem;color:#fff}.section-title{font-size:2.25rem;font-weight:700}.section-subtitle{font-size:1.5rem;margin-top:2rem;opacity:.95}.contact-grid{display:flex;flex-direction:column;align-items:center;gap:2rem;width:100%;margin-top:0}@media(min-width:640px){.contact-grid{flex-direction:row;justify-content:space-between}}.contact-left{font-size:1rem;color:#fff;text-align:center;width:100%;max-width:42rem;display:grid;gap:1.5rem;opacity:.95;margin-left:auto;margin-right:auto}.center-wrap{display:flex;justify-content:center}.site-footer{position:relative;z-index:20;padding:2rem 1.5rem;border-top:1px solid #d1d5db;background-color:#ffffffe6;backdrop-filter:blur(4px)}.footer-inner{max-width:56rem;margin-left:auto;margin-right:auto;text-align:center}.footer-text{color:#374151}.modal-dim{position:fixed;inset:0;z-index:40;background-color:#0000001f;transition:opacity .2s ease;pointer-events:none}.about-section{position:relative;min-height:100vh}.about-overlay{position:absolute;inset:0;z-index:-100;background:#651b70}.about-container{position:relative;z-index:20;padding:6rem 1.5rem;min-height:100vh;margin-bottom:0}@media(min-width:768px){.about-container{padding-top:8rem;padding-bottom:8rem;margin-bottom:0}}.about-top-spacer{height:4rem;min-height:4rem}.about-header{text-align:center;padding-top:.5rem;padding-bottom:1.5rem}.about-title{font-size:2.25rem;font-weight:700;background:linear-gradient(to right,#fff,#ddd6fe);-webkit-background-clip:text;background-clip:text;color:transparent}.about-subtitle{font-size:1.125rem;color:#e5e7eb;max-width:42rem;margin-left:auto;margin-right:auto}.about-grid-base{padding-bottom:1rem;position:relative;width:max-content;margin-left:auto;margin-right:auto}.about-cell.start{justify-self:end}.about-cell.end{justify-self:start}.about-cell.center{grid-column:1 / -1;justify-self:center}@media(min-width:600px){.about-grid-two-col{display:grid!important;grid-template-columns:auto auto!important;column-gap:12px!important;row-gap:3.25rem!important;padding-left:.5rem!important;padding-right:.5rem!important;justify-content:center!important}}.about-bottom-spacer{height:16rem;min-height:16rem}.hobby-wrap{position:relative;margin-bottom:3rem;flex-shrink:0}.hobby-active-geography{position:relative;z-index:60;overflow:visible}.hobby-active-geography>[data-slot=badge]{border-width:4px!important;border-color:#1e40af!important;box-shadow:0 6px 20px #1e40af59}.hobby-active-gaming{position:relative;z-index:60;overflow:visible}.hobby-active-gaming>[data-slot=badge]{border-width:4px!important;border-color:#14532d!important;box-shadow:0 6px 20px #14532d59}.hobby-active-fitness{position:relative;z-index:60;overflow:visible}.hobby-active-fitness>[data-slot=badge]{border-width:4px!important;border-color:#991b1b!important;box-shadow:0 6px 20px #991b1b59}.hobby-active-smart-home{position:relative;z-index:60;overflow:visible}.hobby-active-smart-home>[data-slot=badge]{border-width:4px!important;border-color:#0f766e!important;box-shadow:0 6px 20px #0f766e59}.hobby-active-education{position:relative;z-index:60;overflow:visible}.hobby-active-education>[data-slot=badge]{border-width:4px!important;border-color:#b45309!important;box-shadow:0 6px 20px #b4530959}.about-close{margin-left:auto;color:#6b7280;font-weight:700;font-size:1.125rem}.about-close:hover{color:#000}.hobby-popover-mobile{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:90vw;max-height:80vh;overflow-y:auto;background:#fffffff2;border-radius:.75rem;box-shadow:0 8px 32px #00000026;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hobby-popover-desktop{position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%);width:20rem;max-width:20rem;background:#fffffff2;border-radius:.75rem;box-shadow:0 8px 32px #00000026;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.glow-active{position:relative;box-shadow:0 0 0 2px #e9d5ff inset,0 0 24px #9333ea59,0 0 48px #ec489940}.glow-active:after{content:"";position:absolute;inset:-6px;border-radius:.9rem;pointer-events:none;background:radial-gradient(closest-side,rgba(147,51,234,.28),transparent 70%);filter:blur(10px);opacity:.9}.about-grid-wrap{position:relative;z-index:30}.about-polaroid{position:absolute;z-index:40;--polaroid-w: 261px;width:var(--polaroid-w);background:#fff;padding:.5rem .5rem .9rem;border-radius:.5rem;border:1px solid #e5e7eb;box-shadow:0 8px 18px #0000001f;transform:rotate(var(--rotate, 0deg));transition:transform .2s ease,box-shadow .2s ease;pointer-events:none}.polaroid-overlay{position:absolute;inset:0;z-index:35;pointer-events:none}.about-polaroid:hover{transform:rotate(0) translateY(-2px);box-shadow:0 10px 24px #00000024}.about-polaroid img{width:100%;height:228px;object-fit:contain;background:#fff;border-radius:.375rem}.about-polaroid figcaption{margin-top:.45rem;text-align:center;color:#6b7280;font-size:.82rem;font-weight:500;white-space:normal;word-break:break-word;overflow:visible;max-width:100%;line-height:1.2}.about-polaroid{display:block}.about-polaroid.left{left:calc(-1 * var(--polaroid-w) - 140px);right:auto}.about-polaroid.right{right:calc(-1 * var(--polaroid-w) - 140px);left:auto}.about-polaroid.left.bottom{left:calc(-1 * var(--polaroid-w) - 140px)}.about-polaroid.right.bottom{right:calc(-1 * var(--polaroid-w) - 140px)}.about-polaroid.left.top{left:calc(-1 * var(--polaroid-w) - 156px)}.about-polaroid.right.top{right:calc(-1 * var(--polaroid-w) - 156px)}.about-polaroid.top{top:-64px}.about-polaroid.bottom{bottom:-64px}@media(max-width:1023px){.about-polaroid{display:none}}@media(min-width:1280px){.about-polaroid.left{left:calc(-1 * var(--polaroid-w) - 160px)}.about-polaroid.right{right:calc(-1 * var(--polaroid-w) - 160px)}.about-polaroid.left.bottom{left:calc(-1 * var(--polaroid-w) - 158px)}.about-polaroid.right.bottom{right:calc(-1 * var(--polaroid-w) - 158px)}.about-polaroid.left.top{left:calc(-1 * var(--polaroid-w) - 176px)}.about-polaroid.right.top{right:calc(-1 * var(--polaroid-w) - 176px)}.about-polaroid.top{top:-80px}.about-polaroid.bottom{bottom:-80px}}@media(min-width:1536px){.about-polaroid.left{left:calc(-1 * var(--polaroid-w) - 184px)}.about-polaroid.right{right:calc(-1 * var(--polaroid-w) - 184px)}.about-polaroid.left.bottom{left:calc(-1 * var(--polaroid-w) - 180px)}.about-polaroid.right.bottom{right:calc(-1 * var(--polaroid-w) - 180px)}.about-polaroid.left.top{left:calc(-1 * var(--polaroid-w) - 200px)}.about-polaroid.right.top{right:calc(-1 * var(--polaroid-w) - 200px)}.about-polaroid.top{top:-96px}.about-polaroid.bottom{bottom:-96px}}.sidenav{position:fixed;right:1.5rem;top:50%;transform:translateY(-50%);z-index:50;display:none}@media(min-width:768px){.sidenav{display:block}}.sidenav-panel{position:relative;background-color:#ffffffe6;backdrop-filter:blur(4px);border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 10px 30px #0000001a;padding:.5rem}.sidenav-list{display:flex;flex-direction:column;gap:.25rem}.sidenav-button{position:relative;display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:.75rem;transition:all .3s ease}.sidenav-button-active{background-image:linear-gradient(to right,#ec4899,#9333ea);color:#fff;box-shadow:0 10px 20px #00000026}.sidenav-button-inactive{color:#4b5563}.sidenav-button-inactive:hover{background:#f3f4f6;color:#111827}.sidenav-icon{transition:transform .2s ease}.sidenav-icon-active{transform:scale(1.1)}.sidenav-button:hover .sidenav-icon-hover{transform:scale(1.05)}.sidenav-tooltip{position:absolute;right:100%;margin-right:.75rem;padding:.25rem .5rem;background:#111827;color:#fff;font-size:.75rem;border-radius:.25rem;white-space:nowrap;opacity:0;transition:opacity .2s ease;pointer-events:none}.sidenav-button:hover .sidenav-tooltip{opacity:1}.sidenav-indicator{position:absolute;left:-.25rem;top:50%;transform:translateY(-50%);width:.25rem;height:1.5rem;background:#fff;border-radius:9999px;box-shadow:0 1px 1px #00000014}.sidenav-dot-top{position:absolute;top:-.25rem;right:-.25rem;width:.75rem;height:.75rem;background-image:linear-gradient(to right,#ec4899,#9333ea);border-radius:9999px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sidenav-dot-bottom{position:absolute;bottom:-.25rem;left:-.25rem;width:.5rem;height:.5rem;background-image:linear-gradient(to right,#9333ea,#ec4899);border-radius:9999px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.5s}.emojis-overlay{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:10}.emoji-item{position:absolute;transition:opacity 1s ease;opacity:.9;transform:translate(-50%,-50%)}.emoji-icon{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center}.modal-root{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;inset:0;background:#00000026}.modal-halo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.modal-halo-inner{width:100%;max-width:48rem;border-radius:.75rem;margin-left:1rem;margin-right:1rem;box-shadow:0 24px 56px #0003;filter:blur(20px);opacity:.45}.modal-shadow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,#0000001f 60%,#0000000d 80%,#0000 90%);filter:blur(12px)}.image-modal-frame{position:relative;z-index:30;width:100%;max-width:48rem;margin-left:1rem;margin-right:1rem;border-radius:.75rem;box-shadow:0 25px 50px #00000040;background:#fff;outline:2px solid #d8b4fe}.image-stage{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;padding:1rem}@media(min-width:768px){.image-stage{padding-left:2rem;padding-right:2rem}}.image-desc{padding:1rem;border-top:2px solid #d8b4fe;background:#fff;width:100%}.video-stage{background:#fff;padding-left:1rem;padding-right:1rem}@media(min-width:768px){.video-stage{padding-left:2rem;padding-right:2rem}}.aspect-video-embed{position:relative;width:100%;padding-bottom:56.25%}.iframe-embed{position:absolute;top:0;left:0;width:100%;height:100%}.featured-section{position:relative;z-index:auto;padding:10rem 1.5rem 18rem;overflow-x:hidden}.featured-overlay{position:absolute;inset:0;z-index:-20;background:linear-gradient(180deg,#fff0,#ffbee65c,#ffbee6b8 12%,#ffbee6 20% 65%,#ffbee6e6 78%,#651b7080 86%,#651b70d9 95%,#651b70)}.featured-container{position:relative;z-index:20;max-width:72rem;margin-left:auto;margin-right:auto;display:grid;gap:1.5rem}.featured-spacer-top{height:18rem}.featured-title{font-size:2.25rem;font-weight:700;text-align:center}.featured-subtitle{font-size:1.875rem;font-weight:600;text-align:center}.featured-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:stretch}@media(min-width:1024px){.featured-grid{grid-template-columns:1fr 1fr}}.project-card-wrap{height:100%;padding:10px;border-radius:.75rem}.featured-spacer-bottom{height:20rem}@layer utilities{.\@container\/card-header{container:card-header / inline-size}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.-top-1{top:calc(var(--spacing) * -1)}.top-1\/2{top:50%}.-right-1{right:calc(var(--spacing) * -1)}.right-4{right:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.right-full{right:100%}.-bottom-1{bottom:calc(var(--spacing) * -1)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-full{bottom:100%}.-left-1{left:calc(var(--spacing) * -1)}.left-1\/2{left:50%}.left-4{left:calc(var(--spacing) * 4)}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.z-\[60\]{z-index:60}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2 / span 2}.row-start-1{grid-row-start:1}.mx-auto{margin-inline:auto}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-3{margin-right:calc(var(--spacing) * 3)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-\[16\/9\]{aspect-ratio:16 / 9}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing) * 1)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-80{width:calc(var(--spacing) * 80)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-md{max-width:var(--container-md)}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x: 110%;--tw-scale-y: 110%;--tw-scale-z: 110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}: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)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.625rem}.rounded-md{border-radius:.425rem}.rounded-xl{border-radius:1.025rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-blue-300{border-color:var(--color-blue-300)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-300{border-color:var(--color-green-300)}.border-indigo-300{border-color:var(--color-indigo-300)}.border-orange-300{border-color:var(--color-orange-300)}.border-pink-200{border-color:var(--color-pink-200)}.border-pink-300{border-color:var(--color-pink-300)}.border-pink-400{border-color:var(--color-pink-400)}.border-purple-200{border-color:var(--color-purple-200)}.border-purple-300{border-color:var(--color-purple-300)}.border-purple-400{border-color:var(--color-purple-400)}.border-red-300{border-color:var(--color-red-300)}.border-slate-200{border-color:var(--color-slate-200)}.border-teal-300{border-color:var(--color-teal-300)}.border-transparent{border-color:#0000}.border-yellow-300{border-color:var(--color-yellow-300)}.bg-\[\#0077B5\]{background-color:#0077b5}.bg-background{background-color:#fff}.bg-blue-100{background-color:var(--color-blue-100)}.bg-card{background-color:#fff}.bg-destructive{background-color:oklch(.577 .245 27.325)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-green-100{background-color:var(--color-green-100)}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-pink-100{background-color:var(--color-pink-100)}.bg-pink-500{background-color:var(--color-pink-500)}.bg-primary{background-color:#171717}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-100{background-color:var(--color-red-100)}.bg-secondary{background-color:#f5f5f5}.bg-slate-50{background-color:var(--color-slate-50)}.bg-teal-100{background-color:var(--color-teal-100)}.bg-white{background-color:var(--color-white)}.bg-white\/50{background-color:#ffffff80}@supports (color: color-mix(in lab,red,red)){.bg-white\/50{background-color:color-mix(in oklab,var(--color-white) 50%,transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color: color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white) 90%,transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color: color-mix(in lab,red,red)){.bg-white\/95{background-color:color-mix(in oklab,var(--color-white) 95%,transparent)}}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-gradient-to-br{--tw-gradient-position: to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position: to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position: to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black{--tw-gradient-from: var(--color-black);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-black\/60{--tw-gradient-from: #0009;--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}@supports (color: color-mix(in lab,red,red)){.from-black\/60{--tw-gradient-from: color-mix(in oklab, var(--color-black) 60%, transparent)}}.from-pink-500{--tw-gradient-from: var(--color-pink-500);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-pink-600{--tw-gradient-from: var(--color-pink-600);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-purple-500{--tw-gradient-from: var(--color-purple-500);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-white{--tw-gradient-from: var(--color-white);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-black\/20{--tw-gradient-via: #0003;--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-via-stops)}@supports (color: color-mix(in lab,red,red)){.via-black\/20{--tw-gradient-via: color-mix(in oklab, var(--color-black) 20%, transparent)}}.via-pink-50{--tw-gradient-via: var(--color-pink-50);--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-via-stops)}.via-purple-900{--tw-gradient-via: var(--color-purple-900);--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-via-stops)}.to-pink-500{--tw-gradient-to: var(--color-pink-500);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-pink-900{--tw-gradient-to: var(--color-pink-900);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-purple-100{--tw-gradient-to: var(--color-purple-100);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-purple-600{--tw-gradient-to: var(--color-purple-600);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-purple-900{--tw-gradient-to: var(--color-purple-900);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to: transparent;--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{background-clip:text}.object-cover{object-fit:cover}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading, var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading, var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading, var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading, var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading, var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.leading-none{--tw-leading: 1;line-height:1}.leading-relaxed{--tw-leading: var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading: var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight: var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight: var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking: var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.text-black{color:var(--color-black)}.text-blue-800{color:var(--color-blue-800)}.text-card-foreground,.text-foreground{color:#0a0a0a}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-green-800{color:var(--color-green-800)}.text-indigo-800{color:var(--color-indigo-800)}.text-muted-foreground{color:#737373}.text-orange-800{color:var(--color-orange-800)}.text-pink-500{color:var(--color-pink-500)}.text-pink-600{color:var(--color-pink-600)}.text-pink-800{color:var(--color-pink-800)}.text-primary{color:#171717}.text-primary-foreground{color:#fafafa}.text-purple-500{color:var(--color-purple-500)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-purple-800{color:var(--color-purple-800)}.text-red-800{color:var(--color-red-800)}.text-secondary-foreground{color:#171717}.text-slate-700{color:var(--color-slate-700)}.text-teal-800{color:var(--color-teal-800)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-800{color:var(--color-yellow-800)}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-90{opacity:.9}.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)}.shadow-sm{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px 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)}.shadow-xl{--tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px 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-2{--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + 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)}.ring-purple-500{--tw-ring-color: var(--color-purple-500)}.ring-offset-2{--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-blur-sm{--tw-backdrop-blur: blur(var(--blur-sm));-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-\[color\,box-shadow\]{transition-property:color,box-shadow;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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.delay-500{transition-delay:.5s}.duration-200{--tw-duration: .2s;transition-duration:.2s}.duration-300{--tw-duration: .3s;transition-duration:.3s}.duration-500{--tw-duration: .5s;transition-duration:.5s}.duration-1000{--tw-duration: 1s;transition-duration:1s}.delay-500{animation-delay:.5s}.outline-none{--tw-outline-style: none;outline-style:none}@media(hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x: 105%;--tw-scale-y: 105%;--tw-scale-z: 105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}@media(hover:hover){.group-hover\:text-pink-600:is(:where(.group):hover *){color:var(--color-pink-600)}}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}@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)}}@media(hover:hover){.hover\:border-pink-300:hover{border-color:var(--color-pink-300)}}@media(hover:hover){.hover\:bg-\[\#005885\]:hover{background-color:#005885}}@media(hover:hover){.hover\:bg-accent:hover{background-color:#f5f5f5}}@media(hover:hover){.hover\:bg-blue-200:hover{background-color:var(--color-blue-200)}}@media(hover:hover){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,oklch(.577 .245 27.325) 90%,transparent)}}@media(hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}}@media(hover:hover){.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}}@media(hover:hover){.hover\:bg-green-200:hover{background-color:var(--color-green-200)}}@media(hover:hover){.hover\:bg-indigo-200:hover{background-color:var(--color-indigo-200)}}@media(hover:hover){.hover\:bg-orange-200:hover{background-color:var(--color-orange-200)}}@media(hover:hover){.hover\:bg-pink-200:hover{background-color:var(--color-pink-200)}}@media(hover:hover){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,oklch(.205 0 0) 90%,transparent)}}@media(hover:hover){.hover\:bg-purple-50:hover{background-color:var(--color-purple-50)}}@media(hover:hover){.hover\:bg-purple-200:hover{background-color:var(--color-purple-200)}}@media(hover:hover){.hover\:bg-red-200:hover{background-color:var(--color-red-200)}}@media(hover:hover){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,oklch(.97 0 0) 80%,transparent)}}@media(hover:hover){.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}}@media(hover:hover){.hover\:bg-teal-200:hover{background-color:var(--color-teal-200)}}@media(hover:hover){.hover\:bg-white:hover{background-color:var(--color-white)}}@media(hover:hover){.hover\:bg-yellow-200:hover{background-color:var(--color-yellow-200)}}@media(hover:hover){.hover\:from-pink-700:hover{--tw-gradient-from: var(--color-pink-700);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}}@media(hover:hover){.hover\:to-purple-700:hover{--tw-gradient-to: var(--color-purple-700);--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}}@media(hover:hover){.hover\:text-accent-foreground:hover{color:#171717}}@media(hover:hover){.hover\:text-gray-900:hover{color:var(--color-gray-900)}}@media(hover:hover){.hover\:text-purple-800:hover{color:var(--color-purple-800)}}@media(hover:hover){.hover\:underline:hover{text-decoration-line:underline}}@media(hover:hover){.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(hover:hover){.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px 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)}}.focus-visible\:border-ring:focus-visible{border-color:#a1a1a1}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + 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)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color: color-mix(in oklab, oklch(.577 .245 27.325) 20%, transparent)}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color: color-mix(in oklab, oklch(.708 0 0) 50%, transparent)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:oklch(.577 .245 27.325)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color: color-mix(in oklab, oklch(.577 .245 27.325) 20%, transparent)}@media(width>=48rem){.md\:block{display:block}}@media(width>=48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(width>=48rem){.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height))}}@media(width>=48rem){.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading, var(--text-6xl--line-height))}}@media(width>=64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(width>=64rem){.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-input{border-color:#e5e5e5}}@media(prefers-color-scheme:dark){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,oklch(.577 .245 27.325) 60%,transparent)}}@media(prefers-color-scheme:dark){.dark\:bg-input\/30{background-color:color-mix(in oklab,oklch(.922 0 0) 30%,transparent)}}@media(prefers-color-scheme:dark){@media(hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,oklch(.97 0 0) 50%,transparent)}}}@media(prefers-color-scheme:dark){@media(hover:hover){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,oklch(.922 0 0) 50%,transparent)}}}@media(prefers-color-scheme:dark){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color: color-mix(in oklab, oklch(.577 .245 27.325) 40%, transparent)}}@media(prefers-color-scheme:dark){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color: color-mix(in oklab, oklch(.577 .245 27.325) 40%, transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}.\[\&\:last-child\]\:pb-6:last-child{padding-bottom:calc(var(--spacing) * 6)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:#f5f5f5}}@media(hover:hover){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,oklch(.577 .245 27.325) 90%,transparent)}}@media(hover:hover){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,oklch(.205 0 0) 90%,transparent)}}@media(hover:hover){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,oklch(.97 0 0) 90%,transparent)}}@media(hover:hover){a.\[a\&\]\:hover\:text-accent-foreground:hover{color:#171717}}@keyframes float{0%{opacity:.6;transform:translateY(0)rotate(0)translate(0)}25%{opacity:.85;transform:translateY(-30px)rotate(5deg)translate(10px)}50%{opacity:1;transform:translateY(-60px)rotate(-5deg)translate(-10px)}75%{opacity:.75;transform:translateY(-30px)rotate(3deg)translate(15px)}to{opacity:.6;transform:translateY(0)rotate(0)translate(0)}}@keyframes drift{0%{opacity:.6;transform:translate(0)translateY(0)}33%{opacity:.9;transform:translate(30px)translateY(-20px)}66%{opacity:.8;transform:translate(-20px)translateY(-40px)}to{opacity:.6;transform:translate(0)translateY(0)}}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #3b82f64d}50%{box-shadow:0 0 20px #3b82f699}}.animate-float{animation:ease-in-out infinite float}.animate-drift{animation:ease-in-out infinite drift}.animate-gradient{background-size:200% 200%;animation:8s infinite gradient-shift}.pulse-glow{animation:2s ease-in-out infinite pulse-glow}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:linear-gradient(#3b82f6,#6366f1);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#2563eb,#4f46e5)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-4px)}@supports not ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))){.backdrop-blur-sm{background-color:#ffffffe6}}@media print{.no-print{display:none!important}body{font-size:12pt;line-height:1.4}.print-break{page-break-before:always}}@media(prefers-color-scheme:dark){:root{--text-primary: #f8fafc;--text-secondary: #cbd5e1;--bg-primary: #0f172a;--bg-secondary: #1e293b}}@media(prefers-reduced-motion:reduce){.animate-float,.animate-gradient,.pulse-glow{animation:none}*{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-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;}@property --tw-rotate-x{syntax: "*"; inherits: false; initial-value: rotateX(0);}@property --tw-rotate-y{syntax: "*"; inherits: false; initial-value: rotateY(0);}@property --tw-rotate-z{syntax: "*"; inherits: false; initial-value: rotateZ(0);}@property --tw-skew-x{syntax: "*"; inherits: false; initial-value: skewX(0);}@property --tw-skew-y{syntax: "*"; inherits: false; initial-value: skewY(0);}@property --tw-space-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-gradient-position{syntax: "*"; inherits: false}@property --tw-gradient-from{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --tw-gradient-via{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --tw-gradient-to{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --tw-gradient-stops{syntax: "*"; inherits: false}@property --tw-gradient-via-stops{syntax: "*"; inherits: false}@property --tw-gradient-from-position{syntax: "<length-percentage>"; inherits: false; initial-value: 0%;}@property --tw-gradient-via-position{syntax: "<length-percentage>"; inherits: false; initial-value: 50%;}@property --tw-gradient-to-position{syntax: "<length-percentage>"; inherits: false; initial-value: 100%;}@property --tw-leading{syntax: "*"; inherits: false}@property --tw-font-weight{syntax: "*"; inherits: false}@property --tw-tracking{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}@keyframes pulse{50%{opacity:.5}}}
