@font-face{font-family:BPdotsSquareVF;src:url(BPdotsSquareVF.25fec6ee.ttf)format("truetype");font-display:swap}@font-face{font-family:FunnelDisplay;src:url(FunnelDisplay.db902d50.woff2)}@font-face{font-family:ZxGamut;src:url(ZxGamut-Variable.6528b92f.woff2);font-display:swap}@font-face{font-family:CreatoDisplay;src:url(CreatoDisplay-ExtraBold.a198c176.otf)format("opentype");font-display:swap}html,body{background-color:#171717;width:100%;height:100%;margin:0;padding:0;overflow:hidden}.about-container:after{content:"";pointer-events:none;z-index:1000;background:linear-gradient(#17171700 0%,#171717 100%);width:100%;height:10vh;position:fixed;bottom:0;left:0}.about-header{text-align:left}@media (width<=768px){.about-header{text-align:center}}.profile-image-container{aspect-ratio:1024/1280;width:50%;margin:0 auto;display:block;position:relative}.profile-image{opacity:0;width:100%;height:auto;transition:opacity .4s ease-in-out;display:block}.profile-image.loaded{opacity:1}.profile-image-container:before,.profile-image-container:after{content:"";border:2px solid #8b0000;width:20px;height:20px;position:absolute}.profile-image-container:before{border-bottom:none;border-right:none;top:-6px;left:-6px}.profile-image-container:after{border-top:none;border-left:none;bottom:-6px;right:-6px}.cv-section h2{border-bottom:2px solid #2c5aa0;padding-bottom:.5rem;padding-left:1.2em;position:relative}.cv-section h2:before{content:"▶";color:#8b0000;font-size:.7em;position:absolute;top:.3em;left:0}a{text-align:center;width:100%;margin:0;padding:0;font-family:BPdotsSquareVF;font-size:2.5vmin;font-weight:900;display:block;position:relative}a:link{color:#4a90e2}a:visited{color:#f5be07}.main-paragraph a{width:auto;font-family:inherit;font-weight:inherit;font-size:inherit;text-align:inherit;display:inline;position:static}.main-paragraph a:link{color:#4a90e2}.main-paragraph a:visited{color:#f5be07}nav{z-index:9999;background:0 0;justify-content:center;align-items:center;width:100%;display:flex;position:fixed}.nav-mobile{bottom:5vmin}.vertical-center{margin:auto;padding:auto;position:absolute;top:50%;transform:translateY(-50%)}.horizontal-center{margin:auto;padding:auto;position:absolute;left:50%;transform:translate(-50%)}.app{opacity:0;transition:opacity .2s cubic-bezier(0,.55,.45,1)}.route-mobile{font-size:5vmin}.route-active{color:#faa000;transition:color .3s,text-shadow .8s,box-shadow .8s}.route-active:hover{color:#faa000;text-shadow:0 0 16px #faa000}.main-paragraph{color:#fafafa;text-align:left;width:100%;margin:.5vmin 0 0;padding:auto;font-family:ZxGamut;font-size:1.8vmin;font-weight:400;position:relative}.text-center{text-align:center}h1{color:#fafafa;text-align:left;width:100%;margin:0;padding:auto;font-family:BPdotsSquareVF;font-size:4vmin;font-weight:800;position:relative}h2{color:#fafafa;text-align:left;width:100%;margin:1.5vmin 0 .5vmin;padding:1vmin 0;font-family:BPdotsSquareVF;font-size:3vmin;font-weight:800;position:relative}h3{color:#fafafa;text-align:left;margin:.5vmin 0;padding:auto;font-family:BPdotsSquareVF;font-size:2.5vmin;font-weight:900;position:relative}.about-container{width:100%;height:100vh;display:flex;overflow:hidden}.about-bio{padding:3% 0% 3% 3%;padding-bottom:max(3%,env(keyboard-inset-height,0px));scrollbar-width:none;-ms-overflow-style:none;flex:1;padding-bottom:max(3%,80px);overflow-y:auto}.about-bio::-webkit-scrollbar{display:none}.about-cv{padding:3% 3% 3% 5%;padding-bottom:max(3%,env(keyboard-inset-height,0px));scrollbar-width:none;-ms-overflow-style:none;flex:1.5;padding-bottom:max(3%,80px);overflow-y:auto}.about-cv::-webkit-scrollbar{display:none}.cv-section{margin-bottom:2vmin}.breadcrumb-nav{z-index:9998;color:#fafafa;backdrop-filter:blur(4px);pointer-events:auto;user-select:none;background:#17171799;border:1px solid #404040;align-items:center;padding:10px 14px;font-family:BPdotsSquareVF;font-size:2.4vmin;font-weight:600;display:flex;position:fixed;bottom:20px;left:20px}body.lightbox-active .breadcrumb-nav{z-index:99999}.breadcrumb-text{color:inherit;font-family:inherit}.breadcrumb-segment{color:#b0b0b0;text-decoration:none;transition:color .2s}.breadcrumb-segment:hover{color:#4a90e2;cursor:pointer}.breadcrumb-separator{color:gray;pointer-events:none}@media (width<=768px){html,body{height:auto;overflow:auto}.breadcrumb-nav{padding:8px;font-size:4vmin;bottom:8px;left:8px}.about-container{flex-direction:column;height:auto;overflow:visible}.about-bio{flex:none;padding:5% 5% 2%;overflow:visible}.about-cv{flex:none;padding:5% 5% 20%;overflow:visible}h1{width:100%;margin:0;font-size:5vmin}h2{width:100%;margin:1vmin 0 0;font-size:3.6vmin}h3{font-size:3vmin}.main-paragraph{width:100%;margin:2vmin 0 0;font-size:11px}}.photo-gallery-container{z-index:1;pointer-events:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;box-sizing:border-box;opacity:1;background:0 0;width:100vw;height:100%;padding:120px 10px 0;transition:opacity .3s ease-in-out;position:fixed;top:0;left:0;overflow:hidden auto}.photo-gallery-container.lightbox-hidden{opacity:0;pointer-events:none}.photo-gallery-grid{flex-wrap:wrap;justify-content:center;gap:20px;width:calc(100% - 40px);max-width:1600px;margin:0 20px;padding:0 0 30px;display:flex}.photo-gallery-item{aspect-ratio:1;cursor:pointer;width:calc(25% - 15px);position:relative}.photo-gallery-image{object-fit:cover;opacity:0;pointer-events:auto;-webkit-user-drag:none;user-select:none;background-color:#28282d;border:1px solid #64646480;width:100%;height:100%;transition:opacity .4s ease-in-out,border-color .2s}.photo-gallery-image.loaded{opacity:.8}.photo-gallery-image:hover{opacity:1;border-color:#4a90e6cc}@media (width<=768px){.photo-gallery-container{padding:60px 0 0}.photo-gallery-grid{flex-wrap:wrap;justify-content:center;gap:5px;width:100%;max-width:1200px;margin:0 -1px;padding:0 0 60px;display:flex}.photo-gallery-item{aspect-ratio:1;cursor:pointer;width:calc(50% - 15px);position:relative}.photo-gallery-image:hover{opacity:.8;border-color:#64646480}}.help-button{z-index:9998;cursor:pointer;user-select:none;backdrop-filter:blur(4px);background:#17171799;border:1px solid #4a90e2;border-radius:0;place-items:center;width:fit-content;min-width:2.4vmin;padding:10px;font-family:BPdotsSquareVF;font-size:2.4vmin;font-weight:600;line-height:1;transition:all .3s;display:grid;position:fixed;bottom:20px;right:20px}.help-button:hover{background:#4a90e633;border-color:#74a0e6;transform:scale(1.05)}.help-button-icon{color:#4a90e2;text-align:center;width:100%;line-height:1;transition:color .3s;display:block;transform:translate(1px,1px)}.help-button:hover .help-button-icon{color:#74a0e6}.help-overlay{z-index:99998;opacity:0;visibility:hidden;pointer-events:none;background:0 0;justify-content:center;align-items:center;width:100vw;height:100vh;transition:all .3s;display:flex;position:fixed;top:0;left:0}.help-overlay-open{opacity:1;visibility:visible;pointer-events:auto;background:#000c}.help-popup{backdrop-filter:blur(10px);background:#171717;border:2px solid #404040;border-radius:0;width:90%;max-width:768px;max-height:80vh;transition:transform .3s;overflow:hidden;transform:scale(.8)translateY(20px)}.help-popup-open{transform:scale(1)translateY(0)}.help-popup-header{background:#4a90e61a;border-bottom:1px solid #404040;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.help-popup-header h2{color:#fafafa;margin:0;font-family:BPdotsSquareVF;font-size:24px;font-weight:800}.help-popup-close{color:#b0b0b0;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:all .2s;display:flex}.help-popup-close:hover{color:#fafafa;background:#ffffff1a}.help-popup-content{scrollbar-width:none;-ms-overflow-style:none;max-height:60vh;padding:24px;overflow-y:auto}.help-popup-content::-webkit-scrollbar{display:none}.faq-item{margin-bottom:24px}.faq-item:last-child{margin-bottom:0}.faq-question{color:#4a90e2;margin-bottom:8px;font-family:BPdotsSquareVF;font-size:16px;font-weight:700;line-height:1.4}.faq-answer{color:#d0d0d0;border-left:2px solid #4a90e64d;padding-left:12px;font-family:ZxGamut;font-size:14px;font-weight:400;line-height:1.6}.faq-answer a{font-family:inherit;font-weight:inherit;font-size:inherit;line-height:inherit;color:#4a90e2;width:auto;text-align:inherit;margin:0;padding:0;text-decoration:underline;display:inline;position:static}.faq-answer a:visited{color:#f5be07}.faq-answer a:hover{color:#74a0e6;text-decoration:none}.contact-button{z-index:9998;cursor:pointer;user-select:none;backdrop-filter:blur(4px);background:#17171799;border:1px solid #d2691e;border-radius:0;place-items:center;width:fit-content;min-width:2.4vmin;padding:10px;font-family:BPdotsSquareVF;font-size:2.4vmin;font-weight:600;line-height:1;transition:all .3s;display:grid;position:fixed;bottom:20px;right:80px}.contact-button:hover{background:#d2691e33;border-color:#f5be07;transform:scale(1.05)}.contact-button-icon{color:#d2691e;text-align:center;width:100%;line-height:1;transition:color .3s;display:block;transform:translate(1px,1px)}.contact-button:hover .contact-button-icon{color:#f5be07}.contact-overlay{z-index:99999;opacity:0;visibility:hidden;pointer-events:none;background:0 0;justify-content:center;align-items:center;width:100vw;height:100vh;transition:all .3s;display:flex;position:fixed;top:0;left:0}.contact-overlay-open{opacity:1;visibility:visible;pointer-events:auto;background:#000c}.contact-popup{backdrop-filter:blur(10px);background:#171717;border:2px solid #404040;border-radius:0;width:90%;max-width:768px;max-height:80vh;transition:transform .3s;overflow:hidden;transform:scale(.8)translateY(20px)}.contact-popup-open{transform:scale(1)translateY(0)}.contact-popup-header{background:#d2691e1a;border-bottom:1px solid #404040;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.contact-popup-header h2{color:#fafafa;margin:0;font-family:BPdotsSquareVF;font-size:24px;font-weight:800}.contact-popup-close{color:#b0b0b0;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:all .2s;display:flex}.contact-popup-close:hover{color:#fafafa;background:#ffffff1a}.contact-popup-content{scrollbar-width:none;-ms-overflow-style:none;max-height:60vh;padding:24px;overflow-y:auto}.contact-popup-content::-webkit-scrollbar{display:none}.contact-section{margin-bottom:32px}.contact-section:last-child{margin-bottom:0}.contact-section-title{color:#d2691e;margin-bottom:12px;font-family:BPdotsSquareVF;font-size:18px;font-weight:700;line-height:1.4}.contact-section-content{color:#d0d0d0;border-left:2px solid #d2691e4d;padding-left:12px;font-family:ZxGamut;font-size:14px;font-weight:400;line-height:1.6}.contact-section-content h3{color:#f5be07;margin:16px 0 8px;font-family:BPdotsSquareVF;font-size:16px;font-weight:600;line-height:1.4}.contact-section-content h3:first-child{margin-top:0}.contact-section-content p{margin:12px 0;line-height:1.6}.contact-section-content a{font-family:inherit;font-weight:inherit;font-size:inherit;line-height:inherit;color:#d2691e;width:auto;text-align:inherit;margin:0;padding:0;text-decoration:underline;display:inline;position:static}.contact-section-content a:visited{color:#f5be07}.contact-section-content a:hover{color:#ff8c00;text-decoration:none}@media (width<=768px){.help-button{width:fit-content;min-width:4vmin;padding:8px;font-size:4vmin;bottom:8px;right:8px}.help-popup{width:95%;margin:0 8px}.help-popup-header{padding:16px 20px}.help-popup-header h2{font-size:20px}.help-popup-content{padding:20px}.faq-question{font-size:15px}.faq-answer{font-size:13px}.faq-answer a{font-size:inherit}.contact-button{width:fit-content;min-width:4vmin;padding:8px;font-size:4vmin;bottom:8px;right:55px}.contact-popup{width:95%;margin:0 8px}.contact-popup-header{padding:16px 20px}.contact-popup-header h2{font-size:20px}.contact-popup-content{padding:20px}.contact-section-title{font-size:16px}.contact-section-content{font-size:13px}.contact-section-content h3{font-size:14px}.contact-section-content a{font-size:inherit}}body.help-active{overflow:hidden}body.help-active #app,body.help-active #breadcrumb-container,body.help-active canvas,body.help-active p5-element{pointer-events:none}body.help-active .help-button,body.help-active .contact-button,body.contact-active .help-button,body.contact-active .contact-button{opacity:.3}body.help-active .help-overlay,body.help-active .help-popup{pointer-events:auto}body.contact-active{overflow:hidden}body.contact-active #app,body.contact-active #breadcrumb-container,body.contact-active canvas,body.contact-active p5-element{pointer-events:none}body.contact-active .contact-overlay,body.contact-active .contact-popup{pointer-events:auto}
/*# sourceMappingURL=blap64.50b3b94e.css.map */
