@font-face{font-family:outfit;src:url(/assets/fonts/Outfit/Outfit-VariableFont_wght.ttf)}:root{--font-family-primary: "outfit", "Segoe UI", sans-serif;--outfit-font-family: "outfit", "Segoe UI", sans-serif}body{min-height:100vh;position:relative;width:100%;height:100%;margin:0;padding:0;font-family:outfit;background-color:#465460;background:linear-gradient(180deg,#465460 1%,#2c2c2c);color:#e5e5e5}a:link{color:#64b5f6}.anchor-link{display:none!important}h1{color:#fff;text-align:center;font-size:3rem;text-shadow:2px 2px 2px #000000}h2{margin:0 0 10px;font-size:1.5rem;color:#ff6e58;text-shadow:2px 2px 2px #000000}h2 a{text-decoration:none;color:#ff6e58}h2 a:link{color:#ff6e58}h2:first-letter{font-size:2rem}h3{margin:0 0 10px 10px;font-size:1.5rem;color:#ffa958;text-shadow:2px 2px 2px #000000}h3 a{text-decoration:none;color:#ffa958}h4{margin:0 0 10px 15px}h5,h6{margin:0 0 10px 20px}div.date{font-style:italic;color:#ffd787;font-size:1.1rem}p{margin:0 0 15px;font-size:1rem;line-height:1.5;color:#e0e1e3}@media(max-width:768px){.profile-container{flex-direction:column;text-align:center}.profile-image{margin-right:0;margin-bottom:20px}.buttons{justify-content:center}}:root{--primary-color: #f0f0f0;--accent-color: #ff7675;--glass-bg: rgba(255, 255, 255, .2);--glass-border: rgba(255, 255, 255, .18);--dark-bg: rgba(20, 20, 20, .85)}.music-scene{width:min(90%,400px);height:60px;margin:15px auto 0;perspective:1000px;z-index:1000;transition:all .4s ease}.music-scene--isSticky{position:fixed;top:0;left:0;right:0;margin:5px auto 0;transform:scale(.85)}.music-cube{width:100%;height:100%;position:relative;transition:transform .8s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d;transform-origin:center center;cursor:pointer}.music-cube.is-flipped{transform:rotateX(180deg)}.music-container{position:absolute;top:0;left:0;width:100%;height:100%;backface-visibility:hidden;display:flex;align-items:center;border-radius:50px;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:0 8px 32px #0003;box-sizing:border-box;padding:0 5px}.music-container.front{z-index:2;transform:rotateX(0)}.music-container.back{transform:rotateX(180deg);flex-direction:column;justify-content:center;background:var(--dark-bg);color:#fff;text-align:center}.img-container{width:50px;height:50px;flex-shrink:0}.img-container img{border-radius:50%;object-fit:cover;height:100%;width:100%;animation:rotate 8s linear infinite;animation-play-state:paused}.play .img-container img{animation-play-state:running}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.music-info{flex:1;margin:0 15px;min-width:0;display:flex;flex-direction:column}#title{font-size:14px;font-weight:600;margin:0 0 4px;color:var(--primary-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-container{background:#0000004d;border-radius:5px;cursor:pointer;height:4px;width:100%}.progress{background-color:var(--accent-color);border-radius:5px;height:100%;width:0%;transition:width .1s linear}.time-info{display:flex;justify-content:space-between;font-size:10px;font-weight:300;color:#ccc;margin-top:4px}.navigation{display:flex;align-items:center}.action-btn{background:transparent;border:0;cursor:pointer;padding:8px;transition:transform .2s ease}.action-btn:hover{transform:scale(1.1)}.action-btn.action-btn-big{background-color:var(--accent-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #ff76754d}.action-btn img{width:18px;height:18px;filter:brightness(0) invert(1)}.credits-content h3{margin:auto;font-size:14px;color:var(--accent-color)}.info-label{font-size:9px;text-transform:uppercase;letter-spacing:1px;opacity:.6}.license-badge{font-size:9px;margin:0;padding:1px 8px;border:1px solid rgba(255,255,255,.2);border-radius:10px;display:inline-block}.header{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0;background-color:#242222;box-shadow:0 20px 20px #0003;z-index:1000;transition:all .3s ease-in-out}.header--medium{height:calc-size(min-content,size + 10px);padding:20px}.header--large{height:100vh;padding:auto}.profile-container{display:flex;align-items:center;max-width:600px;width:100%;z-index:9999}.profile-image{width:150px;height:150px;border-radius:50%;overflow:hidden;margin-right:40px;border:4px solid #ffba4c}.profile-image img{width:100%;height:100%;object-fit:cover}.intro{flex:1}.intro .name{margin-bottom:-.25em;font-size:3em;color:#f0f0f0}.intro .tag-line{margin-bottom:10px;font-size:1.5em;color:#778da9;max-width:400px}.social-buttons-grid{display:flex;gap:10px;justify-content:space-around}.social-button{position:relative;flex:1 1 60px;max-width:60px;aspect-ratio:1 / 1;border-radius:10px;background:linear-gradient(180deg,#282828,#202020);box-shadow:inset -8px 0 8px #00000026,inset 0 -8px 8px #00000040,0 0 0 2px #000000bf,10px 20px 25px #0006;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:all .1s ease-in-out;transition:box-shadow .25s ease,transform .05s ease-in-out}.social-button:before{content:"";position:absolute;inset:3px 12px 14px 4px;background:linear-gradient(90deg,#232323,#4a4a4a);border-radius:10px;box-shadow:-10px -10px 10px #ffffff40,10px 5px 10px #00000026;border-left:1px solid #0004;border-bottom:1px solid #0004;border-top:1px solid #0009;transition:all .1s ease-in-out;z-index:0}.social-button img{width:60%;height:60%;object-fit:contain;z-index:1;position:relative;pointer-events:none;align-self:flex-start;margin-top:12%;margin-left:-8%}.social-button:hover{box-shadow:inset -8px 0 8px #00000026,inset 0 -8px 8px #00000040,0 0 10px 2px #fff3,0 0 20px 4px #ffffff1a,10px 20px 25px #0006;cursor:pointer}.social-button:active{transform:translateY(2px);box-shadow:inset -4px 0 4px #0000001a,inset 0 -4px 4px #00000026,0 0 0 2px #00000080,5px 10px 15px #0000004d}.social-button:active:before{inset:5px 11px 11px 5px;box-shadow:-5px -5px 5px #ffffff26,5px 3px 5px #0000001a}.nav-grid{position:fixed;width:100px;height:40vh;top:50%;right:0;transform:translate(10px,-50%);z-index:10000;display:flex;flex-direction:column;justify-content:space-around;align-items:flex-end}.page-nav-button{position:relative;width:100px;height:50px;z-index:100;cursor:pointer;background:transparent;box-shadow:0 20px 20px #0003;transition:all .5s ease}.page-nav-button:hover{width:110px;transform:translate(-10px)}.button-content{position:relative;width:100%;height:100%;background-color:#415a77;border-radius:5px 0 0 5px;overflow:hidden;transition:background-color .3s ease}.page-nav-button:hover .button-content{background-color:#171717}.button-content:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;z-index:2;pointer-events:none;background:linear-gradient(0deg,transparent,transparent 50%,rgba(255,255,255,.5));transform:rotate(-45deg);opacity:0;transition:all .5s ease}.page-nav-button:hover .button-content:before{opacity:1;transform:rotate(-45deg) translateY(110%)}.page-nav-button a{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-decoration:none;color:#e0e1dd;position:relative;z-index:5}.page-nav-button span{font-size:20px;font-weight:700}.snake-clipper{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none;border-radius:5px 0 0 5px;clip-path:inset(0 2px 0 0)}.snake-border{width:100%;height:100%;transform:scaleX(-1)}.snake-border rect{fill:none;stroke:#fff;stroke-width:3px;stroke-dasharray:0 200;stroke-dashoffset:100;transition:stroke-dashoffset .3s ease-out,stroke-dasharray .3s ease-out}.page-nav-button:hover .snake-border rect{animation:snake-travel .7s linear forwards}@keyframes snake-travel{0%{stroke-dashoffset:100;stroke-dasharray:0 200}50%{stroke-dashoffset:30;stroke-dasharray:50 200}to{stroke-dashoffset:-100;stroke-dasharray:0 200}}.footer{position:absolute;bottom:0;width:100%;margin:auto;z-index:9999}.footer .footer-content{max-width:fit-content;margin-inline:auto}.footer p{margin:5px auto;text-shadow:0px 5px 20px black,0px 5px 25px black,0px 5px 30px black,0px 5px 35px black,0px 5px 40px black}#bar{width:0vw;height:.2vh;transition:all linear .2s;background-color:#72a549;box-shadow:0 0 10px #cdff77;position:fixed;top:0;z-index:100}#scrollToTopBtn{display:flex;align-items:center;justify-content:center;background-color:#415a77;color:#fff;border:none;border-radius:50%;width:50px;height:50px;cursor:pointer;box-shadow:0 2px 5px #0003;position:fixed;bottom:20px;right:20px;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease}#scrollToTopBtn.show{opacity:1;visibility:visible}#scrollToTopBtn:hover{background-color:#374554}#scrollToTopBtn:focus{outline:2px solid #b6b6b6;outline-offset:2px}#scrollToTopBtn svg{height:24px;width:24px}#blogSection{height:100%}.blog-section{padding:20px 0}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:flex;flex-direction:column;flex-flow:column wrap;justify-content:center;max-width:1200px;margin:20px auto;padding:0 40px}.blog-card{position:relative;height:300px;border:1px solid #ccc;border-left:0px;border-right:0px;padding-top:1rem;padding-bottom:1rem;width:100%;border-image:linear-gradient(to left,#18181800,#eee,#18181800) 1 0%}.blog-card .content{width:min(100%,600px);height:100%;overflow:hidden;text-overflow:ellipsis}.blog-card .thumbnail{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.blog-card .thumbnail img{height:100%;float:right;object-fit:cover;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 90%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 90%,transparent 100%)}#blog-post{max-width:1600px;margin-left:auto;margin-right:auto;padding:2rem 1rem;display:flex;flex-direction:column}aside{align-self:flex-start;width:100%}#outline-container{padding:1.5rem;height:100%;display:flex;flex-direction:column}#outline-container h2{margin:0 0 1rem;border-bottom:1px solid #374151;padding-bottom:.5rem;flex-shrink:0}#toc-nav{overflow-y:auto;flex:1;min-height:0}#toc-nav::-webkit-scrollbar{display:none}#toc-nav,#toc-nav ul{list-style:none;padding:0;margin:0}#toc-nav ul{padding-left:1rem;border-left:1px solid #374151}#toc-nav li{position:relative;padding-left:1rem}#toc-nav li:before{content:"";position:absolute;left:0;top:1rem;width:.75rem;height:1px;background-color:#374151}#toc-nav li.has-children:before{display:none}#toc-nav li:last-child>ul{border-left:none}#toc-nav a{display:block;padding:.3rem .6rem;margin:.1rem 0;color:#9ca3af;text-decoration:none;transition:color .2s ease-in-out,background-color .2s ease-in-out;border-radius:.375rem}#toc-nav a:hover{color:#e5e7eb;background-color:#374151}#toc-nav .active{color:#3b82f6;font-weight:600;background-color:#374151}.toggle-arrow{position:absolute;left:-.75rem;top:.35rem;cursor:pointer;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;z-index:1;background-color:#1f2937;border-radius:50%}.toggle-arrow svg{width:.85rem;height:.85rem;transition:transform .2s ease-in-out;fill:#9ca3af}.toggle-arrow.expanded svg{transform:rotate(90deg)}.toc-children{overflow:hidden;transition:max-height .3s ease-in-out;max-height:2000px}.toc-children.collapsed{max-height:0}@media(min-width:1024px){#blog-post{flex-direction:row}aside{width:25%;position:sticky;top:2rem;height:calc(100vh - 4rem)}#blog-main-content{width:75%;padding-left:1rem;padding-right:1rem}}div.jp-Cell-outputWrapper{margin:10px}#blog-main-content{background-color:#111;border-radius:50px;padding:5px 20px;border-width:5px}#blog-main-content{background-color:#111;border-radius:50px;margin-bottom:20px;border:none;box-shadow:0 0 20px 2px #000,0 0 0 12px #3c3c3c,0 0 20px 10px #000,inset 0 0 20px #ffffff40}pre{background-color:#282c34;border-radius:8px;padding:1rem;margin:1.5rem 0;overflow-x:auto;box-shadow:0 4px 6px #0000004d;border:1px solid rgba(255,255,255,.1)}div.highlight{background-color:#282c34;border-radius:8px;padding:.5rem;margin:1.5rem 0;overflow-x:auto}div.highlight pre{margin:0;padding:0;box-shadow:none;border:none}code{font-family:Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.5}p code,li code{background-color:#ffffff1a;padding:2px 6px;border-radius:4px}div.highlight{background:transparent!important;border:none!important;margin:0!important;padding:0!important}div.highlight pre{background:#1e1e1e!important;color:#d4d4d4;padding:1rem;border-radius:8px;border:1px solid #333;box-shadow:0 4px 6px #0003;overflow-x:auto;font-family:Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.5}pre code{background:#1e1e1e;padding:1rem;border-radius:8px;display:block;overflow-x:auto}p code,li code{background-color:#ffffff1a;padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.85em}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.projects-section{transition:all .5s ease;z-index:1;padding:50px;box-sizing:border-box}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;max-width:1200px;margin:0 auto}.project-card{background-color:#1b263b;padding:20px;border-radius:10px;box-shadow:0 4px 10px 10px #0000001a;transition:transform .3s ease;border:1px solid rgba(255,255,255,.18);background:#ffffff17;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column}.project-card:hover{transform:translateY(-10px)}.project-thumbnail{height:200px;background-size:cover;background-position:center;position:relative;border-radius:15px;margin-bottom:15px}.project-content{position:relative;z-index:1;color:#fff;flex-grow:1}.project-content button{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:1rem;transition:background .3s ease}.project-content button:hover{background:#0056b3}@font-face{font-family:beyond-wonderland;src:url(/assets/fonts/beyond-wonderland/Beyond%20Wonderland.ttf)}@font-face{font-family:garamond;src:url(/assets/fonts/EB_Garamond/EBGaramond-VariableFont_wght.ttf)}:root{--text-color: #333333;--bar-work-color: #eb5e28;--bar-education-color: #2a9d8f;--bar-text-color: #ffffff;--year-label-color: #7f8c8d;--grid-line-color: rgba(255, 255, 255, .15);--font-family-primary: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}.about-page-container{width:100%}.about-me-section{position:relative;padding:20px 20px 0;display:flex;justify-content:center}.paper{position:relative;color:var(--text-color);max-width:800px;width:100%;margin:auto;filter:drop-shadow(0 10px 15px rgba(0,0,0,.3));background-image:url(/assets/images/textures/old_paper.png);background-size:100% 100%;padding:8% 10%}.paper *{color:var(--text-color)}.paper .about-me-title{text-align:center;font-family:beyond-wonderland;font-weight:500;font-size:48px;margin-top:0;text-shadow:none}.paper .about-me-title:first-letter{font-size:48px}.paper .about-me-content{font-family:garamond;font-style:italic;font-weight:500;text-align:center;font-size:18px;line-height:1.6}.exp-chart-container{margin:0;padding:0 20px}.canvas-wrapper{position:relative;width:100%;overflow:hidden}.formula1{width:100%;display:flex;justify-content:center}.formula1 img{max-width:100%;height:auto}
