body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Times New Roman,Times,serif;margin:0;overflow-x:hidden;overflow-y:auto;padding:0}#root,body,html{height:auto;min-height:100vh}@media (max-width:768px){body,html{-webkit-overflow-scrolling:touch;overscroll-behavior:none}#root{height:auto;min-height:100vh;overflow-y:auto}}@supports (-webkit-touch-callout:none){body,html{height:-webkit-fill-available}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.header{align-items:center;display:flex;height:60px;justify-content:center;position:relative;top:0;width:100%}.header,.logo{font-family:Times New Roman,Times,serif}.logo{font-size:1.5rem;font-weight:700;left:20px;position:absolute}.nav-links{display:flex;gap:30px}.nav-links a{color:purple;font-family:Times New Roman,Times,serif;font-size:1rem;padding:0 10px;position:relative;text-decoration:none}.nav-links a.active{color:purple;font-weight:700}.nav-links a:focus,.nav-links a:hover{color:navy}@media (max-width:768px){.nav-links{gap:15px}.nav-links a{font-size:.9rem;padding:0 5px}}@media (max-width:480px){.header{height:50px}.nav-links{gap:10px}.nav-links a{font-size:.8rem}.logo{font-size:1.2rem;left:10px}}.main-section{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;font-family:Times New Roman,Times,serif;justify-content:center;max-width:100vw;min-height:calc(100vh - 100px);overflow-x:hidden;overflow-y:visible;padding:10px 0 calc(40px + env(safe-area-inset-bottom, 0px));position:relative;width:100%}@media (max-width:768px){.main-section{min-height:calc(100vh - 85px);padding-bottom:calc(50px + env(safe-area-inset-bottom, 0px))}}@media (max-width:480px){.main-section{min-height:calc(100vh - 80px);padding-bottom:calc(56px + env(safe-area-inset-bottom, 0px))}}.profile-image-container{align-items:center;display:flex;justify-content:flex-start;margin:10px 0;width:100%}.profile-image{border:2px solid grey;border-radius:0;box-shadow:none;height:150px;margin-bottom:20px;object-fit:cover;width:150px}@media (max-width:1024px){.profile-image{height:140px;width:140px}}@media (max-width:768px){.profile-image{height:120px;width:120px}}@media (max-width:480px){.profile-image{height:100px;width:100px}}.social-links>div:first-child svg:hover{color:#0077b5}.social-links>div:nth-child(2) svg:hover{color:#181717}.social-links>div:nth-child(3) svg:hover{color:#e4405f}.social-links>div:nth-child(4) svg:hover{color:#dc3545}.text{height:auto;margin:10px 0;text-align:left;width:100%}.text-drawing-container{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}@font-face{font-family:PatrickHand;font-style:normal;font-weight:400;src:url(/static/media/PatrickHand-Regular.ec54a049bdef4be52511.ttf) format("truetype")}.text-by-hand{color:navy;font-family:Times New Roman,Times,serif;font-size:1.3rem;line-height:1.5;text-align:center}@media (max-width:768px){.text-by-hand{font-size:1.1rem}.text{height:auto;min-height:60px}}@media (max-width:480px){.text-by-hand{font-size:.9rem}}.greeting-container{display:flex;height:auto;justify-content:flex-start;margin:0 0 15px;text-align:left;width:100%}.greeting-text{display:inline-block;margin:0;text-align:left}.social-icon-wrapper{height:30px;justify-content:center;margin:0 10px;padding:6px;position:relative;width:30px}.social-icon{font-size:18px}.social-icon-wrapper.linkedin:hover{background-color:#fff}.social-icon-wrapper.linkedin:hover .social-icon{color:#0077b5}.social-icon-wrapper.github:hover{background-color:#fff}.social-icon-wrapper.github:hover .social-icon{color:#181717}.social-icon-wrapper.instagram:hover{background-color:#fff}.social-icon-wrapper.instagram:hover .social-icon{color:#e4405f}.social-icon-wrapper.resume:hover{background-color:#fff}.social-icon-wrapper.resume:hover .social-icon{color:#dc3545}.social-icon-wrapper:hover .social-icon{transform:scale(1.2)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){.social-icon-wrapper{height:28px;margin:0 8px;width:28px}.social-icon{font-size:16px}}@media (max-width:480px){.social-icon-wrapper{height:26px;margin:0 6px;width:26px}.social-icon{font-size:14px}}.main-content-wrapper{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:row;gap:40px;height:auto;justify-content:space-between;margin:0 auto;max-width:1200px;min-height:100%;overflow:visible;padding:20px;width:100%}.left-column,.right-column{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;min-width:0}.projects-list{width:100%}.project-item{margin-bottom:20px;padding-bottom:10px}.project-link{transition:color .2s ease}.project-link:hover,.project-link:hover .project-link-icon{color:purple!important}.project-link-icon{transition:color .2s ease}@media (max-width:768px){.main-content-wrapper{flex-direction:column;gap:30px}.left-column,.right-column{width:100%}}.social-links{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:20px 0}.social-icon-wrapper{align-items:center;background-color:#fff;border:1px solid grey;border-radius:0;cursor:pointer;display:flex;flex-direction:column;padding:10px 5px;width:60px}.social-icon{color:navy;font-size:24px;margin-bottom:8px;transition:transform .2s ease,color .2s ease}.icon-label{color:navy;font-family:Times New Roman,Times,serif;font-size:.8rem;font-weight:400;text-align:center}.social-icon-wrapper.linkedin:hover .icon-label{color:#0077b5}.social-icon-wrapper.github:hover .icon-label{color:#181717}.social-icon-wrapper.instagram:hover .icon-label{color:#e4405f}.social-icon-wrapper.resume:hover .icon-label{color:#dc3545}.social-icon-wrapper:focus-visible{outline:3px solid var(--accent-color);outline-offset:2px}@media (max-width:768px){.social-links{gap:15px}.social-icon-wrapper{width:50px}.social-icon{font-size:20px}.icon-label{font-size:.7rem}}@media (max-width:480px){.social-links{gap:10px}.social-icon-wrapper{width:45px}.social-icon{font-size:18px}.icon-label{font-size:.65rem}}.style-attribution{bottom:50px;color:navy;font-family:Times New Roman,Times,serif;font-size:.75rem;left:20px;line-height:1.4;opacity:.8;position:fixed;z-index:5}.style-attribution a{color:purple;text-decoration:none}.style-attribution a:hover{color:navy;text-decoration:underline}@media (max-width:768px){.style-attribution{bottom:45px;font-size:.7rem;left:15px}}@media (max-width:480px){.style-attribution{bottom:40px;font-size:.65rem;left:10px}}.footer{align-items:center;border-top:1px solid grey;bottom:0;box-shadow:none;display:flex;font-family:Times New Roman,Times,serif;height:40px;justify-content:center;position:fixed;text-align:center;width:100%;z-index:10}.footer p{font-size:.85rem;line-height:1.5;margin:0}@media (max-width:768px){.footer{bottom:0;height:35px;position:-webkit-sticky;position:sticky}.footer p{font-size:.8rem}}@media (max-width:480px){.footer{bottom:0;height:30px;position:-webkit-sticky;position:sticky}.footer p{font-size:.75rem}}@media (min-width:1440px){.footer p{font-size:.9rem}}.scroll-to-top{align-items:center;background-color:#f60;background-color:var(--accent-color,#f60);border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;opacity:0;position:fixed;right:20px;transform:translateY(20px);transition:opacity .3s,visibility .3s,transform .3s,background-color .3s;visibility:hidden;width:40px;z-index:1000}.scroll-to-top.visible{opacity:1;transform:translateY(0);visibility:visible}.scroll-to-top:hover{background-color:#0a58ca;background-color:var(--link-hover,#0a58ca);transform:translateY(-2px)}.scroll-to-top:focus{box-shadow:0 0 0 3px #ff66004d;outline:none}.scroll-to-top svg{transition:transform .3s}.scroll-to-top:hover svg{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.scroll-to-top{transition:opacity .1s,visibility .1s}.scroll-to-top:hover,.scroll-to-top:hover svg{transform:none}}@media (max-width:768px){.scroll-to-top{bottom:15px;height:35px;right:15px;width:35px}.scroll-to-top svg{height:20px;width:20px}}@media (max-width:480px){.scroll-to-top{bottom:12px;height:32px;right:12px;width:32px}.scroll-to-top svg{height:18px;width:18px}}.tornado-switch-container{align-items:center;bottom:16px;display:flex;flex-direction:column;gap:8px;position:fixed;right:16px;z-index:1000}.tornado-label{color:#5c646b;font-size:14px;font-weight:500;-webkit-user-select:none;user-select:none;white-space:nowrap}.tornado-arrow{color:#5c646b;flex-shrink:0;height:16px;transform:rotate(90deg);width:16px}.tornado-switch{align-items:center;background:radial-gradient(circle at 30% 30%,#fff,#dfe6ee);border:none;border-radius:50%;box-shadow:0 6px 18px #00000040;cursor:pointer;display:flex;flex-shrink:0;height:56px;justify-content:center;transition:transform .15s ease,box-shadow .2s ease;width:56px}.tornado-switch:focus-visible{outline:2px solid #1a73e8;outline-offset:2px}.tornado-switch:hover{box-shadow:0 10px 22px #0000004d;transform:translateY(-1px)}.tornado-switch-container:hover .tornado-arrow,.tornado-switch-container:hover .tornado-label{color:#3a3f44}.tornado-icon{animation:tornado-spin 2.2s linear infinite;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3));height:28px;transform-origin:50% 60%;width:28px}@keyframes tornado-spin{0%{transform:rotateX(18deg) rotateY(0deg) rotate(0deg)}50%{transform:rotateX(18deg) rotateY(8deg) rotate(180deg)}to{transform:rotateX(18deg) rotateY(0deg) rotate(1turn)}}@media (prefers-reduced-motion:reduce){.tornado-icon{animation:none}}@media (max-width:480px){.tornado-arrow,.tornado-label{display:none}}:root{--bg-primary:#fff;--bg-secondary:#fff;--text-color:navy;--text-secondary:navy;--accent-color:navy;--toggle-bg:#0000800d;--toggle-hover-bg:#0000801a;--header-bg:#fff;--footer-bg:#fff;--card-bg:#fff;--card-border:grey;--link-color:purple;--link-hover:purple;--shadow-color:#0000001a;--code-bg:#f6f8fa;--border-color:grey;--highlight-bg:#fff3cd;--highlight-text:#664d03;--transition-speed:0.3s}[data-theme=dark]{--bg-primary:#fff;--bg-secondary:#fff;--text-color:navy;--text-secondary:navy;--accent-color:navy;--toggle-bg:#0000800d;--toggle-hover-bg:#0000801a;--header-bg:#fff;--footer-bg:#fff;--card-bg:#fff;--card-border:grey;--link-color:purple;--link-hover:purple;--shadow-color:#0000001a;--code-bg:#f6f8fa;--border-color:grey;--highlight-bg:#fff3cd;--highlight-text:#664d03}body{background-color:#fff;background-color:var(--bg-primary)}.header,body{color:navy;color:var(--text-color)}.header{background-color:#fff;background-color:var(--header-bg)}.footer{background-color:#fff;background-color:var(--footer-bg)}.footer,.main-section{color:navy;color:var(--text-color)}.main-section{background-color:#fff;background-color:var(--bg-primary)}.nav-links a{color:navy;color:var(--text-color)}.nav-links a.active,.nav-links a:focus,.nav-links a:hover{color:navy;color:var(--accent-color)}a{color:purple;color:var(--link-color)}a:hover{color:purple;color:var(--link-hover)}.blog-post{background-color:#fff;background-color:var(--card-bg);border:1px solid grey;border:1px solid var(--card-border);box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow-color);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease;transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease}.social-links svg{color:navy;color:var(--text-color)}[data-theme=light] path.xarrow{stroke:#333!important}[data-theme=dark] path.xarrow{stroke:#fff!important}.type{color:navy;color:var(--text-color)}[data-theme=dark] .type:after,[data-theme=light] .type:after{color:navy}.greeting-text{color:navy;color:var(--text-color)}[data-theme=dark] .name-text .type,[data-theme=light] .name-text .type{color:navy}.skip-link{background:#000;color:#fff;left:0;padding:8px;position:absolute;top:-40px;transition:top .3s;z-index:100}.skip-link:focus{top:0}body{color:#f8f8f8}a{color:#63b3ed}html{font-size:100%}.social-links>div:hover{background-color:#ffffff1a;border-radius:4px}.social-links>div:focus-visible{background-color:#fff3;border-radius:4px;box-shadow:0 0 0 3px #63b3ed}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
/*# sourceMappingURL=main.ed28a030.css.map*/