body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden;overscroll-behavior-y:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#000;min-height:100vh;text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar{align-items:center;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);background:#0009;border:1px solid #ffffff2e;border-radius:0 0 16px 16px;border-top:none;box-shadow:0 8px 32px #0000004d,inset 0 1px 0 #ffffff1a;color:#fff;display:flex;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;justify-content:space-between;left:0;margin:0 0 1rem;overflow:hidden;padding:1rem 2rem;position:-webkit-sticky;position:sticky;right:0;top:0;z-index:1000}.navbar:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:1px;left:0;opacity:.6;position:absolute;right:0;top:0}.navbar-brand{color:#fff;flex-shrink:0;font-size:1.25rem;font-weight:600;letter-spacing:.05em}.navbar-center{left:50%;position:absolute;transform:translateX(-50%)}.navbar-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.navbar-links a{color:#fff;font-size:.95rem;font-weight:500;letter-spacing:.03em;text-decoration:none;transition:opacity .2s ease}.navbar-links a:hover{opacity:.7}html{scroll-behavior:smooth;scroll-padding-top:80px}.navbar-right{flex-shrink:0}.blog-button{background:#fff;border-radius:6px;color:#000;display:inline-block;font-size:.95rem;font-weight:600;letter-spacing:.03em;padding:.5rem 1.25rem;text-decoration:none;transition:all .2s ease}.blog-button:hover{background:#f0f0f0;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.blog-button:active{transform:translateY(0)}@media (max-width:968px){.navbar{padding:.75rem 1.5rem}.navbar-brand{font-size:1.1rem}.navbar-links{gap:1.5rem}.blog-button,.navbar-links a{font-size:.9rem}.blog-button{padding:.45rem 1rem}}@media (max-width:768px){.navbar{border-radius:0 0 12px 12px;flex-direction:column;gap:1rem;padding:1rem 1.5rem}.navbar-brand{font-size:1rem}.navbar-center{position:static;transform:none;width:100%}.navbar-links{flex-wrap:wrap;gap:1rem;justify-content:center}.navbar-links a{font-size:.85rem}.navbar-right{display:flex;justify-content:center;width:100%}.blog-button{font-size:.9rem;max-width:200px;padding:.5rem 1.5rem;text-align:center;width:100%}}@media (max-width:480px){.navbar{padding:.875rem 1rem}.navbar-brand{font-size:.95rem}.navbar-links{gap:.75rem}.navbar-links a{font-size:.8rem}.blog-button{font-size:.85rem}}.about-me{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:800px;padding:4rem 2rem;text-rendering:optimizeLegibility}.about-content{display:flex;flex-direction:column;gap:1.5rem}.about-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;line-height:1.2;margin-bottom:1rem}.about-paragraph{color:#e5e5e5;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0;text-align:left}@media (max-width:768px){.about-me{padding:3rem 1.5rem}.about-title{font-size:2rem}.about-paragraph{font-size:1rem;line-height:1.7}}.animated-typing{display:inline-block;position:relative}.typing-cursor{animation:blink 1s step-end infinite;background-color:currentColor;display:inline-block;height:1em;margin-left:2px;vertical-align:initial;width:2px}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.landing-name{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem 2rem}.landing-name-text{color:#fff;font-family:BBH Sans Bartle,Brush Script MT,Lucida Handwriting,Apple Chancery,cursive;font-size:3rem;font-weight:400;letter-spacing:.05em;text-shadow:0 2px 10px #fff3}.landing-subtitle{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#e5e5e5;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1.75rem;font-weight:500;letter-spacing:.02em;line-height:1.5;margin:1.5rem 0 0;max-width:800px;text-align:center}.landing-cta{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;margin-top:2.5rem}.cta-button{align-items:center;border-radius:4px;cursor:pointer;display:inline-flex;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1rem;font-weight:500;gap:.5rem;letter-spacing:.03em;padding:.875rem 2rem;text-decoration:none;transition:all .3s ease}.cta-primary{background:#fff;border:2px solid #fff;color:#000}.cta-primary:hover{background:#0000;box-shadow:0 4px 20px #ffffff26;color:#fff;transform:translateY(-2px)}.cta-secondary{background:#0000;border:2px solid #fff6;color:#fff}.cta-secondary:hover{border-color:#fff;box-shadow:0 4px 20px #ffffff1a;transform:translateY(-2px)}@media (max-width:768px){.landing-name-text{font-size:3rem}.landing-cta{gap:1rem}.cta-button{font-size:.95rem;padding:.75rem 1.5rem}}@media (max-width:480px){.landing-name{padding:3rem 1rem 1.5rem}.landing-name-text{font-size:2.5rem}.landing-subtitle{font-size:1.25rem}.landing-cta{align-items:center;flex-direction:column;padding:0 1rem;width:100%}.cta-button{justify-content:center;max-width:280px;text-align:center;width:100%}}:root{--carousel-transition:0.35s cubic-bezier(0.4,0.0,0.2,1);--carousel-hover-transition:0.25s ease-out}.certifications-carousel{margin:3rem auto;max-width:1400px;padding:2rem 1rem}.carousel-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;margin-bottom:3rem;text-align:center}.carousel-wrapper{margin:0 auto;max-width:1200px;padding:2rem 4rem;position:relative}.carousel-viewport{height:480px;overflow:hidden;position:relative;touch-action:pan-y;user-select:none;-webkit-user-select:none;width:100%}.carousel-slides{position:relative}.carousel-slide,.carousel-slides{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.carousel-slide{backface-visibility:hidden;-webkit-backface-visibility:hidden;max-width:380px;position:absolute;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1),filter .35s cubic-bezier(.4,0,.2,1),z-index 0s cubic-bezier(.4,0,.2,1) .35s;transition:transform var(--carousel-transition),opacity var(--carousel-transition),filter var(--carousel-transition),z-index 0s var(--carousel-transition);will-change:transform,opacity,filter}.slide-current{filter:blur(0) brightness(1);opacity:1;pointer-events:auto;transform:translateZ(0) scale(1);transition-delay:0s;z-index:10}.slide-prev{transform:translate3d(-115%,0,0) scale(.85)}.slide-next,.slide-prev{filter:blur(2px) brightness(.8);opacity:.4;pointer-events:none;z-index:5}.slide-next{transform:translate3d(115%,0,0) scale(.85)}.slide-hidden{filter:blur(4px);opacity:0;pointer-events:none;transform:translateZ(0) scale(.7);z-index:1}.cert-card{backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#141414f2;border:1px solid #ffffff26;border-radius:16px;box-shadow:0 8px 24px #0000004d;height:auto;overflow:hidden;position:relative;transition:transform .25s ease-out,box-shadow .25s ease-out,border-color .25s ease-out;transition:transform var(--carousel-hover-transition),box-shadow var(--carousel-hover-transition),border-color var(--carousel-hover-transition);width:100%}.slide-current .cert-card:hover{border-color:#ffffff4d;box-shadow:0 16px 48px #0009;transform:translateY(-6px)}.cert-image-container{background:#1e1e1e80;height:240px;overflow:hidden;width:100%}.cert-image-container.white-bg{background:#fff}.cert-image{backface-visibility:hidden;-webkit-backface-visibility:hidden;display:block;object-position:center;transition:transform .25s ease-out;transition:transform var(--carousel-hover-transition)}.slide-current .cert-card:hover .cert-image{transform:scale(1.08)}.cert-content{padding:1.75rem 2rem;text-align:center}.cert-title{color:#fff;font-size:1.3rem;font-weight:600;line-height:1.3;margin:0 0 .6rem}.cert-issuer{color:#a0a0a0;font-size:1.05rem;margin:0 0 .4rem}.cert-year{color:#707070;font-size:.95rem;margin:0}.cert-verify{align-items:center;background:#000000e6;border-radius:16px 0 16px 0;bottom:0;color:#fff;display:flex;font-size:1.15rem;font-weight:700;height:40px;justify-content:center;position:absolute;right:0;text-decoration:none;transition:all .2s ease;width:40px;z-index:20}.cert-verify:hover{background:#141414;transform:scale(1.15)}.cert-verify:focus{outline:2px solid #ffffffb3;outline-offset:2px}.carousel-nav{align-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#141414e6;border:1px solid #ffffff40;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:54px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:54px;z-index:20}.carousel-nav-prev{left:0}.carousel-nav-next{right:0}.carousel-nav:hover{background:#282828f2;border-color:#ffffff80;transform:translateY(-50%) scale(1.12)}.carousel-nav:active{transform:translateY(-50%) scale(1.05)}.carousel-nav:focus{outline:2px solid #fff9;outline-offset:4px}.carousel-indicators{align-items:center;bottom:-10px;display:flex;gap:.7rem;left:50%;position:absolute;transform:translateX(-50%);z-index:15}.indicator{backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#ffffff4d;border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:all .3s ease;width:10px}.indicator:hover{background:#fff9;transform:scale(1.25)}.indicator:focus{outline:2px solid #ffffffb3;outline-offset:2px}.indicator.active{background:#fff;border-radius:5px;width:30px}@media (max-width:1024px){.carousel-wrapper{padding:2rem 3.5rem}.carousel-viewport{height:450px}.carousel-slide{max-width:340px}.carousel-nav{font-size:1.1rem;height:48px;width:48px}.cert-image-container{height:220px}}@media (max-width:768px){.certifications-carousel{margin:2rem auto;padding:1.5rem .5rem}.carousel-title{font-size:2rem;margin-bottom:2rem}.carousel-wrapper{padding:2rem 1rem 4.5rem}.carousel-viewport{height:420px}.carousel-slide{max-width:310px}.slide-prev{transform:translate3d(-105%,0,0) scale(.75)}.slide-next,.slide-prev{filter:blur(2.5px) brightness(.7);opacity:.3}.slide-next{transform:translate3d(105%,0,0) scale(.75)}.carousel-nav{bottom:-38px;font-size:1rem;height:44px;top:auto;transform:none;width:44px}.carousel-nav-prev{left:calc(50% - 125px)}.carousel-nav-next{left:calc(50% + 81px);right:auto}.carousel-nav:hover{transform:scale(1.1)}.carousel-indicators{bottom:-35px}.cert-image-container{height:200px}.cert-content{padding:1.5rem 1.75rem}.cert-title{font-size:1.15rem}.cert-issuer{font-size:1rem}.cert-year{font-size:.9rem}.cert-verify{font-size:1.05rem;height:36px;width:36px}}@media (max-width:480px){.carousel-title{font-size:1.75rem;margin-bottom:1.5rem}.carousel-wrapper{padding:1.5rem .5rem 4.5rem}.carousel-viewport{height:390px}.carousel-slide{max-width:290px}.slide-next,.slide-prev{filter:blur(3px) brightness(.6);opacity:.25;transform:translate3d(-100%,0,0) scale(.7)}.slide-next{transform:translate3d(100%,0,0) scale(.7)}.carousel-nav{bottom:-40px;font-size:.95rem;height:40px;width:40px}.carousel-nav-prev{left:calc(50% - 105px)}.carousel-nav-next{left:calc(50% + 65px)}.carousel-indicators{bottom:-38px;gap:.6rem}.indicator{height:8px;width:8px}.indicator.active{width:26px}.cert-image-container{height:180px}.cert-content{padding:1.25rem 1.5rem}.cert-title{font-size:1.05rem}.cert-issuer{font-size:.95rem}.cert-year{font-size:.85rem}.cert-verify{font-size:1rem;height:32px;width:32px}}@media (max-width:360px){.carousel-viewport{height:370px}.carousel-slide{max-width:270px}.cert-image-container{height:160px}.cert-content{padding:1.1rem 1.25rem}.cert-title{font-size:1rem}.cert-issuer{font-size:.9rem}.cert-year{font-size:.8rem}}.contact-section{color:#fff;margin:0 auto;max-width:800px;padding:5rem 2rem;text-align:center}.contact-content{align-items:center;display:flex;flex-direction:column;gap:1.5rem}.contact-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;line-height:1.2;margin:0}.contact-intro{color:#b0b0b0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.125rem;line-height:1.7;margin:0;max-width:500px}.contact-email-button{align-items:center;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #fff3;border-radius:8px;color:#fff;display:inline-flex;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1.1rem;gap:.75rem;letter-spacing:.02em;margin-top:.5rem;padding:1.25rem 2.5rem;text-decoration:none;transition:all .3s ease}.contact-email-button:hover{background:linear-gradient(135deg,#ffffff26,#ffffff1a);border-color:#fff6;box-shadow:0 8px 30px #ffffff1a;transform:translateY(-3px)}.email-icon{font-size:1.4rem}.email-text{font-weight:500}.contact-divider{align-items:center;display:flex;gap:1rem;margin:1.5rem 0;max-width:400px;width:100%}.divider-line{background:#ffffff26;flex:1 1;height:1px}.divider-text{color:#666;font-size:.85rem;letter-spacing:.05em;text-transform:lowercase}.contact-social-links,.divider-text{font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace}.contact-social-links{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:center}.contact-social-link{color:#fff;flex-direction:column;gap:.5rem;padding:.5rem;text-decoration:none}.contact-social-link,.social-icon{align-items:center;display:flex;transition:all .3s ease}.social-icon{background:#ffffff0d;border:1px solid #ffffff26;border-radius:50%;font-size:1.5rem;font-weight:600;height:50px;justify-content:center;width:50px}.social-label{font-size:.85rem;letter-spacing:.03em;opacity:.8;transition:opacity .3s ease}.contact-social-link:hover .social-icon{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-3px)}.contact-social-link:hover .social-label{opacity:1}.social-icon .htb-icon{border-radius:50%;filter:grayscale(100%);height:100%;object-fit:cover;transition:filter .3s ease;width:100%}.contact-social-link:hover .htb-icon{filter:grayscale(0)}@media (max-width:768px){.contact-section{padding:4rem 1.5rem}.contact-title{font-size:2rem}.contact-intro{font-size:1rem}.contact-email-button{font-size:1rem;padding:1rem 2rem}.contact-social-links{gap:2rem}.social-icon{font-size:1.3rem;height:45px;width:45px}.social-label{font-size:.8rem}}@media (max-width:480px){.contact-section{padding:3rem 1rem}.contact-email-button{font-size:.9rem;justify-content:center;padding:1rem 1.5rem;width:100%}.contact-social-links{gap:1.5rem}.social-icon{font-size:1.2rem;height:40px;width:40px}}.projects-page{background-color:#000;display:flex;flex-direction:column;min-height:100vh}.projects-section{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:800px;padding:4rem 2rem;text-rendering:optimizeLegibility}.projects-content{display:flex;flex-direction:column;gap:2rem}.projects-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;line-height:1.2;margin:0 0 1rem}.projects-intro{color:#e5e5e5;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0}.projects-list{display:flex;flex-direction:column;gap:2rem}.project-card{background:#ffffff05;border:1px solid #333;border-radius:8px;padding:1.5rem;position:relative;transition:all .3s ease}.project-card:hover{background-color:#ffffff14;border-color:#000;box-shadow:0 0 0 2px #fff,0 4px 12px #00000040;transform:translateY(-2px)}.project-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.project-name{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1.5rem;font-weight:600;letter-spacing:.01em;margin:0}.project-card:hover .project-name{text-shadow:-.5px -.5px 0 #000,.5px -.5px 0 #000,-.5px .5px 0 #000,.5px .5px 0 #000}.project-badges{display:flex;flex-wrap:wrap;gap:.5rem}.status-badge{border-radius:9999px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:.2rem .6rem;text-transform:uppercase}.status-badge.active{background:#22c55e26;border:1px solid #22c55e4d;color:#4ade80}.status-badge.live{background:#3b82f626;border:1px solid #3b82f64d;color:#60a5fa}.status-badge.new{background:#a855f726;border:1px solid #a855f74d;color:#c084fc}.type-badge{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;color:#888;font-size:.7rem;padding:.2rem .6rem}.project-tagline,.type-badge{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:500}.project-tagline{color:#e5e5e5;font-size:1.125rem;line-height:1.6;margin:0 0 .5rem}.project-description{color:#a0a0a0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0 0 1.25rem}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.tech-tag{background:#ffffff14;border:1px solid #ffffff1f;border-radius:4px;color:#b0b0b0;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:.75rem;font-weight:500;padding:.3rem .6rem;transition:all .2s ease}.tech-tag:hover{background:#ffffff1f;color:#fff}.project-links{display:flex;flex-wrap:wrap;gap:1.5rem}.project-link{align-items:center;color:#fff;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;gap:.25rem;opacity:.8;text-decoration:none;transition:all .2s ease}.project-link:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}.workflow-section{border-top:1px solid #333;margin-top:2rem;padding-top:2rem}.section-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1.5rem;font-weight:600;letter-spacing:.02em;margin:0 0 1rem}.workflow-text{color:#a0a0a0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0}@media (max-width:768px){.projects-section{padding:3rem 1.5rem}.projects-title{font-size:2rem}.projects-intro{font-size:1rem}.project-card{padding:1.25rem}.project-header{flex-direction:column;gap:.5rem}.project-name{font-size:1.25rem}.project-tagline{font-size:1rem}.project-description{font-size:.95rem}.section-title{font-size:1.25rem}.workflow-text{font-size:.95rem}}@media (max-width:480px){.projects-section{padding:2rem 1rem}.project-badges{width:100%}.project-links{flex-direction:column;gap:.75rem}}.footer{background:#000c;border-top:1px solid #ffffff1a;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;margin-top:4rem;padding:3rem 2rem 2rem}.footer-content{align-items:center;display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:1200px}.footer-links{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:center}.footer-link{color:#fff;flex-direction:column;gap:.5rem;padding:.5rem;text-decoration:none}.footer-icon,.footer-link{align-items:center;display:flex;transition:all .3s ease}.footer-icon{background:#ffffff0d;border:1px solid #ffffff26;border-radius:50%;font-size:1.5rem;font-weight:600;height:50px;justify-content:center;width:50px}.footer-label{font-size:.85rem;letter-spacing:.03em;opacity:.8;transition:opacity .3s ease}.footer-link:hover .footer-icon{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-3px)}.footer-link:hover .footer-label{opacity:1}.footer-icon .htb-icon{border-radius:50%;filter:grayscale(100%);height:100%;object-fit:cover;transition:filter .3s ease;width:100%}.footer-link:hover .htb-icon{filter:grayscale(0)}.footer-copyright{border-top:1px solid #ffffff0d;color:#999;font-size:.875rem;letter-spacing:.02em;max-width:600px;padding-top:1.5rem;text-align:center;width:100%}@media (max-width:768px){.footer{margin-top:3rem;padding:2rem 1rem 1.5rem}.footer-links{gap:2rem}.footer-icon{font-size:1.3rem;height:45px;width:45px}.footer-label{font-size:.8rem}.footer-copyright{font-size:.8rem;padding-top:1rem}}@media (max-width:480px){.footer-links{gap:1.5rem}.footer-icon{font-size:1.2rem;height:40px;width:40px}}.certifications-page{background-color:#000;display:flex;flex-direction:column;min-height:100vh}.certifications-section{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:900px;padding:4rem 2rem;text-rendering:optimizeLegibility}.certifications-content{display:flex;flex-direction:column;gap:2rem}.certifications-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;line-height:1.2;margin:0 0 1rem}.certifications-intro{color:#e5e5e5;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0}.certifications-list{display:flex;flex-direction:column;gap:2.5rem}.certification-card{background:#ffffff05;border:1px solid #333;border-radius:8px;overflow:hidden;transition:all .3s ease}.certification-card:hover{background-color:#ffffff0d;border-color:#000;box-shadow:0 0 0 2px #fff,0 4px 12px #00000040;transform:translateY(-2px)}.cert-header{align-items:center;border-bottom:1px solid #222;display:flex;gap:1.5rem;padding:1.5rem}.cert-image-wrapper{background:#ffffff0d;border-radius:8px;flex-shrink:0;height:80px;overflow:hidden;width:80px}.cert-image{height:100%;object-fit:cover;width:100%}.cert-title-section{flex:1 1;min-width:0}.cert-name{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1.5rem;font-weight:600;letter-spacing:.01em;margin:0 0 .5rem}.cert-meta{align-items:center;color:#a0a0a0;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem}.cert-acronym{background:#ffffff14;border-radius:4px;color:#b0b0b0;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:.8rem;padding:.15rem .5rem}.cert-divider{color:#444}.cert-issuer{color:silver}.cert-date{color:grey}.cert-body{padding:1.5rem}.cert-description{color:#e5e5e5;font-size:1rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0 0 1.5rem}.cert-details-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.cert-detail-block{background:#ffffff08;border:1px solid #222;border-radius:6px;padding:1rem}.detail-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:.85rem;font-weight:600;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.detail-text{color:#a0a0a0;font-size:.95rem;font-weight:400;line-height:1.7;margin:0}.skills-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.skill-item{background:#ffffff14;border:1px solid #ffffff1f;border-radius:4px;color:#b0b0b0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:500;padding:.35rem .75rem}.cert-footer{border-top:1px solid #222;display:flex;justify-content:flex-end;padding:1rem 1.5rem}.verify-link{align-items:center;color:#fff;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;gap:.25rem;opacity:.8;text-decoration:none;transition:all .2s ease}.verify-link:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}@media (max-width:768px){.certifications-section{padding:3rem 1.5rem}.certifications-title{font-size:2rem}.certifications-intro{font-size:1rem}.cert-header{align-items:flex-start;flex-direction:column;gap:1rem}.cert-image-wrapper{height:64px;width:64px}.cert-name{font-size:1.25rem}.cert-meta{font-size:.85rem}.cert-body{padding:1.25rem}.cert-description{font-size:.95rem}.detail-title{font-size:.8rem}.detail-text{font-size:.9rem}.skill-item{font-size:.75rem}}@media (max-width:480px){.certifications-section{padding:2rem 1rem}.cert-body,.cert-header{padding:1rem}.cert-footer{padding:.75rem 1rem}.cert-meta{align-items:flex-start;flex-direction:column;gap:.25rem}.cert-divider{display:none}}.chat-page{background-color:#000;display:flex;flex-direction:column;min-height:100vh}.chat-section{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:800px;padding:4rem 2rem;text-rendering:optimizeLegibility}.chat-content,.chat-section{display:flex;flex-direction:column}.chat-content{flex:1 1;gap:1.5rem}.chat-title{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.02em;line-height:1.2;margin:0}.chat-intro{color:#e5e5e5;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0}.chat-container{background:#ffffff05;border:1px solid #333;border-radius:8px;display:flex;flex:1 1;flex-direction:column;max-height:600px;min-height:400px;overflow:hidden}.messages-container{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1.5rem}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#444}.message{display:flex;flex-direction:column;gap:.25rem;max-width:85%}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-label{color:#666;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:0 .5rem;text-transform:uppercase}.message.user .message-label{text-align:right}.message-content{word-wrap:break-word;border-radius:8px;font-size:.95rem;line-height:1.6;padding:.75rem 1rem}.markdown-content p{margin:0 0 .75rem}.markdown-content p:last-child{margin-bottom:0}.markdown-content code{background:#ffffff1a;border-radius:4px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:.85em;padding:.15rem .4rem}.markdown-content pre{background:#0006;border:1px solid #333;border-radius:6px;margin:.75rem 0;overflow-x:auto;padding:.75rem 1rem}.markdown-content pre code{background:none;font-size:.85rem;line-height:1.5;padding:0}.markdown-content ol,.markdown-content ul{margin:.5rem 0;padding-left:1.5rem}.markdown-content li{margin:.25rem 0}.markdown-content blockquote{border-left:3px solid #555;color:#aaa;margin:.75rem 0;padding-left:1rem}.markdown-content a{color:#8ab4f8;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{font-weight:600;margin:1rem 0 .5rem}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child{margin-top:0}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}.message.user .message-content{background:#ffffff1a;border:1px solid #ffffff26;color:#fff}.message.assistant .message-content{background:#ffffff08;border:1px solid #333;color:#e5e5e5}.message-content.loading{padding:1rem 1.25rem}.typing-indicator{align-items:center;display:flex;gap:4px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#666;border-radius:50%;height:6px;width:6px}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.error-message{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:#f87171;font-size:.85rem;margin:0 1rem;padding:.75rem 1rem}.input-container{background:#0000004d;border-top:1px solid #333;display:flex;gap:.75rem;padding:1rem}.chat-input{background:#ffffff0d;border:1px solid #333;border-radius:6px;color:#fff;flex:1 1;font-family:inherit;font-size:.95rem;outline:none;padding:.75rem 1rem;transition:border-color .2s ease,background .2s ease}.chat-input::placeholder{color:#666}.chat-input:focus{background:#ffffff14;border-color:#555}.chat-input:disabled{cursor:not-allowed;opacity:.5}.send-button{background:#fff;border:none;border-radius:6px;color:#000;cursor:pointer;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.send-button:hover:not(:disabled){background:#e5e5e5}.send-button:disabled{cursor:not-allowed;opacity:.4}.chat-footnote{color:#666;font-size:.8rem;font-style:italic;margin:1rem 0 0;text-align:center}@media (max-width:768px){.chat-section{padding:3rem 1.5rem}.chat-title{font-size:2rem}.chat-intro{font-size:1rem}.chat-container{max-height:500px;min-height:350px}.messages-container{padding:1rem}.message{max-width:90%}.message-content{font-size:.9rem}.input-container{padding:.75rem}.chat-input{font-size:.9rem;padding:.65rem .85rem}.send-button{padding:.65rem 1.25rem}}@media (max-width:480px){.chat-section{padding:2rem 1rem}.chat-container{max-height:450px;min-height:300px}.message{max-width:95%}.input-container{flex-direction:column}.send-button{width:100%}}.not-found{background-color:#000;min-height:100vh;text-align:center}.not-found,.not-found-content{display:flex;flex-direction:column}.not-found-content{align-items:center;flex:1 1;gap:1.5rem;justify-content:center;padding:4rem 2rem}.not-found-content h1{color:#fff;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:6rem;font-weight:600;letter-spacing:.05em;margin:0;text-shadow:0 2px 10px #fff3}.not-found-content p{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#e5e5e5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.5rem;font-weight:400;letter-spacing:-.01em;margin:0}.not-found-content a{background:#ffffff0d;border:1px solid #ffffff4d;border-radius:6px;color:#fff;display:inline-block;font-family:Bitcount Grid Single,SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:1rem;font-weight:500;letter-spacing:.03em;margin-top:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.not-found-content a:hover{background:#ffffff1a;border-color:#ffffff80;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.not-found-content a:active{transform:translateY(0)}@media (max-width:768px){.not-found-content{padding:3rem 1.5rem}.not-found-content h1{font-size:4rem}.not-found-content p{font-size:1.25rem}.not-found-content a{font-size:.95rem;padding:.65rem 1.25rem}}@media (max-width:480px){.not-found-content{gap:1rem;padding:2rem 1rem}.not-found-content h1{font-size:3rem}.not-found-content p{font-size:1.125rem}.not-found-content a{font-size:.9rem;padding:.6rem 1.15rem}}
/*# sourceMappingURL=main.ca946bb9.css.map*/