button.svelte-12i6kpp{-webkit-tap-highlight-color:rgba(var(--color-primary),.5);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;outline:none;color:var(--color-text);padding:0;margin:0;display:flex;touch-action:manipulation}.theme-icon{width:1.25rem;height:1.2rem;margin:0;padding:0}@media (hover: hover){button.svelte-12i6kpp:hover{color:var(--color-accent)}}.desktop-header.svelte-1elxaub,.mobile-header.svelte-1elxaub{position:fixed;display:flex;z-index:5;transition:var(--transition-fast)}.desktop-header.svelte-1elxaub{top:0;justify-content:center;width:100vw}.mobile-header.svelte-1elxaub{bottom:1rem;justify-content:flex-end;align-items:center;width:90vw;border-radius:8px;height:3.5rem;border:1px solid var(--color-border);box-shadow:var(--box-shadow)}.mobile-header.svelte-1elxaub .glass-scrolled:where(.svelte-1elxaub){border-radius:6px}.header-bg.svelte-1elxaub{position:absolute;top:0;left:0;width:100%;height:100%;background-color:transparent;transition:var(--transition-fast);z-index:2}.mobile-header.svelte-1elxaub .header-bg:where(.svelte-1elxaub){border-radius:6px}.header-content.svelte-1elxaub{display:flex;justify-content:flex-end;align-items:center;max-width:100vw;width:980px;padding:.5rem 0 .75rem;z-index:3}.desktop-nav.svelte-1elxaub{top:0;padding:.5rem 1rem .5rem 0}.desktop-nav.svelte-1elxaub ul:where(.svelte-1elxaub),.mobile-nav.svelte-1elxaub ul:where(.svelte-1elxaub){list-style:none;padding:0;margin:0;display:flex}.desktop-nav.svelte-1elxaub ul:where(.svelte-1elxaub){justify-content:center;align-items:center;padding:0;gap:1.5rem}.desktop-nav.svelte-1elxaub ul:where(.svelte-1elxaub) li:where(.svelte-1elxaub){height:1.2rem}.mobile-nav.svelte-1elxaub{height:1.3rem;transition:opacity .1s ease-out;padding:0 1rem}.mobile-nav.svelte-1elxaub ul:where(.svelte-1elxaub){flex-direction:row;justify-content:flex-start;align-items:center;gap:1em;height:1.3rem}@media (max-width: 768px){.header-content.svelte-1elxaub{padding:.75rem 1rem .75rem 0}.desktop-nav.svelte-1elxaub{display:none}}li[aria-current=page].svelte-1elxaub a:where(.svelte-1elxaub){color:var(--color-accent)}li.svelte-1elxaub{position:relative}li.svelte-1elxaub .dot-two:where(.svelte-1elxaub){position:absolute;bottom:-30%;transform:translateY(-50%);width:1rem;height:.1rem;background-color:var(--color-accent);border-radius:8px;transition:var(--transition-fast)}li.svelte-1elxaub a:where(.svelte-1elxaub):hover,li.svelte-1elxaub a:where(.svelte-1elxaub):focus{color:var(--color-accent)}nav.svelte-1elxaub a:where(.svelte-1elxaub){display:flex;height:100%;align-items:center;font-weight:400;text-decoration:none;transition:var(--transition-fast);font-family:var(--font-mono);color:var(--color-text);font-size:1rem;text-transform:uppercase}.glass-scrolled.svelte-1elxaub{background-color:var(--color-background);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--header-box-shadow);transition:var(--transition-fast)}@font-face{font-family:Nothing;src:url(./nothing-font.Co5tUeJ-.ttf)}:root{--font-serif: "Nothing", "IBM Plex Serif", serif;--font-mono: "Nothing", "Sono", monospace;--font-sans-serif: "Inclusive Sans", "Nunito Sans", "Plus Jakarta Sans", sans-serif;--color-primary: #1d3557;--color-secondary: #a73665;--color-accent: #2a4c7d;--color-background: #e9eaed;--color-accordion-content: #ececec;--color-border: rgba(29, 53, 87, .3);--color-text: #0c0f11;--color-arrow: #1d3557;--selection-color: #eceff4;--button-bg: var(--color-primary);--button-hover-bg: var(--color-secondary);--button-text: var(--color-background);--background-gradient: linear-gradient( 180deg, #f0f3f5 -200%, var(--color-background) 0%, #f0f3f5 500% );--background-brightness: 120%;--background-saturation: 80%;--accordion-filter: brightness(98%);--skeleton-gradient: linear-gradient( 90deg, var(--color-background) 25%, #fff 50%, var(--color-background) 75% );--glass-bg: rgba(233, 234, 237, .4);--glass-blur: blur(6px);--box-shadow: rgba(9, 30, 66, .25) 0 4px 8px -2px, rgba(9, 30, 66, .08) 0 0 0 1px;--header-box-shadow: var(--box-shadow);--radius-window: 6px;--radius-control: 8px;--transition-fast: all .1s linear;--transition-slow: all .4s linear}[data-theme=dark]{--color-primary: rgba(233, 234, 237, .8);--color-secondary: #ea92ab;--color-accent: #a5c5e9;--color-background: #151617;--color-accordion-content: #242628;--color-border: rgba(236, 239, 244, .3);--color-text: rgba(236, 239, 244, .9);--color-arrow: #a5c5e9;--selection-color: #151617;--button-bg: var(--color-accent);--button-hover-bg: var(--color-secondary);--button-text: var(--color-background);--background-gradient: linear-gradient(180deg, #282828 -200%, #151617 0%, #282828 200%);--background-brightness: 30%;--background-saturation: 60%;--accordion-filter: brightness(95%);--skeleton-gradient: linear-gradient( 90deg, rgba(32, 32, 32, .8) 25%, #0c0f11 50%, rgba(32, 32, 32, .8) 75% );--glass-bg: rgba(18, 19, 21, .6);--glass-blur: blur(8px);--box-shadow: rgba(0, 0, 0, .6) 0 4px 8px -2px, rgba(255, 255, 255, .1) 0 0 0 1px;--header-box-shadow: var(--box-shadow)}html{background-color:var(--color-background);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%}body{box-sizing:border-box;margin:0;overflow-x:hidden;color:var(--color-text);background:var(--color-background);font-family:var(--font-sans-serif);scroll-behavior:smooth;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:var(--transition-fast)}[data-theme=dark] html,[data-theme=dark] body{background:var(--color-background)}section{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;flex-wrap:wrap;width:100%;font-family:var(--font-sans-serif);z-index:1}a{color:var(--color-primary);text-decoration:none}a:focus{color:var(--color-accent);outline:none}p{margin:1rem 0;color:var(--color-text);font-size:1.1rem;font-weight:400;text-indent:0}h1,h2{margin:0 0 1rem;color:var(--color-primary)!important;font-family:var(--font-serif);font-style:normal;text-transform:uppercase}h1{font-size:2.8rem;font-weight:500}h2{font-size:calc(2.8rem / 1.61803);font-weight:400}[data-theme=dark] h1,[data-theme=dark] h2{color:var(--color-accent)!important}::selection{background:var(--color-secondary);color:var(--selection-color)}::-moz-selection{background:var(--color-secondary);color:var(--selection-color)}.glass{background-color:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:var(--transition-fast)}.blue-border{border:1px solid var(--color-border);transition:var(--transition-fast)}.prevent-select{-webkit-user-select:none;-ms-user-select:none;user-select:none}.visually-hidden{position:absolute;width:1px;height:auto;margin:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.flex-start-col,.flex-start-row{display:flex;justify-content:flex-start;flex-wrap:wrap;width:100%;margin:0}.flex-start-col{flex-direction:column}.flex-start-row{flex-direction:row}.gap-half{gap:.5em}.gap-1{gap:1em}.gap-1-5{gap:1.5em}.gap-2{gap:2em}.word-row{display:block}.landing-intro{display:flex;flex-wrap:wrap;text-indent:0}.fade-start{opacity:0}.fade-muted{opacity:.4}.copy-full{width:100%;text-indent:0}.emphasize{color:var(--color-primary);font-weight:600;text-decoration:underline}[data-theme=dark] .emphasize{color:var(--color-text)}.justify{text-align:start;text-indent:0;line-height:1.8em;transition:var(--transition-fast)!important}.underline:after{position:relative;display:block;width:0;height:2px;background-color:var(--color-accent);content:"";transition:width .6s ease-in-out}.fancy-underline{min-width:0;background-image:linear-gradient(to bottom,#0d1e4c00 0,#0d1e4c00 66%,#0d1e4c4d 66%,#0d1e4c4d 85%,#0d1e4c00 85%,#0d1e4c00)}[data-theme=dark] .fancy-underline{background-image:linear-gradient(to bottom,#eceff400 0,#eceff400 66%,#eceff433 66%,#eceff433 85%,#eceff400 85%,#eceff400)}.separator-vertical{display:flex;align-items:center;justify-content:center;width:1.5px;height:100%;background-color:var(--color-primary);opacity:1}.top-bar{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:20px;padding:1em;border-bottom:0;border-radius:var(--radius-window) var(--radius-window) 0 0;font-family:var(--font-mono);text-transform:uppercase}.top-bar p,.welcome-text p{color:var(--color-primary)}.window-buttons-container,.bar-spacer{width:5em}.window-buttons-container{display:flex;align-items:center;gap:8px}.window-button{width:12px;height:12px;border:1px solid var(--color-text);border-radius:50%}.close{background-color:var(--color-primary)}.profile-card{width:800px;max-width:90vw;margin-bottom:3rem;border-radius:var(--radius-window);box-shadow:var(--box-shadow)}.window-body,.window-divider{border-top:1px solid var(--color-border)}.welcome-container{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;box-sizing:border-box;width:100%;padding:2rem;border-radius:0 0 var(--radius-window) var(--radius-window)}.welcome-container *{color:var(--color-primary)}.image-container{width:260px}.welcome-container img{width:100%;height:100%;border-radius:var(--radius-window)}.image-outline{outline:2px solid var(--color-border);outline-offset:0}.welcome-text{display:flex;flex:1 1 50%;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem;max-width:90vw;margin-left:2rem;text-align:left;font-size:1rem}.welcome-text h2{margin:0;padding:0;font-weight:500}.error-welcome-text{margin:0 2rem 2rem}.button-container{display:flex;flex-wrap:wrap}.button-style-one,.button-link{position:relative;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;overflow:hidden;border:1.5px solid var(--color-primary);border-radius:var(--radius-control);box-shadow:var(--box-shadow);color:var(--color-primary);font-family:var(--font-mono);font-size:1rem;text-transform:uppercase;outline-offset:2px;transition:color .1s ease,background-color .1s ease,border-color .1s ease}.button-style-one *,.button-link *{color:var(--color-primary)}.button-style-one .separator-vertical,.button-link .separator-vertical{background-color:var(--color-primary)}.button-icon{width:1.3rem;height:1.3rem;margin-bottom:.15rem}.brand{width:3rem;height:3rem}.arrow{position:relative;top:20%;display:block;width:3rem;height:3rem;margin:10rem 0 13rem;color:var(--color-arrow)!important;animation:smooth-bounce 3s cubic-bezier(.25,.1,.25,1) infinite}.accordion-container{width:600px;max-width:90vw;margin:2rem 0 0;padding:0;border-radius:var(--radius-window);background:var(--background-gradient);box-shadow:var(--box-shadow)}.accordion-item{overflow:hidden}.accordion-item.border-radius-bottom,.accordion-trigger.border-radius-bottom{border-bottom-right-radius:calc(var(--radius-window) - 1px);border-bottom-left-radius:calc(var(--radius-window) - 1px)}.accordion-item:not(:last-child) .accordion-content,.accordion-item:not(:last-child) .accordion-trigger{border-bottom:1px solid var(--color-border)}.accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:1rem 2rem .85rem;border:0;background:transparent;color:var(--color-text);text-align:left;font-weight:700;cursor:pointer;transition:background-color .1s linear}.accordion-trigger *{margin:0;padding:0;color:var(--color-primary)}[data-theme=dark] .accordion-trigger:not([aria-expanded=true]) *{color:var(--color-text)!important}.accordion-trigger[aria-expanded=true]{border:0;background:var(--color-primary);color:var(--button-text)!important}.accordion-trigger[aria-expanded=true] *{color:var(--button-text)!important}.accordion-trigger[aria-expanded=true] .separator-vertical{background-color:var(--button-text)!important}.accordion-content{padding:2rem;border:0;filter:var(--accordion-filter);transition:all .1s linear}.education-accordion .accordion-content{padding:.5rem 2rem}.accordion-label{display:flex;align-items:center;gap:.75rem;height:100%}.accordion-icon{width:1.4rem;height:1.4rem;margin-bottom:.15rem}.education-icon{width:1.5rem;height:1.5rem;margin-bottom:.25rem}.technology-item,.technology-item-no-hover{display:flex;align-items:center;gap:.75rem;color:var(--color-primary);font-family:var(--font-mono);font-size:1rem;font-weight:500}.technology-item{padding:0;border-radius:var(--radius-control);outline:0 dashed var(--color-accent);transition:color .3s ease}.technology-item-no-hover{padding:.3rem .6rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background-color:#f0f3f5b3;box-shadow:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.technology-item i,.technology-item-no-hover i{margin-bottom:.1rem;font-size:.9rem}.contact-links{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:1.5em;height:3rem}.contact-links a{display:flex;justify-content:center;font-size:100%;transform:scale(1);transition:transform .1s ease}.contact-links a:focus{color:var(--color-primary)}.connect-section{margin-bottom:2rem}.resume-note{width:100%;margin:3rem 0 1.5rem;text-indent:0;opacity:.4}.resume-button{margin-bottom:2em}.project-detail-main{gap:2rem}.project-actions{gap:calc(1em + 4px);margin:2rem 0 1rem}.project-tech-stack{margin:0 0 2rem}.project-tech-list{margin:-.5rem 0 0}.project-image-frame{position:relative}.projects-heading{align-items:flex-start;margin-bottom:2rem}.footer-note{padding:1rem 0 0}.footer-copyright{padding:0 0 1rem}.background-loading,.image-loading{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:var(--skeleton-gradient);background-size:200% 100%;animation:shimmer 1.5s infinite}.background-loading{z-index:-1}.image-loading{z-index:0;opacity:1;transition:opacity .3s ease}.background-loading.hidden,.image-loading.hidden{opacity:0;pointer-events:none}.fade-in-l{opacity:1!important;transform:translateZ(0)!important;transition:all .8s ease-in-out}.fade-in-text{display:inline;opacity:0;filter:blur(4px);animation:fade-in .8s var(--fade-delay, 0s) forwards cubic-bezier(.11,0,.5,0)}@media (hover: none){.underline:focus:after{width:100%}}@media (hover: hover){.underline:hover:after{width:100%}.button-style-one:hover,.button-style-one:focus,.button-link:hover,.button-link:focus{border-color:var(--button-hover-bg);background-color:var(--button-hover-bg);color:var(--button-text)!important}.button-style-one:hover *,.button-style-one:focus *,.button-link:hover *,.button-link:focus *{color:var(--button-text)}.button-style-one:hover .separator-vertical,.button-style-one:focus .separator-vertical,.button-link:hover .separator-vertical,.button-link:focus .separator-vertical{background-color:var(--button-text)}.accordion-trigger:hover{background:var(--color-primary)}.accordion-trigger:hover *{color:var(--button-text)!important}.accordion-trigger:hover .separator-vertical{background-color:var(--button-text)!important}[data-theme=dark] .accordion-trigger:not([aria-expanded=true]):hover *{color:var(--button-text)!important}.contact-links a:hover,.contact-links a:focus{color:var(--color-accent);transform:scale(1.2)}}@media (max-width: 883px){.welcome-container{padding:2rem}.image-container{width:200px}.welcome-text{flex-basis:100%;margin:2rem 0 0}.error-welcome-text{margin:0 2rem 0 0}.project-detail-main,.projects-heading{margin-top:2rem}.welcome-text p{margin:1rem 0}}@media (max-width: 562px){.image-container{width:160px}.top-bar p{font-size:.8em}.bar-spacer{width:3em}}@media (max-width: 426px){.top-bar p{display:none}}@keyframes smooth-bounce{0%{opacity:0;transform:translateY(-30px)}50%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(30px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fade-in{to{opacity:1;filter:blur(0)}}.app.svelte-12qhfyh{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:var(--background-gradient)}main.svelte-12qhfyh{flex:100%;display:flex;align-items:center;flex-direction:column;min-height:120vh;width:950px;max-width:90vw;margin:8rem 0}@media (max-width: 883px){main.svelte-12qhfyh{margin:3rem 0}footer.svelte-12qhfyh{margin-bottom:4.5rem}}footer.svelte-12qhfyh{position:relative;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:0;width:100%;border-bottom:1px solid var(--background-gradient)}footer.svelte-12qhfyh p:where(.svelte-12qhfyh){margin:0;font-size:.5em;opacity:.3}@media (min-width: 480px){footer.svelte-12qhfyh{padding:12px 0}}
