html{box-sizing:border-box}*,:before,:after{box-sizing:inherit}body,h1,h2,h3,h4,h5,h6,p,ol,ul{margin:0;padding:0;font-weight:400}ol,ul{list-style:none}img{max-width:100%;height:auto}body,html{text-align:center;width:100%;min-height:100%;margin:0;padding:0;font-family:Titillium Web,sans-serif;font-size:16px;font-style:normal;line-height:1}:root{--color-white:#fff;--color-black:#000;--color-black-t50:#00000014;--color-black-t100:#00000029;--color-black-t200:#0000003d;--color-black-t300:#00000052;--color-black-t400:#0006;--color-black-t500:#0000008f;--color-black-t600:#000000a3;--color-black-t700:#000000b8;--color-black-t800:#000c;--color-white-t50:#ffffff14;--color-white-t100:#ffffff29;--color-white-t200:#ffffff3d;--color-white-t300:#ffffff52;--color-white-t400:#fff6;--color-white-t500:#ffffff8f;--color-white-t600:#ffffffa3;--color-white-t700:#ffffffb8;--color-white-t800:#fffc;--color-grey-50:#f6f6f6;--color-grey-100:#e1e1e1;--color-grey-200:#bebebe;--color-grey-300:#9e9e9e;--color-grey-400:#7a7a7a;--color-grey-500:#676767;--color-grey-600:#494949;--color-grey-700:#2b2b2b;--color-grey-800:#191919;--color-pink-50:#fff3f7;--color-pink-100:#fdd5e1;--color-pink-200:#f8a1bd;--color-pink-300:#f86a9e;--color-pink-400:#c93e75;--color-pink-500:#b71a62;--color-pink-600:#860545;--color-pink-700:#520428;--color-pink-800:#340217;--color-red-50:#fff4ee;--color-red-100:#fed8cd;--color-red-200:#faa597;--color-red-300:#fa7269;--color-red-400:#cf4040;--color-red-500:#b62d2f;--color-red-600:#851a1d;--color-red-700:#510d0f;--color-red-800:#340700;--color-yellow-50:#fff5e8;--color-yellow-100:#fedab7;--color-yellow-200:#f2ae72;--color-yellow-300:#e68834;--color-yellow-400:#b26326;--color-yellow-500:#9d4f05;--color-yellow-600:#703703;--color-yellow-700:#432100;--color-yellow-800:#2b1100;--color-green-50:#f1faea;--color-green-100:#d1ebbd;--color-green-200:#9ed07c;--color-green-300:#6ab33f;--color-green-400:#438f19;--color-green-500:#387917;--color-green-600:#245707;--color-green-700:#173302;--color-green-800:#121d01;--color-teal-50:#e8faff;--color-teal-100:#b7ecf9;--color-teal-200:#79cde1;--color-teal-300:#06b1cd;--color-teal-400:#00899f;--color-teal-500:#177385;--color-teal-600:#055260;--color-teal-700:#02313a;--color-teal-800:#021d23;--color-blue-50:#f5f6ff;--color-blue-100:#dbdfff;--color-blue-200:#b1b8fe;--color-blue-300:#9196fd;--color-blue-400:#6a6cd0;--color-blue-500:#5855c5;--color-blue-600:#3d3a92;--color-blue-700:#23205d;--color-blue-800:#14123a;--layout-w-pc:1080px;--layout-w-tablet:768px;--layout-w-mobile:480px;--color-text-body:var(--color-grey-50);--color-text-title:var(--color-grey-50);--color-text-subtitle:var(--color-grey-50);--color-text-caption:var(--color-grey-100);--color-text-link:var(--color-grey-50);--color-text-link-hover:var(--color-grey-50);--color-text-link-active:var(--color-grey-50);--color-text-input:var(--color-white);--color-text-input-placeholder:var(--color-white);--color-text-button:var(--color-white);--color-info:var(--color-teal-500);--color-success:var(--color-green-500);--color-warning:var(--color-yellow-500);--color-error:var(--color-red-500);--font-size-base:20px;--font-size-10:.5rem;--font-size-12:.6rem;--font-size-14:.7rem;--font-size-16:.8rem;--font-size-18:.9rem;--font-size-20:1rem;--font-size-24:1.2rem;--font-size-32:1.6rem;--font-weight-normal:400;--font-weight-bold:700;--line-height-base:1.5}@font-face{font-family:PixelMplus12;font-style:normal;font-weight:400;font-display:block;src:url(/PixelMplus12-Regular.woff2),url(/PixelMplus12-Regular.woff2)}a{-webkit-text-decoration-color:var(--color-teal-100);text-decoration-color:var(--color-teal-100);text-underline-position:under}a:link,a:visited{color:var(--color-teal-700)}a:hover{color:var(--color-teal-600);-webkit-text-decoration-color:var(--color-teal-300);text-decoration-color:var(--color-teal-300)}html,body{min-height:100%}body{background:var(--color-teal-100);justify-content:center;align-items:center;display:flex;position:relative}#dummy-content,main,footer{z-index:1}#dummy-content{position:relative}#bg-animation{pointer-events:none;z-index:0;width:100vw;height:100vh;position:fixed;inset:0}main{border:1px solid var(--color-grey-100);text-align:left;width:320px;height:560px;color:var(--color-grey-700);-ms-overflow-style:none;scrollbar-width:none;border-radius:16px;margin:auto;padding:0 16px 32px;font-family:PixelMplus12;font-size:14px;position:relative;overflow-y:scroll}main::-webkit-scrollbar{display:none}header{padding:0 0 32px}header h1{text-align:left;padding:16px 0 0;font-size:24px;font-weight:700}section{padding:16px 0}section.about figure{margin:16px 0 0}section.about figure img{width:120px;height:120px}section.portfolio{line-height:20px}h2{margin:24px 0}dl{text-align:left;margin:16px 0 0;line-height:1.25}dl dt{color:var(--color-grey-600);margin:24px 0 0;font-size:12px}dl dd{margin:4px 0 0;font-size:16px}.education-list{text-align:left;margin:16px 0 0;line-height:1.25}.education-list>li{border:0;margin:24px 0 0;display:block}.education-list>li .term{font-size:12px;font-weight:700;display:block}.experience-list{text-align:left;margin:16px 0 0;line-height:1.25}.experience-list>li{border:0;margin:24px 0 0;display:block}.experience-list>li .term,.experience-list>li .title,.experience-list>li .project,.experience-list>li .project-name,.experience-list>li .project-term,.experience-list>li .highlight{display:block}.experience-list>li .term{font-size:12px;font-weight:700}.experience-list>li .title{margin:4px 0 0;font-weight:700}.experience-list>li .project{margin:8px 0 0 16px;font-size:12px}.experience-list>li .project .project-term{color:var(--color-black-t500)}.experience-list>li .project .project-name,.experience-list>li .highlights{margin:4px 0 0}.links ul,.app ul{padding:0 0 0 8px;list-style-type:square}.links ul li,.app ul li{margin:24px 0 0;font-size:16px;font-weight:700;list-style:none;position:relative}.links ul li:before,.app ul li:before{content:"";background:var(--color-grey-200);border-radius:1px;width:1px;height:100%;margin:auto;position:absolute;top:4px;bottom:4px;left:-8px}.links ul li .title,.app ul li .title{margin-bottom:4px;font-size:16px;font-weight:700}.links ul li p.description,.app ul li p.description{color:var(--color-grey-600);margin:16px auto auto 0;font-size:14px;line-height:21px}.links ul li .badges,.app ul li .badges{flex-wrap:wrap;gap:4px;width:100%;margin-top:8px;display:flex}p{line-height:24px}footer{z-index:1;color:var(--color-grey-500);font-family:PixelMplus12;position:fixed;bottom:8px;right:8px}@media screen and (width<=640px){footer{position:absolute}}.social-details[open] .social-summary .chevron.down,.social-details:not([open]) .social-summary .chevron.up{display:none}.social-details .social-summary{cursor:pointer;justify-content:center;align-items:center;width:100%;height:16px;margin:56px 0 32px;display:flex;position:relative}.social-details .social-summary:before,.social-details .social-summary:after{content:"";border-top:1px dashed var(--color-black-t400);width:100%;height:0}.social-details .social-summary:hover .summary-content{background-color:var(--color-white-t300)}.social-details .social-summary hr{border:0;border-top:2px dashed var(--color-black-t200);width:100%;height:0}.social-details .social-summary .summary-content{border:1px dashed var(--color-black-t400);border-radius:4px;flex:none;align-items:center;width:80px;padding:8px 8px 8px 10px;font-size:14px;display:inline-flex}.social-details .social-summary .summary-content>.chevron{width:16px;height:16px;margin:auto 0 auto auto}@media screen and (width<=640px){main{width:100%;height:100%}}@media screen and (width>=641px){main{position:fixed;top:calc(50% - 240px);left:calc(50% - 160px)}}.glassmorphism{background:var(--color-white-t400);box-shadow:0 4px 32px var(--color-black-t50);-webkit-backdrop-filter:blur(4px);border:1px solid var(--color-white-t300);border-radius:16px}
