@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";.navbar{height:5rem;width:100%;margin:0,auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:3;background:transparent;transition:all .3s ease}.menu{background:transparent;position:absolute;transform:translate(-50%,-50%);left:50%}.logo-container{display:flex;align-items:center;justify-content:center;background:transparent;overflow:visible;gap:.5rem}.link{height:2rem;width:2rem;object-fit:contain;opacity:.9;transition:opacity .2s ease}.navbar.scrolled{background:#000d17f2;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 1px 0 var(--border);border-bottom:1px solid var(--border)}.logo{object-fit:cover;height:3rem;border-radius:1rem;margin-right:.5rem;transition:all .3s ease;border:2px solid transparent}.logo:hover{transform:scale(1.05);border-color:var(--border);cursor:pointer}.logo-container .active{background:transparent!important;padding:0!important;border-radius:0!important;color:inherit!important;font-weight:inherit!important}.menu-list-item{margin:1rem;cursor:pointer;background:transparent;position:relative;padding:.5rem 0;transition:all .3s ease;color:#ffffff8c}.menu-list-item:hover{color:var(--text-primary)}.menu-list-item.active{color:var(--text-primary);font-weight:500}.menu-list-item.active:after{content:"";position:absolute;bottom:0;left:15%;width:70%;height:2px;background:var(--text-primary);border-radius:1px;opacity:.7}.nav-menu{position:absolute;top:4rem;right:2rem;z-index:2;display:flex;flex-direction:column;padding:1rem;height:fit-content;min-width:15rem;background:var(--bg-card);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:.5rem;border:1px solid var(--border);box-shadow:0 8px 32px #00000080;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.list-item{color:#ffffff8c;padding:.75rem 2rem;margin:.25rem 0;background:transparent;border-radius:.5rem;transition:all .2s ease;cursor:pointer}.list-item:hover{color:var(--text-primary)}.list-item.active{color:var(--text-primary);font-weight:500}.mobile-menu{height:3rem;display:none;object-fit:cover;cursor:pointer;transition:all .3s ease;border-radius:.5rem;padding:.3rem}.mobile-menu:hover{opacity:.8}#github-logo{object-fit:contain}#x-logo{transform:scale(.85);transform-origin:center}@media screen and (max-width: 930px){.mobile-menu{display:flex}.menu{display:none}}.hero{width:100%;min-height:100vh;background:var(--bg-primary);color:var(--text-primary);transform:translateY(-5rem);opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;display:flex;align-items:center;justify-content:center;padding:2rem}.hero.visible{opacity:1;transform:translateY(0)}.hero.hidden{opacity:0;transform:translateY(-5rem)}.hero-text{text-align:left;max-width:720px;background:transparent}.hero-primary{font-size:2.25rem;font-weight:600;line-height:1.4;color:var(--text-primary);margin-bottom:1.5rem;letter-spacing:-.02em}.hero-subheading{font-size:1.125rem;font-weight:500;color:var(--text-secondary);margin-top:0}@media screen and (max-width: 720px){.hero-text{max-width:100%}.hero-primary{font-size:1.75rem}.hero-subheading{font-size:1rem}}.project-card{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1.5rem;transition:border-color .2s ease,transform .2s ease;cursor:pointer;display:flex;flex-direction:column}.project-card:hover{border-color:var(--text-muted);transform:translateY(-2px)}.project-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-content{display:flex;flex-direction:column;gap:1rem}.card-content h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3}.project-summary{font-size:.9375rem;color:var(--text-secondary);line-height:1.6;margin:0}.tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}@media screen and (max-width: 600px){.project-card{padding:1.25rem}.card-content h3{font-size:1.125rem}.project-summary{font-size:.875rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;max-width:800px;max-height:90vh;width:100%;display:flex;flex-direction:column;animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-primary);font-size:2rem;line-height:1;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;transition:background .2s ease;z-index:10}.modal-close:hover{background:var(--bg-secondary)}.modal-close:focus{outline:2px solid var(--accent);outline-offset:2px}.modal-content{overflow-y:auto;padding:2rem;flex:1}.modal-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.modal-title{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem;letter-spacing:-.01em}.modal-summary{font-size:1rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.modal-tech{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{display:inline-block;font-family:JetBrains Mono,Consolas,monospace;font-size:.75rem;color:var(--text-muted);background:var(--bg-secondary);padding:.25rem .5rem;border-radius:4px;border:1px solid var(--border)}.modal-github-link{display:inline-flex;align-items:center;gap:.375rem;margin-top:1rem;font-size:.875rem;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.modal-github-link:hover{color:var(--text-primary)}.modal-github-icon{height:1rem;width:1rem;object-fit:contain}.modal-sections{display:flex;flex-direction:column;gap:2rem}.modal-section{display:flex;flex-direction:column;gap:.75rem}.modal-section h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.modal-text{font-size:.9375rem;line-height:1.7;color:var(--text-secondary);white-space:pre-wrap}.modal-pre{font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;background:var(--bg-secondary);padding:1rem;border-radius:4px;border:1px solid var(--border);overflow-x:auto}@media screen and (max-width: 640px){.modal-overlay{padding:0;align-items:flex-end}.modal-container{max-width:100%;max-height:95vh;border-radius:1rem 1rem 0 0;animation:slideUpMobile .3s ease-out}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-content{padding:1.5rem}.modal-title{font-size:1.5rem}.modal-close{top:.75rem;right:.75rem}}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:var(--bg-card)}.modal-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.projects-container{max-width:720px;margin:0 auto;padding:4rem 2rem;width:100%}.title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:2rem;letter-spacing:-.01em}.projects-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media screen and (max-width: 600px){.projects-container{padding:3rem 1.5rem}.title{font-size:1.25rem}}#about{width:100%;padding:4rem 2rem;background:var(--bg-primary)}.about-container{max-width:720px;margin:0 auto}.about-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:2rem;letter-spacing:-.01em}.about-content{display:flex;flex-direction:column;gap:1.5rem}.about-content p{font-size:.9375rem;line-height:1.7;color:var(--text-secondary);margin:0}.about-subheading{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.about-content .philosophy-list{list-style:none;padding:0;margin:0}.about-content .philosophy-list li{position:relative;padding-left:1.5rem;margin-bottom:.75rem;color:var(--text-secondary);font-size:.9375rem;line-height:1.7}.about-content .philosophy-list li:last-child{margin-bottom:0}.about-content .philosophy-list li:before{content:"—";position:absolute;left:0;color:var(--text-muted)}@media screen and (max-width: 720px){#about{padding:3rem 1.5rem}.about-title{font-size:1.25rem}.about-content p{font-size:.875rem}}#contact-page{display:flex;justify-content:center;align-items:center;flex-direction:column;background:var(--bg-primary);padding:4rem 2rem;width:100%}.contact-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em;text-align:center}.contact-description{font-size:.9375rem;font-weight:400;color:var(--text-secondary);text-align:center;max-width:600px;margin-bottom:2rem;line-height:1.6}.contact-form{margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:600px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:2rem;position:relative}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0a0a0ae6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:10}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top:3px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.contact-name,.contact-email,.contact-message{font-size:.9375rem;width:100%;max-width:100%;margin:.75rem 0;padding:.875rem 1rem;border:1px solid var(--border);color:var(--text-primary);border-radius:4px;background:var(--bg-secondary);resize:none;transition:border-color .2s ease;font-family:Inter,system-ui,sans-serif}.contact-name:focus,.contact-email:focus,.contact-message:focus{outline:none;border-color:var(--accent)}.contact-name::placeholder,.contact-email::placeholder,.contact-message::placeholder{color:var(--text-muted)}.contact-name:disabled,.contact-email:disabled,.contact-message:disabled{opacity:.6;cursor:not-allowed}.contact-error{width:100%;padding:.875rem 1rem;margin:.75rem 0;background:#dc35451a;border:1px solid rgba(220,53,69,.4);border-radius:4px;color:#ff6b6b;font-size:.875rem;text-align:center}.thank-you-message{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.thank-you-message h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.thank-you-message p{font-size:.9375rem;color:var(--text-secondary);text-align:center;margin-bottom:2rem;max-width:500px}.contact-submit-button{background:var(--accent);color:var(--bg-primary);padding:.75rem 2rem;font-size:.9375rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;margin:1rem 0 .5rem;transition:opacity .2s ease}.contact-submit-button:hover{opacity:.9}.contact-submit-button:disabled{opacity:.6;cursor:not-allowed}.links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:2rem;gap:1rem;background:transparent}.link{object-fit:contain;height:2rem;width:2rem;opacity:.9;transition:opacity .2s ease}.link:hover{opacity:1}@media screen and (max-width: 720px){#contact-page{padding:3rem 1.5rem}.contact-title{font-size:1.25rem}.contact-form{padding:1.5rem}.contact-name,.contact-email,.contact-message{font-size:.875rem;padding:.75rem}}.footer{width:100%;padding:2rem 0;background:var(--bg-primary);border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:400;font-size:.875rem}.footer-link{color:var(--accent);text-decoration:none;transition:opacity .2s ease}.footer-link:hover{opacity:.9}footer>p,footer>p>a{background:transparent;color:var(--text-muted)}@media screen and (max-width: 720px){.footer{padding:1.5rem 0;font-size:.8125rem}}*{margin:0;padding:0;box-sizing:border-box;text-decoration:none;background:transparent}:root{--bg-primary: rgba(0, 13, 23, 1);--bg-secondary: rgba(5, 20, 53, 1);--bg-card: rgba(20, 30, 60, .6);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .9);--text-muted: rgba(255, 255, 255, .6);--accent: #ffffff;--border: rgba(255, 255, 255, .1)}body{font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--text-primary);background:var(--bg-primary);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.7}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.fade-section{opacity:0;transform:translateY(20px);transition:opacity 1s ease-out,transform 1s ease-out}.fade-section.visible{opacity:1;transform:translateY(0)}.fade-section.hidden{opacity:0;transform:translateY(20px)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary);letter-spacing:-.01em}h1{font-size:2.25rem}h2{font-size:1.5rem;margin-bottom:1.5rem}h3{font-size:1.25rem}p{font-weight:400;line-height:1.7;color:var(--text-secondary);margin-bottom:1rem}code,.mono{font-family:JetBrains Mono,Consolas,monospace;font-size:.875em}a{color:var(--accent);transition:opacity .2s ease}a:hover{opacity:.9}.logo-link{margin:0 5px;opacity:.95;transition:opacity .2s ease,transform .2s ease;display:inline-block}.logo-link:hover{opacity:1;transform:translateY(-3px) scale(1.1)}img{background:transparent}::selection{background-color:#fff3;color:var(--text-primary)}
