@-webkit-viewport{width:device-width}@-moz-viewport{width:device-width}@-ms-viewport{width:device-width}@-o-viewport{width:device-width}@viewport{width:device-width}:root{--font-display:'Space Grotesk', sans-serif;--font-body:'Inter', sans-serif;--color-accent:#037077}#about,body{box-sizing:border-box}body{font-family:var(--font-body);padding-top:88px}a{color:#302802;text-decoration:none;-webkit-transition:color .3s ease-in-out;-moz-transition:color .3s ease-in-out;transition:color .3s ease-in-out}a:hover{color:#585858}#about{margin-top:7em;padding:0 16px}.about-inner{display:flex;align-items:center;justify-content:space-between;gap:48px;max-width:1200px;margin:0 auto}.about-text{flex:1}#about h1{margin:0 0 16px;font-family:var(--font-display);font-size:3rem;font-weight:700;line-height:1.1;letter-spacing:-.015em;text-align:left}.about-accent-bar{width:64px;height:6px;margin:0 0 24px;border-radius:3px;background:linear-gradient(90deg,#037077,#7da7d9)}.about-text p{margin:0;font-size:1.1em;line-height:1.5;text-align:justify}.about-text ul,.what ul{margin:12px 0 0;padding-left:1.4em;font-size:1.1em;line-height:1.5}.about-text li{margin-bottom:6px;text-align:justify}.about-text li:last-child,.what li:last-child{margin-bottom:0}.about-image{flex-shrink:0;width:500px;padding:5px;background:linear-gradient(135deg,#037077,#7da7d9);border-radius:28px;box-shadow:oklab(.446-.00684949-.0292076/.1)0 25px 50px -12px;box-sizing:border-box}.about-image img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:4/3;border-radius:24px;box-sizing:border-box}@media screen and (max-width:767px){#about{margin-top:3em}.about-inner{flex-direction:column-reverse;gap:24px}.about-image{width:100%;max-width:384px;margin:0 auto}#about h1{font-size:2.25rem;text-align:center}.about-accent-bar{margin-left:auto;margin-right:auto}.about-text li,.about-text p{text-align:left}}#now{max-width:760px;margin:7em auto 0;padding:0 16px;box-sizing:border-box}#now h1,#now h2{font-family:var(--font-display);font-weight:700}#now h1{margin:0 0 16px;font-size:3rem;line-height:1.1;letter-spacing:-.015em}#now h2{margin:32px 0 8px;font-size:1.5rem}#now p{margin:0;font-size:1.1em;line-height:1.5}#now a{text-decoration:underline}#now p.now-about,#now p.now-updated{font-size:1rem;color:#585858}#now p.now-about{margin-top:48px}.what p+p{margin-top:12px}.what li{margin-bottom:6px}@media screen and (max-width:767px){#now{margin-top:3em}#now h1{font-size:2.25rem}}#site-navbar{position:fixed;top:8px;left:8px;right:8px;z-index:1000;padding:10px 24px;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:oklab(.446-.00684949-.0292076/.1)0 25px 50px -12px;box-sizing:border-box}.navbar-inner,.navbar-logo{display:flex;align-items:center}.navbar-inner{justify-content:space-between;gap:24px;max-width:1200px;margin:0 auto}.navbar-logo{flex-shrink:0}.navbar-logo-svg{height:24px;width:auto;pointer-events:none;transition:opacity .3s ease-in-out}.navbar-logo:hover .navbar-logo-svg{opacity:.5}.navbar-links,.navbar-nav{display:flex;align-items:center;gap:20px}.navbar-links{gap:32px;margin:0;padding:0;list-style:none}.navbar-links a{font-size:1em;font-weight:400}#now h2,.navbar-lang:hover,.navbar-links a:hover{color:var(--color-accent)}.navbar-divider{width:1px;height:20px;background:oklch(.887 .003 264.542)}.navbar-lang{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid oklch(.917 .003 264.542);font-size:.875rem;font-weight:600;flex-shrink:0}.navbar-lang:hover{border-color:var(--color-accent)}.navbar-lang-flag{font-size:1.05em;line-height:1}.navbar-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:32px;padding:0;background:0 0;border:0;cursor:pointer}.navbar-toggle span{display:block;width:100%;height:2px;background:#302802;border-radius:2px;transition:transform .3s ease-in-out,opacity .3s ease-in-out}.navbar-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navbar-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.navbar-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media screen and (max-width:767px){#site-navbar{padding:8px 16px}.navbar-toggle{display:flex}.navbar-divider{display:none}.navbar-lang{padding:5px 10px;font-size:.8rem}.navbar-links{position:absolute;top:calc(100% + 12px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border:1px solid oklch(.967 .003 264.542);border-radius:24px;box-shadow:oklab(.446-.00684949-.0292076/.1)0 25px 50px -12px;padding:8px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility .2s}.navbar-links.is-open{opacity:1;visibility:visible;transform:translateY(0)}.navbar-links a{display:block;padding:12px 16px;border-radius:16px}.navbar-links a:hover{background:oklch(.967 .003 264.542)}}#blogs h2,#social,nav{text-align:center}nav{font-size:1.2em}.navLink{-webkit-transition:border-color .3s ease-in-out;-moz-transition:border-color .3s ease-in-out;transition:border-color .3s ease-in-out;border-bottom:2px solid transparent}.navLink:hover{border-bottom-color:#585858}#social{margin-top:4em;margin-bottom:7em}#social:hover a{color:#c7c7c7}#social a{font-size:2em;margin:.5em}#social a:hover{color:#302802}@media screen and (max-width:767px){#social{margin-bottom:3em}}@font-face{font-family:"icomoon";src:url(fonts/icomoon.eot?2fag1p);src:url(fonts/icomoon.eot?#iefix2fag1p)format("embedded-opentype"),url(fonts/icomoon.ttf?2fag1p)format("truetype"),url(fonts/icomoon.woff?2fag1p)format("woff"),url(fonts/icomoon.svg?2fag1p#icomoon)format("svg");font-weight:400;font-style:normal}[class*=" icon-"],[class^=icon-]{font-family:"icomoon";speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-mail:before{content:""}.icon-facebook:before{content:""}.icon-github:before{content:""}.icon-linkedin:before{content:""}.icon-stackoverflow:before{content:""}#blogs{font-family:var(--font-body)}#personal-blog{--brand-color:#037077}#programming-blog{--brand-color:#7da7d9}#blogs h2{margin:96px 0 0;padding:0;font-family:var(--font-display);font-size:2.25rem;font-weight:700;line-height:1.15;letter-spacing:-.01em}.section-accent-bar{width:64px;height:6px;margin:16px auto;border-radius:3px;background:linear-gradient(90deg,#037077,#7da7d9)}#blogs p.section-caption{margin:0 0 48px;padding:0;font-size:.8125rem;line-height:1.4;color:#585858;text-align:center}#blogs p.section-caption a{color:var(--color-accent);font-weight:600}#blogs ul{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 auto;padding:0 16px;max-width:1200px;list-style-type:none}#blogs ul li{display:flex;flex-direction:column;align-self:stretch;margin:0;padding:24px;width:32%;background:#fff;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,transparent 0 0 0 0,transparent 0 0 0 0,oklab(.446-.00684949-.0292076/.1)0 25px 50px -12px;border:1px solid oklch(.967 .003 264.542);border-radius:24px;box-sizing:border-box}#blogs ul li a.post-image{display:inline}#blogs ul li a.post-image img{width:100%;height:auto;object-fit:cover;aspect-ratio:4/3;border-radius:16px}#blogs ul li a.post-title{display:block;margin:16px 0;font-size:1.25rem;font-weight:600;line-height:1.3;text-align:left}#blogs ul li p.post-excerpt{font-size:1em;text-align:justify}#blogs ul li a.post-link{margin-top:auto;font-size:1.2em}#blogs p.blog-link{margin:32px 0;padding:0;font-size:2em;text-align:center}#blogs p.blog-link a,#blogs ul li a.post-link{color:var(--brand-color);font-weight:700}#blogs hr{margin:112px auto;max-width:1200px;height:1px;border:0;background-color:oklch(.967 .003 264.542)}@media screen and (max-width:767px){#blogs h2{margin-top:48px;padding:0 16px;font-size:1.75rem}#blogs p.section-caption{margin-bottom:32px}#blogs ul li{width:100%}#blogs p.blog-link{font-size:1.5em}#blogs hr{margin:48px auto}}#site-footer{margin-top:96px;padding:48px 16px 64px;text-align:center}#site-footer p{margin:0;font-size:1rem;color:#585858}@media screen and (max-width:767px){#site-footer{margin-top:48px;padding:32px 16px 48px}}