:root{--scale-0: 1rem;--scale-1: 1.25rem;--scale-2: 1.563rem;--scale-3: 1.953rem;--scale-4: 2.441rem;--scale-5: 3.052rem;--spacing-xs: .5rem;--spacing-s: 1rem;--spacing-m: 1.5rem;--spacing-l: 2rem;--spacing-xl: 3rem;--spacing-xxl: 4rem;--color-white: #ffffff;--color-black: #000000;--color-gray-light: #f5f5f5;--color-gray-medium: #121212;--color-gray-dark: #212121;--color-blue-primary: #2457f5;--color-blue-light: #1185fe;--color-blue-dark: #006bff;--color-blue-navy: #2867b2;--color-blue-accent: #0b5cff;--color-red-primary: #ff0000;--color-red-secondary: #ff4500;--color-red-accent: #ed1c40;--color-green-primary: #1dbf73;--color-green-secondary: #05ce78;--color-green-accent: #06c755;--color-purple-primary: #5865f2;--color-purple-secondary: #9146ff;--color-purple-accent: #6151b2;--color-orange-primary: #f45800;--color-orange-secondary: #ff6719;--color-orange-accent: #fc5200;--color-yellow-primary: #ffdd00;--color-yellow-secondary: #ffe01b;--color-yellow-accent: #fffc00;--border-white: 1px solid var(--color-white);--border-black: 1px solid var(--color-black);--border-gray: 1px solid var(--color-gray-dark);--border-none: none;--button-text-default: var(--color-black);--button-background-default: transparent;--button-border-default: var(--border-none);--theme-background-light: var(--color-white);--theme-background-dark: var(--color-gray-medium);--theme-text-light: var(--color-black);--theme-text-dark: var(--color-white);--focus-color-light: #2457f5;--focus-color-dark: #4899f7;--focus-outline: 2px solid;--transition-fast: .2s ease;--transition-medium: .3s ease;--radius-small: .25rem;--radius-medium: .5rem;--radius-large: 1rem;--radius-full: 50%;--shadow-light: 0 2px 4px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 8px rgba(0, 0, 0, .15);--shadow-heavy: 0 8px 16px rgba(0, 0, 0, .2)}@media (prefers-color-scheme: dark){:root.theme-auto{--theme-background: var(--theme-background-dark);--theme-text: var(--theme-text-dark)}}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{list-style:none;margin:0;padding:0}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid #2457F5;outline-offset:2px}a{-webkit-touch-callout:none}:root{font-size:16px}.container{position:relative;width:100%;max-width:37.5rem;text-align:center;margin:0 auto;padding:3rem 1.25rem 0;box-sizing:border-box}.container-left{position:relative;width:100%;max-width:37.5rem;text-align:left;margin:0 auto;padding:0 1.25rem;box-sizing:border-box}.container-left p{margin-bottom:1rem}.column{position:center;width:100%;float:center;box-sizing:border-box}@media (min-width: 25rem){.container{width:85%;padding-left:0;padding-right:0}}@media (min-width: 34.375rem){.container{width:80%}.column,.columns,.column:first-child,.columns:first-child{margin-left:0}}body{margin:0;padding:0;background-color:#fff;color:#1a1a1a;font-family:Open Sans,system-ui;font-size:1.125rem;font-weight:400;line-height:1.6}h1{margin:0 0 .5rem;font-size:3rem;font-weight:800;line-height:1;letter-spacing:0;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.container p{margin:0 0 2rem}.avatar{width:8rem;height:8rem;border-radius:var(--radius-full);object-fit:cover;background-position:center;margin-bottom:var(--spacing-l);margin-left:auto;margin-right:auto;display:block}h1{margin:0 0 var(--spacing-m) 0;font-size:var(--scale-5);font-weight:800;line-height:1.1;letter-spacing:-.02em;word-wrap:break-word;overflow-wrap:break-word}.tagline{font-style:italic;margin:var(--spacing-xl) 0}body{font-size:var(--scale-1);line-height:1.6}.container p{margin:0 0 var(--spacing-xl) 0;font-size:var(--scale-1);line-height:1.6}.container{padding:var(--spacing-xl) var(--spacing-m) 0 var(--spacing-m);text-align:center}footer{display:flex;flex-direction:column;margin:var(--spacing-xxl) 0;p{font-size:calc(var(--scale-0) * .875)}p.acknowledgements{font-size:calc(var(--scale-0) * .8)}}@media (max-width: 34.375rem){h1{font-size:var(--scale-4)}body,.container p{font-size:var(--scale-0)}.avatar{margin-bottom:var(--spacing-m)}footer{margin:var(--spacing-xl) 0}}a{color:#2457f5;text-decoration:underline}a:hover{color:#083bda}.button,button{display:inline-flex;align-items:center;justify-content:center;width:18.75rem;min-height:3rem;padding:.75rem 1rem;font-size:1.125rem;font-weight:700;text-decoration:none;white-space:normal;background-color:var(--button-background, transparent);color:var(--button-text, #000000);border:var(--button-border, none);border-radius:.5rem;cursor:pointer;box-sizing:border-box;hyphens:auto;margin-bottom:1rem;text-align:center;line-height:1.3}.icon{width:1.25rem;height:1.25rem;margin-right:.5rem;flex-shrink:0}.avatar{width:8rem;height:8rem;object-fit:cover;background-position:center;margin-bottom:var(--spacing-l)}.avatar--none{border-radius:0%}.avatar--rounded{border-radius:var(--radius-full)}.avatar--soft{border-radius:var(--radius-medium)}:root.theme-dark{color-scheme:dark}:root.theme-dark :focus-visible{outline:2px solid #4899f7;outline-offset:2px}:root.theme-dark body{background-color:#121212;color:#fff}:root.theme-dark a:not(.button){color:#4899f7}:root.theme-dark a:not(.button):hover{color:#7ab8ff}:root.theme-auto{color-scheme:light dark}@media (prefers-color-scheme: dark){:root.theme-auto body{background-color:#121212;color:#fff}:root.theme-auto :focus-visible{outline:2px solid #4899f7;outline-offset:2px}:root.theme-auto a:not(.button){color:#4899f7}:root.theme-auto a:not(.button):hover{color:#7ab8ff}}.button:hover,button:hover{color:var(--button-text)}@media (max-width: 34.375rem){h1{font-size:2rem}body{font-size:1rem}}nav{margin:var(--spacing-l) 0;text-align:left}section{margin:var(--spacing-xl) 0;text-align:left}h2{font-size:var(--scale-3);font-weight:700;margin-bottom:var(--spacing-m)}h3{font-size:var(--scale-2);font-weight:600;margin:var(--spacing-l) 0 var(--spacing-s) 0}ul{list-style:none;padding:0;margin:0 0 var(--spacing-m) 0}ul li{margin-bottom:var(--spacing-xs)}@media (max-width: 34.375rem){h2{font-size:var(--scale-2)}h3{font-size:var(--scale-1)}section{margin:var(--spacing-l) 0}}@font-face{font-display:swap;font-family:Open Sans;font-style:normal;font-weight:400;src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.C0_ZgSxi.eot);src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.C0_ZgSxi.eot?#iefix) format("embedded-opentype"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.BtCV9HBQ.woff2) format("woff2"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.D_V4DUpS.woff) format("woff"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.W1fjhnlY.ttf) format("truetype"),url(/img/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.DiO590N6.svg#OpenSans) format("svg")}@font-face{font-display:swap;font-family:Open Sans;font-style:normal;font-weight:600;src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.P5h0bzWl.eot);src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.P5h0bzWl.eot?#iefix) format("embedded-opentype"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.BaohRB0R.woff2) format("woff2"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.C_QhU8qH.woff) format("woff"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.a7QR7aTP.ttf) format("truetype"),url(/img/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.DSUd6uUY.svg#OpenSans) format("svg")}@font-face{font-display:swap;font-family:Open Sans;font-style:normal;font-weight:700;src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.DT21r9-l.eot);src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.DT21r9-l.eot?#iefix) format("embedded-opentype"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.DGYewoMR.woff2) format("woff2"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.DZh9R9jS.woff) format("woff"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.Bixi_wTj.ttf) format("truetype"),url(/img/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.CLgwxQmA.svg#OpenSans) format("svg")}@font-face{font-display:swap;font-family:Open Sans;font-style:normal;font-weight:800;src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.CFp5u3rP.eot);src:url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.CFp5u3rP.eot?#iefix) format("embedded-opentype"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.CCSbhKxI.woff2) format("woff2"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.BJnziSwC.woff) format("woff"),url(/fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.CH91TxcY.ttf) format("truetype"),url(/img/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.DxtPctGB.svg#OpenSans) format("svg")}.button,button{color:var(--button-text, var(--button-text-default));background-color:var(--button-background, var(--button-background-default));border:var(--button-border, var(--button-border-default));transition:filter var(--transition-fast),transform var(--transition-fast)}.button:hover,button:hover{filter:brightness(90%);transform:translateY(-1px)}.icon{filter:var(--icon-filter, none)}.button.button-default{--button-text: var(--color-white);--button-background: var(--color-blue-primary);--button-border: var(--border-white)}.button-amazon{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-gray)}.button-amazon-music{--button-text: var(--color-black);--button-background: #25d1da}.button-appstore,.button-invites,.button-apple-music{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-apple-music-alt{--button-text: #ffffff;background-image:linear-gradient(to bottom,#fb5c74,#fa233b)}.button-apple-podcasts{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-apple-podcasts-alt{--button-text: var(--color-white);background-image:linear-gradient(to bottom,#f452ff,#832bc1)}.button-bandcamp{--button-text: var(--color-white);--button-background: #1d9fc3}.button-behance{--button-text: var(--color-white);--button-background: #0057ff;--button-border: var(--border-white)}.button-bluesky{--button-text: var(--color-white);--button-background: var(--color-blue-light)}.button-bluesky-alt{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-black)}.button-coffee{--button-text: var(--color-black);--button-background: var(--color-yellow-primary)}.button-cal{--button-text: var(--color-white);--button-background: #292929;--button-border: var(--border-white)}.button-calendly{--button-text: var(--color-white);--button-background: var(--color-blue-dark)}.button-cash-app{--button-text: #ffffff;background-image:linear-gradient(to bottom,#00d64b,#00c244)}.button-dev-to{--button-text: var(--color-black);--button-background: var(--color-gray-light);--button-border: var(--border-gray)}.button-discogs{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-black)}.button-discogs-alt{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-discord{--button-text: var(--color-white);--button-background: var(--color-purple-primary)}.button-dribbble{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-gray)}.button-etsy{--button-text: var(--color-white);--button-background: var(--color-orange-primary)}.button-faceb,.button-messenger{--button-text: var(--color-white);--button-background: #0866ff}.button-figma{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-fiverr{--button-text: var(--color-white);--button-background: var(--color-green-primary)}.button-flickr,.button-github{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-gitlab{--button-text: var(--color-white);--button-background: var(--color-purple-accent)}.button-gofundme{--button-text: var(--color-white);--button-background: #02a95c}.button-goodreads{--button-text: #333333;--button-background: #f3f1e6;--button-border: var(--border-gray)}.button-google-black,.button-playstore{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-google-scholar,.button-hashnode{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-gray)}.button-instagram{--button-text: #ffffff;background-image:linear-gradient(-135deg,#1400c8,#b900b4,#f50000)}.button-kick{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-kick-alt{--button-text: #000000;--button-background: #01e701}.button-kickstarter{--button-text: #ffffff;--button-background: #05ce78}.button-kit,.button-ko-fi{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-last-fm{--button-text: #ffffff;--button-background: #d51007}.button-letterboxd{--button-text: #ffffff;--button-background: #2c3440;--button-border: 1px solid #ffffff}.button-line{--button-text: #ffffff;--button-background: #06c755}.button-linked{--button-text: #ffffff;--button-background: #2867b2}.button-mailchimp{--button-text: #000000;--button-background: #ffe01b}.button-mastodon{--button-text: #ffffff;--button-background: #17063b;--button-border: 1px solid #ffffff}.button-matrix,.button-meetup{--button-text: #000000;--button-background: #ffffff;--button-border: 1px solid #000000}.button-meetup-alt{--button-text: #ffffff;--button-background: #ed1c40}.button-medium,.button-microsoft{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-notion{--button-text: #000000;--button-background: #ffffff;--button-border: 1px solid #212121}.button.button-obsidian{--button-text: #ffffff;--button-background: #262626;--button-border: 1px solid #ffffff}.button-onlyfans{--button-text: #ffffff;--button-background: #00aeef}.button-patreon{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-paypal{--button-text: #ffffff;--button-background: #002991;--button-border: 1px solid #ffffff}.button-pinterest,.button-product-hunt{--button-text: #000000;--button-background: #ffffff;--button-border: 1px solid #212121}.button-reddit{--button-text: var(--color-white);--button-background: var(--color-red-secondary)}.button-shop{--button-text: var(--color-white);--button-background: #5a31f4}.button-signal{--button-text: var(--color-white);--button-background: #3b45fd}.button-signal-alt{--button-text: #3b45fd;--button-background: #e3e8fe;--button-border: var(--border-black)}.button-slack{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-gray)}.button-snapchat{--button-text: var(--color-black);--button-background: var(--color-yellow-accent)}.button-soundcloud{--button-text: var(--color-white);--button-background: #ff5500}.button-spotify{--button-text: #191414;--button-background: #1db954}.button-spotify-alt{--button-text: var(--color-white);--button-background: #191414;--button-border: var(--border-white)}.button-square{--button-text: var(--color-white);--button-background: #006aff}.button-stack-overflow{--button-text: var(--color-black);--button-background: var(--color-white);--button-border: var(--border-black)}.button-steam{--button-text: #ffffff;background-image:linear-gradient(90deg,#08bbff,#2b75ff)}.button-steam-alt{--button-text: #ffffff;background-image:linear-gradient(90deg,#09172a,#072a57,#0c5085);--button-border: 1px solid #ffffff}.button-strava{--button-text: #ffffff;--button-background: #fc5200}.button-substack{--button-text: #ffffff;--button-background: #ff6719}.button-telegram{--button-text: #ffffff;--button-background: #3faee8}.button-threads{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-threema{--button-text: #000000;--button-background: #3fe669}.button-tiktok{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-trello{--button-text: #ffffff;--button-background: #0065ff}.button-tumb{--button-text: #ffffff;--button-background: #131313;--button-border: 1px solid #ffffff}.button-twitch{--button-text: #ffffff;--button-background: #9146ff}.button-unsplash{--button-text: #000000;--button-background: #ffffff;--button-border: 1px solid #212121}.button-venmo{--button-text: #ffffff;--button-background: #008cff}.button-vimeo{--button-text: #ffffff;--button-background: #1ab7ea}.button-vsco{--button-text: #ffffff;--button-background: #000000;--button-border: 1px solid #ffffff}.button-whatsapp{--button-text: #ffffff;--button-background: #455a64}.button-wordpress{--button-text: #ffffff;--button-background: #3858e9}.button-x{--button-text: var(--color-white);--button-background: var(--color-black);--button-border: var(--border-white)}.button-yt{--button-text: var(--color-white);--button-background: #282828;--button-border: var(--border-white)}.button-yt-alt{--button-text: var(--color-white);--button-background: var(--color-red-primary)}.button-zoom{--button-text: var(--color-white);--button-background: var(--color-blue-accent);--button-border: var(--border-white)}
