.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.portfolio-map-panel{margin-top:2px}.experience-timeline{--experience-label-width:160px;--experience-column-gap:44px;--experience-line:#2f818b;--experience-rail-shift:31px;--experience-contact-connector-width:clamp(220px,25vw,370px);--experience-contact-connector-end-y:-34px;--experience-contact-connector-turn-y:-6px;--experience-contact-connector-radius:16px;scrollbar-width:none;color:#162d3d;width:calc(100% + 2*clamp(20px,5vw,72px));height:min(596px,max(420px,100svh - 218px));min-height:0;margin-left:calc(-1*clamp(20px,5vw,72px) + 30px);margin-right:calc(-1*clamp(20px,5vw,72px) - 30px);padding:12px 22px 23px 24px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;position:relative;overflow:hidden auto;transform:translate(25px,15px)}.experience-timeline::-webkit-scrollbar{display:none}.experience-timeline:before{top:calc(var(--experience-contact-connector-turn-y) + var(--experience-contact-connector-radius) - var(--experience-rail-shift));bottom:14px;left:calc(24px + var(--experience-label-width) + 50px - 1px);content:"";background:var(--experience-line);width:1px;transform:translateY(var(--experience-rail-shift));opacity:.86;position:absolute}.experience-timeline:after{bottom:0;left:calc(24px + var(--experience-label-width) + 50px - 1px);content:"";border-left:1px dashed var(--experience-line);width:1px;height:28px;transform:translateY(var(--experience-rail-shift));opacity:.86;position:absolute}.experience-timeline__contact-connector{z-index:1;top:calc(var(--experience-contact-connector-end-y) - var(--experience-rail-shift));left:calc(24px + var(--experience-label-width) + 50px - 1px);width:var(--experience-contact-connector-width);height:calc(var(--experience-contact-connector-turn-y) - var(--experience-contact-connector-end-y) + var(--experience-contact-connector-radius));transform:translateY(var(--experience-rail-shift));opacity:.86;pointer-events:none;position:absolute;-webkit-mask-image:linear-gradient(0deg,#000 0 48%,#0000 100%);mask-image:linear-gradient(0deg,#000 0 48%,#0000 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.experience-timeline__contact-connector>span{display:block;position:absolute}.experience-timeline__contact-connector-left-turn{top:calc(100% - var(--experience-contact-connector-radius));width:var(--experience-contact-connector-radius);height:var(--experience-contact-connector-radius);border-top:1px solid var(--experience-line);border-left:1px solid var(--experience-line);border-top-left-radius:var(--experience-contact-connector-radius);left:0}.experience-timeline__contact-connector-horizontal{top:calc(100% - var(--experience-contact-connector-radius));right:var(--experience-contact-connector-radius);left:var(--experience-contact-connector-radius);background:var(--experience-line);height:1px}.experience-timeline__contact-connector-right-turn{width:var(--experience-contact-connector-radius);height:calc(100% - var(--experience-contact-connector-radius));border-right:1px solid var(--experience-line);border-bottom:1px solid var(--experience-line);border-bottom-right-radius:var(--experience-contact-connector-radius);top:0;right:0;transform:translateY(1px)}.experience-entry{grid-template-columns:var(--experience-label-width) minmax(0,1fr);column-gap:var(--experience-column-gap);min-height:175px;display:grid;position:relative}.experience-entry+.experience-entry{margin-top:22px}.experience-entry:last-of-type,.experience-entry:last-of-type .experience-card{min-height:167px}.experience-entry__period{color:#142d3f;letter-spacing:-.45px;text-align:right;align-self:start;margin-top:29px;padding-left:0;font:700 23px/1.04 Georgia,Times New Roman,serif;transform:translate(2px)}.experience-entry__period>span:not(.experience-entry__rule){display:block}.experience-entry__rule{background:var(--experience-line);width:26px;height:2px;margin-top:15px;margin-left:auto;display:block}.experience-entry__node{z-index:2;top:50%;left:calc(var(--experience-label-width) + 50px - 1px);background:#fffffff2;border:1px solid #d9e2e2;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 5px #15343e14}.experience-entry:first-of-type .experience-entry__period{margin-top:35px}.experience-entry__node span{background:#287783;border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 1px #2877830d,0 2px 4px #1c545f2e}.experience-card{background:#ffffffe6;border:1px solid #e0e3e2;border-radius:12px;grid-template-columns:120px 1px minmax(0,1fr);justify-self:start;align-items:center;width:100%;max-width:924px;min-height:175px;padding:0 68px 0 20px;display:grid;position:relative;transform:translate(50px);box-shadow:0 7px 17px #2c373a13,inset 0 1px #fffffff5}.experience-card__brand{place-items:start center;width:120px;height:100%;padding-top:40px;display:grid;position:relative}.experience-card__divider{background:#e6e8e7;width:1px;height:112px}.experience-card__body{min-width:0;padding-left:25px;transform:translateY(4px)}.experience-card h3{color:#142d3f;letter-spacing:-.55px;margin:0;font:700 25px/1.08 Georgia,Times New Roman,serif}.experience-card__role{color:#267481;letter-spacing:-.1px;margin:5px 0 0;font:600 16px/1.2 Georgia,Times New Roman,serif}.experience-card__description{color:#5e6c78;margin:8px 0 0;font:400 14px/1.35 Inter,ui-sans-serif,system-ui,sans-serif}.experience-card__tags{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.experience-card__tags span{color:#286477;white-space:nowrap;background:#edf3f3;border-radius:9px;align-items:center;min-height:26px;padding:4px 13px;font:500 12px/1 Inter,ui-sans-serif,system-ui,sans-serif;display:inline-flex}.experience-card__arrow{color:#287783;background:#ffffffc7;border:1px solid #dce4e4;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:25px;right:24px}.experience-card__arrow svg{width:21px;height:21px}.experience-logo{flex:none;display:block}.experience-logo--nokia{object-fit:contain;width:117px;height:auto;margin-top:0;margin-left:0;position:absolute;top:50%;left:calc(50% - 8px);transform:translate(-50%,-50%)}.experience-logo--auxilium{object-fit:contain;width:114px;height:114px;margin-top:-5px;margin-left:0}.experience-logo--shad{object-fit:contain;width:90px;height:90px;margin-top:0;margin-left:-5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.experience-logo--hack{color:#fff;background:#153246;border-radius:50%;place-items:center;width:44px;height:44px;margin-top:-3px;margin-left:14px;font:400 28px/1 Georgia,Times New Roman,serif;display:grid;box-shadow:inset 0 1px #ffffff1f,0 3px 5px #142f3d29}.experience-logo--waterloo{clip-path:polygon(12% 0,88% 0,100% 18%,93% 73%,50% 100%,7% 73%,0 18%);background:#153246;width:44px;height:54px;margin-left:21px;position:relative;overflow:hidden}.experience-logo--waterloo:before{content:"";clip-path:polygon(8% 0,92% 0,100% 17%,91% 71%,50% 100%,9% 71%,0 17%);background:#f5f4ee;position:absolute;inset:9px 4px 4px}.experience-logo__crest-name{z-index:1;color:#f5f4ee;letter-spacing:.2px;text-align:center;width:36px;font:700 5px/1 Arial,sans-serif;position:absolute;top:4px;left:4px}.experience-logo__crest-field{z-index:2;clip-path:polygon(8% 0,92% 0,100% 14%,89% 69%,50% 100%,11% 69%,0 14%);background:#153246;display:block;position:absolute;inset:17px 8px 8px;overflow:hidden}.experience-logo__crest-chevron{clip-path:polygon(0 0,50% 100%,100% 0,100% 45%,50% 100%,0 45%);background:#f5f4ee;height:8px;position:absolute;top:18px;left:3px;right:3px}.experience-logo__crest-flower{color:#c6a24a;font:700 10px/1 Arial,sans-serif;position:absolute;top:7px;left:50%;transform:translate(-50%)}.search-panel.map-search-panel{height:auto;min-height:100svh;padding-bottom:24px;display:block}.search-panel.map-search-panel .map-results,.search-panel.map-search-panel #mapPanel,.search-panel.map-search-panel .places-map{min-height:0}.search-panel.map-search-panel .map-results,.search-panel.map-search-panel #mapPanel{flex:none;display:block}.search-panel.map-search-panel .places-map{flex:none;height:clamp(500px,72svh,760px)}.places-map{background:#020611;border:1px solid #41485e21;border-radius:22px;width:100%;height:clamp(500px,72svh,760px);position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,0 16px 36px #2b26461f}.personal-globe-root,.personal-globe{position:absolute;inset:0}.personal-globe{border-radius:inherit;isolation:isolate;background:radial-gradient(circle,#2b578c57,#0000 45%),#020611;overflow:hidden}.personal-globe-map{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.leaflet-map{cursor:grab;touch-action:none;background:#dbe7e4}.leaflet-map:active{cursor:grabbing}.leaflet-map .leaflet-tile-pane{filter:saturate(.82)contrast(.97)}.leaflet-map .leaflet-control-zoom{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#040b16d6;border:1px solid #b7d3f43d;border-radius:10px;margin:12px;overflow:hidden;box-shadow:0 8px 20px #0000004d}.leaflet-map .leaflet-control-zoom a{color:#e7f0fd;background:0 0;border:0;width:31px;height:29px;font:500 18px/29px Roboto,sans-serif}.leaflet-map .leaflet-control-zoom a+a{border-top:1px solid #b7d3f42e}.leaflet-map .leaflet-control-zoom a:hover{color:#fff;background:#36587e75}.leaflet-map .leaflet-control-zoom a:focus-visible{outline-offset:-3px;outline:2px solid #82adff}.leaflet-pin-marker{width:34px;height:40px;overflow:visible}.leaflet-pin-marker__button{--pin-color:#75aaff;--pin-light:#d8e8ff;--pin-dark:#345b9e;--pin-border:#ffffffe0;--stem-color:#91a3bc;--stem-highlight:#f1f7ff;--stem-tip:#71839d;cursor:pointer;filter:drop-shadow(0 3px 5px #00000061);background:0 0;border:0;width:34px;height:40px;padding:0;transition:opacity .18s,transform .18s;display:block;position:relative}.leaflet-pin-marker--school .leaflet-pin-marker__button{--pin-color:#e7b82f;--pin-light:#fff1a5;--pin-dark:#2a2d32;--pin-border:#34373d;--stem-color:#8d96a3;--stem-highlight:#edf1f5;--stem-tip:#626b78}.leaflet-pin-marker--home .leaflet-pin-marker__button{--pin-color:#d92f3f;--pin-light:#ff9da4;--pin-dark:#82101d;--pin-border:#68101a;--stem-color:#91a3bc;--stem-highlight:#f1f7ff;--stem-tip:#71839d}.leaflet-pin-marker__tack{width:34px;height:38px;position:absolute;top:1px;left:50%;transform:translate(-50%)}.leaflet-pin-marker__head{z-index:2;border:1px solid var(--pin-border);background:radial-gradient(ellipse 9px 6px at 29% 20%,#ffffffd6 0%,#ffffff61 34%,#fff0 80%),linear-gradient(145deg,var(--pin-light),var(--pin-color) 55%,var(--pin-dark));border-radius:50% 50% 42% 42%;width:28px;height:20px;position:absolute;top:1px;left:50%;transform:translate(-50%);box-shadow:inset 1px 1px 1px #ffffff61,inset -2px -3px 4px #0000002e,0 2px 5px #02070e8f}.leaflet-pin-marker__head:before{content:"";filter:blur(1px);background:#ffffff70;border-radius:50%;width:11px;height:6px;position:absolute;top:2px;left:5px;transform:rotate(-18deg)}.leaflet-pin-marker__head:after{content:"";filter:blur(.2px);background:#ffffffbd;border-radius:999px;width:5px;height:3px;position:absolute;top:4px;left:7px;transform:rotate(-18deg)}.leaflet-pin-marker__stem{z-index:1;background:linear-gradient(90deg,var(--stem-color),var(--stem-highlight) 48%,var(--stem-color));clip-path:polygon(12% 0,88% 0,69% 78%,50% 100%,31% 78%);border:0;border-radius:0;width:8px;height:20px;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:0 1px 2px #02070e7a}.leaflet-pin-marker__stem:after{content:"";background:#ffffff47;border-radius:999px;width:1px;height:11px;position:absolute;top:3px;left:2px}.leaflet-pin-marker__button:hover,.leaflet-pin-marker__button:focus-visible,.leaflet-pin-marker__button.is-selected{transform:scale(1.12)}.leaflet-pin-marker__button.is-inactive{opacity:.42}.leaflet-pin-marker:focus-visible .leaflet-pin-marker__button{outline-offset:2px;outline:2px solid #fff}.leaflet-pin-marker__button.is-selected .leaflet-pin-marker__head{box-shadow:0 0 0 2px #fff3,0 0 12px var(--pin-color)}.personal-globe.is-loading .leaflet-map{opacity:.72}.personal-globe.is-ready .leaflet-map{opacity:1}.globe-reset{z-index:1100;color:#dce8f8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#040b16c2;border:1px solid #b7d3f438;border-radius:10px;align-items:center;gap:7px;height:32px;padding:0 10px;font:500 10px/1 Roboto,sans-serif;display:flex;position:absolute;top:12px;right:12px;box-shadow:inset 0 1px #ffffff0f,0 8px 20px #0000004d}.globe-reset:hover{background:#122339e0}.globe-reset:focus-visible{outline-offset:2px;outline:2px solid #82adff}.globe-reset svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:14px}.globe-hint{z-index:1100;color:#cddbeeb8;letter-spacing:.02em;white-space:nowrap;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070ead;border:1px solid #aacaee26;border-radius:999px;margin:0;padding:5px 10px;font:400 9px/1.2 Roboto,sans-serif;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.globe-hint i{color:#6f9ae0;padding:0 3px;font-style:normal}.location-marker{--marker-accent:#75aaff;color:#eef4fc;cursor:pointer;background:0 0;border:0;border-radius:50%;width:28px;height:28px;padding:0;transition:opacity .18s;display:block;position:relative}.location-marker--home{--marker-accent:#c293ff}.location-marker__anchor{z-index:3;background:#dfe8f3;border:1px solid #ffffffe6;border-radius:50%;width:8px;height:8px;transition:background .16s,box-shadow .16s,transform .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px #87addc57}.location-marker__pulse{border:1px solid var(--marker-accent);opacity:.13;border-radius:50%;width:18px;height:18px;transition:width .16s,height .16s,opacity .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.location-marker__connection{z-index:1;width:var(--marker-line-length);height:1px;transform:rotate(var(--marker-line-angle));transform-origin:0;background:linear-gradient(90deg,var(--marker-accent),#bbd3ef61);opacity:.72;pointer-events:none;transition:opacity .16s;position:absolute;top:50%;left:50%}.location-marker__label{z-index:2;min-height:22px;transform:translate(calc(-50% + var(--marker-label-x)), calc(-50% + var(--marker-label-y) + 3px));color:#edf4ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;opacity:.96;pointer-events:none;background:#040b15e6;border:1px solid #c3daf347;border-radius:999px;align-items:center;gap:5px;padding:3px 7px 3px 3px;font:500 8px/1.1 Roboto,sans-serif;transition:opacity .16s,transform .16s;display:flex;position:absolute;top:50%;left:50%;box-shadow:0 6px 15px #00000057}.location-marker__label-icon{color:#fff;background:var(--marker-accent);border-radius:50%;place-items:center;width:15px;height:15px;font:700 9px/1 Roboto,sans-serif;display:grid}.location-marker__label-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:9px}.location-marker:hover .location-marker__anchor,.location-marker:focus-visible .location-marker__anchor,.location-marker.is-selected .location-marker__anchor{background:var(--marker-accent);box-shadow:0 0 6px color-mix(in srgb,var(--marker-accent) 48%,transparent);transform:translate(-50%,-50%)scale(1.08)}.location-marker:hover .location-marker__pulse,.location-marker:focus-visible .location-marker__pulse{opacity:.24;width:20px;height:20px}.location-marker.is-selected .location-marker__pulse{opacity:.32;width:22px;height:22px;animation:2s ease-out infinite markerPulse}.location-marker:hover .location-marker__connection,.location-marker:focus-visible .location-marker__connection,.location-marker.is-selected .location-marker__connection,.location-marker:hover .location-marker__label,.location-marker:focus-visible .location-marker__label,.location-marker.is-selected .location-marker__label{opacity:1}.location-marker:hover .location-marker__label,.location-marker:focus-visible .location-marker__label,.location-marker.is-selected .location-marker__label{transform:translate(calc(-50% + var(--marker-label-x)), calc(-50% + var(--marker-label-y)))}.location-marker.is-inactive{opacity:.38}.location-marker.is-inactive:hover,.location-marker.is-inactive:focus-visible{opacity:.82}.location-marker:focus-visible{outline-offset:2px;outline:2px solid #fff}@keyframes markerPulse{0%{opacity:.34;transform:translate(-50%,-50%)scale(.72)}75%,to{opacity:0;transform:translate(-50%,-50%)scale(1.18)}}.location-card{z-index:1100;color:#aebbd0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#0d1c30f5,#050c17f5);border:1px solid #aacff647;border-radius:15px;width:min(250px,100% - 24px);padding:14px 36px 14px 15px;animation:.22s ease-out locationCardIn;position:absolute;bottom:12px;right:12px;box-shadow:0 16px 36px #0000007a,inset 0 1px #ffffff0f}.location-card--anchored{animation:.22s ease-out locationCardInAnchored;bottom:auto;right:auto;transform:translate(-50%,calc(-100% - 48px))}.location-card--home{border-color:#c091ff52}.location-card__close{color:#b9c6d8;cursor:pointer;background:#ffffff0a;border:1px solid #c2d8f326;border-radius:8px;place-items:center;width:24px;height:24px;padding:0;font:400 17px/1 Roboto,sans-serif;display:grid;position:absolute;top:8px;right:8px}.location-card__close:hover{color:#fff;background:#ffffff1a}.location-card__close:focus-visible{outline-offset:2px;outline:2px solid #82adff}.location-card__eyebrow{color:#72aaff;letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px;font:600 9px/1.2 Roboto,sans-serif;display:block}.location-card--home .location-card__eyebrow{color:#c39aff}.location-card h3{color:#f4f8ff;margin:0 0 3px;font:600 14px/1.25 Roboto,sans-serif}.location-card p{margin:0}.location-card__name{color:#8da0ba;font:400 10px/1.35 Roboto,sans-serif}.location-card__description{color:#bdc8d7;font:400 10px/1.45 Roboto,sans-serif;margin-top:7px!important}@keyframes locationCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes locationCardInAnchored{0%{opacity:0;transform:translate(-50%,calc(-100% - 40px))}to{opacity:1;transform:translate(-50%,calc(-100% - 48px))}}@media (width<=760px){.experience-timeline{--experience-label-width:105px;--experience-column-gap:16px;height:calc(100svh - 208px);padding-left:16px;padding-right:12px}.experience-timeline:before,.experience-timeline:after{left:calc(16px + var(--experience-label-width) + 50px - 1px)}.experience-timeline__contact-connector{left:calc(16px + var(--experience-label-width) + 50px - 1px);width:clamp(150px,40vw,220px)}.experience-entry__node{left:calc(var(--experience-label-width) + 50px - 1px)}.experience-entry__period{font-size:18px;transform:translate(-42px)}.experience-card{grid-template-columns:92px 1px minmax(0,1fr);max-width:none;padding-left:12px;padding-right:52px}.experience-card__brand{justify-items:center;width:92px;padding-top:38px;position:relative}.experience-card__body{padding-left:14px}.experience-card h3{font-size:20px}.experience-card__role{font-size:14px}.experience-card__description{font-size:12px}.experience-card__tags{gap:6px;margin-top:10px}.experience-card__tags span{padding-left:9px;padding-right:9px;font-size:10px}.experience-card__arrow{width:36px;height:36px;top:15px;right:12px}.experience-card__arrow svg{width:18px;height:18px}.experience-logo--waterloo{transform-origin:0 0;margin-left:9px;transform:scale(.82)}.experience-logo--nokia{width:77px;height:auto;margin-top:0;margin-left:0;left:calc(50% - 4px)}.experience-logo--auxilium{width:77px;height:77px;margin-top:-1px;margin-left:0}.experience-logo--shad{width:77px;height:auto;margin-top:0;margin-left:-5px}.experience-logo--hack{width:38px;height:38px;margin-top:0;margin-left:8px;font-size:24px}}@media (width<=600px){.search-panel.map-search-panel .places-map{flex:none;height:560px}.places-map{border-radius:18px;height:560px}.globe-reset span{display:none}.globe-reset{justify-content:center;width:32px;padding:0}}@media (prefers-reduced-motion:reduce){.location-card{transition:none;animation:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-normal:400;--font-weight-medium:500;--leading-tight:1.25;--leading-snug:1.375;--radius-sm:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.z-20{z-index:20}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-0{margin-inline:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-\[10px\]{margin-top:10px}.mr-1{margin-right:var(--spacing)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-1{height:var(--spacing)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-\[58px\]{height:58px}.h-\[60px\]{height:60px}.h-full{height:100%}.min-h-\[1\.55em\]{min-height:1.55em}.min-h-\[145px\]{min-height:145px}.min-h-\[178px\]{min-height:178px}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-\[58px\]{width:58px}.w-\[72px\]{width:72px}.w-full{width:100%}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-\[58px_minmax\(0\,1fr\)\]{grid-template-columns:58px minmax(0,1fr)}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.gap-y-5{row-gap:calc(var(--spacing) * 5)}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[19px\]{border-radius:19px}.rounded-\[24px\]{border-radius:24px}.rounded-full{border-radius:2147483647px}.rounded-none{border-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[\#eadfd8\]{border-color:#eadfd8}.border-\[\#ecebe8\]{border-color:#ecebe8}.border-\[rgba\(20\,20\,30\,0\.04\)\]{border-color:#14141e0a}.border-\[rgba\(38\,48\,68\,0\.035\)\]{border-color:#26304409}.bg-\[rgba\(255\,255\,255\,0\.96\)\]{background-color:#fffffff5}.bg-black{background-color:var(--color-black)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-\[radial-gradient\(circle_at_35\%_25\%\,\#c68566_0\%\,\#a85b3d_55\%\,\#864028_100\%\)\]{background-image:radial-gradient(circle at 35% 25%,#c68566 0%,#a85b3d 55%,#864028 100%)}.bg-\[radial-gradient\(circle_at_35\%_25\%\,\#d59b7e_0\%\,\#b45f3f_55\%\,\#8f422b_100\%\)\]{background-image:radial-gradient(circle at 35% 25%,#d59b7e 0%,#b45f3f 55%,#8f422b 100%)}.bg-\[radial-gradient\(circle_at_35\%_25\%\,\#e3a082_0\%\,\#c46f4c_52\%\,\#a34c33_100\%\)\]{background-image:radial-gradient(circle at 35% 25%,#e3a082 0%,#c46f4c 52%,#a34c33 100%)}.object-cover{object-fit:cover}.px-1{padding-inline:var(--spacing)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-\[14px\]{padding-bottom:14px}.text-justify{text-align:justify}.font-mono{font-family:var(--font-mono)}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.leading-\[1\.55\]{--tw-leading:1.55;line-height:1.55}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-\[0\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.text-\[\#5c6679\]{color:#5c6679}.text-\[\#8f422b\]{color:#8f422b}.text-\[\#62697a\]{color:#62697a}.text-\[\#263044\]{color:#263044}.text-\[\#313949\]{color:#313949}.text-\[\#536075\]{color:#536075}.text-\[\#596174\]{color:#596174}.text-\[\#a85b3d\]{color:#a85b3d}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.caret-\[\#8f422b\]{caret-color:#8f422b}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_5px_14px_rgba\(83\,52\,40\,0\.045\)\]{--tw-shadow:0 5px 14px var(--tw-shadow-color,#5334280b);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_8px_16px_rgba\(180\,95\,63\,0\.18\)\]{--tw-shadow:0 8px 16px var(--tw-shadow-color,#b45f3f2e);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_8px_18px_rgba\(163\,76\,51\,0\.25\)\]{--tw-shadow:0 8px 18px var(--tw-shadow-color,#a34c3340);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_9px_24px_rgba\(49\,42\,35\,0\.065\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.96\)\]{--tw-shadow:0 9px 24px var(--tw-shadow-color,#312a2311), inset 0 1px 0 var(--tw-shadow-color,#fffffff5);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_14px_36px_rgba\(44\,38\,31\,0\.055\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.96\)\]{--tw-shadow:0 14px 36px var(--tw-shadow-color,#2c261f0e), inset 0 1px 0 var(--tw-shadow-color,#fffffff5);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_28px_70px_rgba\(0\,0\,0\,0\.28\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.9\)\]{--tw-shadow:0 28px 70px var(--tw-shadow-color,#00000047), inset 0 1px 0 var(--tw-shadow-color,#ffffffe6);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,box-shadow\]{transition-property:transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,filter\]{transition-property:transform,filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.group-hover\:translate-x-\[2px\]:is(:where(.group):hover *){--tw-translate-x:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-x-\[3px\]:is(:where(.group):hover *){--tw-translate-x:3px;translate:var(--tw-translate-x) var(--tw-translate-y)}}.placeholder\:text-\[\#7d8390\]::placeholder{color:#7d8390}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bottom-0:after{content:var(--tw-content);bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:h-\[3px\]:after{content:var(--tw-content);height:3px}.after\:w-8:after{content:var(--tw-content);width:calc(var(--spacing) * 8)}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.after\:scale-x-0:after{content:var(--tw-content);--tw-scale-x:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.after\:scale-x-100:after{content:var(--tw-content);--tw-scale-x:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.after\:rounded-full:after{content:var(--tw-content);border-radius:2147483647px}.after\:bg-\[\#b45f3f\]:after{content:var(--tw-content);background-color:#b45f3f}.after\:transition-transform:after{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:duration-200:after{content:var(--tw-content);--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-\[1\.04\]:hover{scale:1.04}.hover\:text-\[\#8f422b\]:hover{color:#8f422b}.hover\:shadow-\[0_18px_42px_rgba\(44\,38\,31\,0\.085\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.96\)\]:hover{--tw-shadow:0 18px 42px var(--tw-shadow-color,#2c261f16), inset 0 1px 0 var(--tw-shadow-color,#fffffff5);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:brightness-95:hover{--tw-brightness:brightness(95%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus-visible\:rounded-sm:focus-visible{border-radius:var(--radius-sm)}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[\#b45f3f\]\/15:focus-visible{--tw-ring-color:oklab(57.9081% .0901921 .0781756/.15)}.focus-visible\:ring-\[\#c46f4c\]\/20:focus-visible{--tw-ring-color:oklab(62.9623% .0871676 .0803282/.2)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}.motion-reduce\:after\:transition-none:after{content:var(--tw-content);transition-property:none}}@media (width>=40rem){.sm\:mt-3{margin-top:calc(var(--spacing) * 3)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:h-8{height:calc(var(--spacing) * 8)}.sm\:h-\[62px\]{height:62px}.sm\:min-h-\[145px\]{min-height:145px}.sm\:min-h-\[178px\]{min-height:178px}.sm\:w-8{width:calc(var(--spacing) * 8)}.sm\:w-\[62px\]{width:62px}.sm\:min-w-max{min-width:max-content}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-center{align-items:center}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:gap-11{gap:calc(var(--spacing) * 11)}.sm\:rounded-\[28px\]{border-radius:28px}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:py-7{padding-block:calc(var(--spacing) * 7)}.sm\:pt-9{padding-top:calc(var(--spacing) * 9)}.sm\:pb-8{padding-bottom:calc(var(--spacing) * 8)}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-\[15px\]{font-size:15px}.sm\:text-\[17px\]{font-size:17px}.sm\:text-\[25px\]{font-size:25px}}@media (width>=64rem){.lg\:absolute{position:absolute}.lg\:right-\[62px\]{right:62px}.lg\:mx-8{margin-inline:calc(var(--spacing) * 8)}.lg\:mt-\[-29px\]{margin-top:-29px}.lg\:mr-3{margin-right:calc(var(--spacing) * 3)}.lg\:h-7{height:calc(var(--spacing) * 7)}.lg\:h-\[34px\]{height:34px}.lg\:w-7{width:calc(var(--spacing) * 7)}.lg\:w-\[34px\]{width:34px}.lg\:gap-\[54px\]{gap:54px}.lg\:px-0{padding-inline:0}.lg\:px-3{padding-inline:calc(var(--spacing) * 3)}.lg\:px-14{padding-inline:calc(var(--spacing) * 14)}.lg\:pb-7{padding-bottom:calc(var(--spacing) * 7)}.lg\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}}@font-face{font-family:Polaris;src:url(/fonts/PolarisTrial-Medium-BF66835f97e574a.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:Polaris;src:url(/fonts/PolarisTrial-Bold-BF66835f9642b92.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:600}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f9f7f3;--panel:#080d16c2;--text:#263044;--muted:#687286;--accent:#b45f3f;--accent-strong:#8f422b;--accent-soft:#f5e5dc;--line:#d6b19f40;--overview-accent:#a85b3d;--overview-ink:#4f3930;--contact-page-background:radial-gradient(ellipse 37% 31% at 52% 111%, #b9a98f2b, transparent 72%), radial-gradient(ellipse 27% 37% at 96% 95%, #a8977b24, transparent 73%), radial-gradient(circle at 62% 45%, #fff9eaed, transparent 28%), linear-gradient(113deg, #faf8f4 0%, #fdfbf8 50%, #faf7f1 100%);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;min-height:100%}body{min-width:320px;min-height:100dvh;color:var(--text);background:#f9f7f3;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;overflow-x:hidden}main{min-height:100dvh}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}.browser-frame{isolation:isolate;background:#f9f7f3;border-top:1px solid #14141e0a;border-radius:0;width:100%;height:100dvh;min-height:590px;margin:0;position:relative;overflow:hidden}.topbar{z-index:20;background:0 0;justify-content:space-between;align-items:center;height:74px;padding:0 30px;display:flex;position:relative}.brand{color:#384154;letter-spacing:-.01em;font-size:14px;font-weight:400}.nav-links{color:#596174;text-transform:lowercase;align-items:center;gap:31px;margin-left:auto;font-size:14px;display:flex}.nav-links a{transition:color .18s,transform .18s}.nav-links a:hover{color:var(--accent-strong);transform:translateY(-1px)}.hero-visual{z-index:0;pointer-events:none;background:#f9f7f3;position:absolute;inset:0;overflow:hidden}.hero-visual:before{content:"";filter:blur(9px);background:radial-gradient(200px 54px at 48% 3%,#e1ecf7f2,#859ab2ad 19%,#2937493d 45%,#0000 63%),radial-gradient(200px 300px at 70% 63%,#08101a 0 52%,#02050a 74%);border-radius:48% 51% 52% 46%;width:328px;height:352px;display:none;position:absolute;top:78px;left:-100px;transform:rotate(16deg);box-shadow:inset 16px 13px 25px #d2e2f147,35px 10px 65px #000000a6}.liquid-orb{filter:blur(2.5px);background:radial-gradient(210px 48px at 49% 1%,#f2f8fdb3,#6c809775 24%,#0000 59%),radial-gradient(220px 260px at 61% 60%,#070d15fc,#010308 76%);border-top:2px solid #d0ddeb3b;border-radius:49% 52% 46%;width:292px;height:340px;display:none;position:absolute;top:80px;left:-75px;transform:rotate(15deg);box-shadow:inset 14px 10px 28px #bdd0e21c,24px 14px 62px #000000a6}.hero-content{z-index:5;text-align:left;width:100%;position:absolute;inset:0}#portfolioSearchRoot{width:100%;height:100%;min-height:100%}.social-dock{z-index:8;color:#d9c5b7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(92px 32px at 34% 0,#935b412e,#0000 75%),linear-gradient(#2c201cfa,#1b1412fa);border:1px solid #3a2a24;border-radius:24px;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:center;width:174px;height:56px;padding:0;display:grid;position:absolute;bottom:24px;left:max(clamp(20px,5vw,72px),50vw - 678px);overflow:hidden;box-shadow:inset 0 1px #ffffff09,0 9px 22px #00000057}@media (width>=768px){.social-dock{bottom:clamp(12px,2.5svh,24px)}}.social-divider{z-index:2;background:linear-gradient(#0000,#4a342a 18% 82%,#0000);width:1px;height:22px;position:relative}.social-dock a{width:100%;height:100%;color:inherit;isolation:isolate;place-items:center;transition:color .18s;display:grid;position:relative}.social-dock a:before{z-index:-1;opacity:0;content:"";background:radial-gradient(42px 30px at 50% 0,#e29d7c33,#0000 78%),linear-gradient(#b45f3f29,#783c280f);transition:opacity .18s;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff14}.social-dock a:after{opacity:0;content:"";background:#d28b68;border-radius:999px;width:16px;height:2px;transition:opacity .18s,transform .18s;position:absolute;bottom:5px;left:50%;transform:translate(-50%)scaleX(.45);box-shadow:0 0 8px #d28b68ad}.social-dock a:hover,.social-dock a:focus-visible{color:#fff7f2;outline:none}.social-dock a:hover:before,.social-dock a:focus-visible:before{opacity:1}.social-dock a:hover:after,.social-dock a:focus-visible:after{opacity:1;transform:translate(-50%)scaleX(1)}.social-dock a:hover .social-icon,.social-dock a:focus-visible .social-icon{transform:translateY(-1px)scale(1.06)}.social-icon{width:21px;height:21px;transition:transform .18s,filter .18s;display:block}.social-icon-github,.social-icon-linkedin{fill:currentColor}.social-icon-linkedin{width:20.9px;height:20.9px}.social-icon-email{fill:none;stroke:currentColor;stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.search-panel{isolation:isolate;min-height:100%;padding:clamp(24px,4vw,56px) clamp(20px,5vw,72px) 108px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;position:relative;border-radius:0!important}.search-panel:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(760px 220px at 50% 0,#ffffffb3,#0000 75%);border-radius:0;position:absolute;inset:0}.search-panel button{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.search-panel .result-title{color:var(--overview-accent);letter-spacing:-.35px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricprecision;font-family:Quicksand,sans-serif;font-weight:500}.search-panel .result-card--waterloo{background:linear-gradient(110deg,#fed34c24,#0000 56%),#fff;border-color:#eaab007a;grid-template-columns:68px minmax(0,1fr);column-gap:24px;min-height:168px;padding-top:18px;padding-bottom:18px;box-shadow:inset 4px 0 #eaab00,0 14px 36px #2c261f0e,0 0 0 1px #eaab001f}.search-panel .result-card--waterloo>span:first-child{width:68px;height:68px;font-size:28px}.search-panel .result-card--waterloo .result-title{font-size:27px;line-height:1.12}.search-panel .result-card--waterloo .result-card-sponsored{margin-bottom:8px;padding:5px 10px;font-size:12px}.search-panel .result-card--waterloo .result-card-url{margin-top:5px;font-size:16px}.search-panel .result-card--waterloo .result-card-description{margin-top:14px;font-size:18px}.search-panel .result-card--waterloo>span:last-child{width:82px;height:66px}.search-panel .result-card--waterloo:hover{border-color:#eaab00a6;box-shadow:inset 4px 0 #eaab00,0 18px 42px #2c261f16,0 0 0 2px #eaab0024}.search-panel .result-card--waterloo .result-title{color:#000}.search-panel .result-card-sponsored{color:#8a6500;letter-spacing:.045em;text-transform:uppercase;background:#eaab0024;border:1px solid #eaab006b;border-radius:999px;width:fit-content;margin-bottom:6px;padding:4px 8px;font-family:monospace;font-size:11px;font-weight:600;line-height:1;display:block;box-shadow:inset 0 1px #ffffffb8}.search-panel .result-card--waterloo .result-card-url{color:#782434}.search-panel .result-card--waterloo .result-card-description{color:#5d481b}.search-panel .result-card--waterloo>span:last-child{color:#8a6500;border-color:#eaab006b}.search-panel .filter-tab{appearance:none;letter-spacing:-.05em;background:0 0;border:0;margin:0;padding-inline:0;font-family:monospace}.search-panel .filter-result-count{letter-spacing:-.02em;font-family:monospace}.search-panel input{border:0;padding:0}.search-panel .places-map{height:clamp(500px,72svh,760px)}.search-panel.contact-search-panel{background:var(--contact-page-background);min-height:100svh;box-shadow:none;color:#171b1c;border-color:#0000;border-radius:0}.search-panel.contact-search-panel:before{background:0 0}.search-panel.contact-search-panel .search-bar{z-index:20;position:relative}.search-panel.contact-search-panel .contact-experience{background:0 0}html[data-contact-page=true] .social-dock{display:none}.browser-frame:has(.contact-search-panel){height:auto;min-height:100svh;overflow:visible}.browser-frame:has(.contact-search-panel) .hero-content{min-height:100svh;position:relative;inset:auto}.about-section{color:#233044;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(28px,5vw,86px);min-height:430px;padding:clamp(18px,4vw,46px) clamp(4px,2vw,24px) 18px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;display:grid}.about-section__intro{align-self:center;max-width:620px}.about-section__eyebrow,.about-section__detail-label{color:#6547e8;letter-spacing:.04em;text-transform:uppercase;font-family:monospace;font-size:12px;font-weight:600}.about-section h2{color:#263044;letter-spacing:-.055em;max-width:560px;margin:18px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,5vw,66px);font-weight:500;line-height:.98}.about-section__intro p{color:#5a667a;max-width:590px;margin:0;font-size:clamp(16px,1.6vw,19px);line-height:1.62}.about-section__details{flex-direction:column;align-self:center;gap:14px;width:100%;max-width:440px;display:flex}.about-section__detail-card,.about-section__focus,.about-section__link{background:#ffffffd1;border:1px solid #26304414;border-radius:20px;box-shadow:0 12px 28px #2c261f0d,inset 0 1px #fffffff5}.about-section__detail-card,.about-section__focus{padding:22px 24px}.about-section__detail-card strong{color:#334157;letter-spacing:-.025em;margin-top:12px;font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:500;line-height:1.16;display:block}.about-section__focus-list{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}.about-section__focus-item{color:#536075;background:#f1efff;border-radius:10px;align-items:center;gap:7px;min-height:32px;padding:7px 10px;font-size:12px;line-height:1.25;display:inline-flex}.about-section__focus-item svg{color:#6547e8;width:15px;height:15px}.about-section__link{width:100%;font:inherit;text-align:left;cursor:pointer;color:#6547e8;justify-content:space-between;align-items:center;gap:20px;padding:19px 20px 19px 24px;font-size:14px;transition:transform .18s,box-shadow .18s;display:flex}.about-section__link:hover,.about-section__link:focus-visible{transform:translateY(-2px);box-shadow:0 16px 30px #6547e81c,inset 0 1px #fffffff5}.about-section__link:focus-visible{outline-offset:2px;outline:3px solid #6547e82e}.about-section__link small{color:#2d3b53;margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:21px;line-height:1.05;display:block}.about-section__link>svg{flex:none;width:25px;height:25px}.contact-experience{z-index:1;color:#171b1c;background:var(--contact-page-background);isolation:isolate;width:100vw;height:max(760px,100svh - 128px);min-height:760px;margin:-94px calc(50% - 50vw) 0;font-family:SFMono-Regular,Roboto Mono,Menlo,Monaco,Consolas,Liberation Mono,monospace;position:relative;overflow:hidden}.about-under-construction{isolation:isolate;background:#fff;border:1px solid #4a41371a;border-radius:clamp(22px,2.5vw,34px);min-height:clamp(560px,100svh - 220px,760px);position:relative;overflow:hidden;box-shadow:0 18px 44px #2c261f0f}.about-under-construction__content{min-height:inherit;filter:blur(1.2px)saturate(.82);opacity:.42;pointer-events:none;transform-origin:50%;-webkit-user-select:none;user-select:none;transform:scale(1.012)}.about-under-construction__content .about-section{min-height:inherit}.under-construction-overlay{z-index:2;-webkit-backdrop-filter:blur(10px)saturate(108%);backdrop-filter:blur(10px)saturate(108%);background:repeating-linear-gradient(135deg,#ab742300 0 27px,#ab742309 27px 29px),linear-gradient(120deg,#faf8f3e0,#f5f3efc2);place-content:center;place-items:center;padding:clamp(20px,3vw,40px);display:grid;position:absolute;inset:0;overflow:hidden}.under-construction-overlay:before,.under-construction-overlay:after{content:"";pointer-events:none;position:absolute}.under-construction-overlay:before{border:1px solid #ab742324;border-radius:50%;width:min(44vw,530px);height:180px;top:-70px;right:-18px;transform:rotate(-18deg)}.under-construction-overlay:after{border:1px solid #ab74231a;border-radius:50%;width:min(48vw,560px);height:188px;bottom:-104px;left:-32px;transform:rotate(14deg)}.under-construction-card{z-index:1;text-align:center;-webkit-backdrop-filter:blur(18px)saturate(120%);backdrop-filter:blur(18px)saturate(120%);background:#ffffffc7;border:1px solid #ab742329;border-radius:clamp(22px,2.5vw,30px);width:min(100%,620px);padding:clamp(24px,3vw,40px);position:relative;box-shadow:0 24px 60px #4c3e2b1f,inset 0 1px #fffffffa}.under-construction-card__icon{aspect-ratio:1.45;color:#a66b1f;background:#fff1d2;border:1px solid #ab74232e;border-radius:clamp(41px,4.25vw,68px);place-items:center;width:min(100%,320px);margin:0 auto 20px;display:grid;box-shadow:inset 0 1px #fffffff2}.under-construction-card__icon svg{aspect-ratio:1;width:min(176px,55%);height:auto}.under-construction-card__eyebrow{color:#a66b1f;letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:monospace;font-size:clamp(10px,1vw,12px);font-weight:600;line-height:1.3}.under-construction-card h2{color:#3f3932;letter-spacing:-.055em;max-width:540px;margin:16px auto 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,58px);font-weight:500;line-height:.98}.under-construction-card__message{color:#6a6258;max-width:430px;margin:0 auto;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(14px,1.35vw,17px);line-height:1.6}.under-construction-card__status{color:#665d52;letter-spacing:.02em;background:#fff1d2b8;border:1px solid #ab742324;border-radius:999px;align-items:center;gap:9px;margin-top:24px;padding:8px 12px;font-family:monospace;font-size:12px;display:inline-flex}.under-construction-card__status>span{background:#a66b1f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #ab74231f}.contact-paper-noise,.contact-star-field,.contact-cosmos,.contact-nebula{position:absolute;inset:0}.contact-paper-noise{z-index:0;opacity:.28;pointer-events:none;mix-blend-mode:normal;background-image:repeating-radial-gradient(circle at 17% 23%,#4539290e 0 .45px,#0000 .7px 3.3px),repeating-radial-gradient(circle at 74% 61%,#ffffffa6 0 .6px,#0000 .85px 4px);background-size:127px 113px,151px 139px}.contact-star-field{z-index:1;pointer-events:none}.contact-star,.contact-star:after{content:"";background:#a97d448c;border-radius:50%;width:1px;height:9px;position:absolute;box-shadow:0 0 5px #bc8b4d2e}.contact-star:after{width:9px;height:1px;top:4px;left:-4px}.contact-star--bright,.contact-star--bright:after{background:#bc8742c2;box-shadow:0 0 7px #d09f5e52}.contact-dust{background:#806849;border-radius:50%;display:block;position:absolute;box-shadow:0 0 1px #5e492e59}.contact-intro{z-index:12;width:325px;position:absolute;top:155px;left:3.95vw}.contact-intro h2{color:#111718;letter-spacing:-.065em;white-space:nowrap;margin:0;font-family:inherit;font-size:clamp(36px,2.6vw,44px);font-weight:500;line-height:1.2}.contact-intro h2 span{margin-left:3px;font-weight:400;animation:1.05s step-end infinite contact-caret}@keyframes contact-caret{0%,46%{opacity:1}47%,to{opacity:0}}.contact-intro>p:not(.contact-announcement){color:#252a2b;letter-spacing:-.027em;width:260px;margin:18px 0 0;font-size:17px;font-weight:400;line-height:34px}.contact-form{padding:17px;background:#fcf9f38a;border:1px solid #695b4724;border-radius:9px;width:325px;margin-top:28px;padding-bottom:17px;box-shadow:inset 0 1px #ffffffbd,0 9px 28px #51412c06}.contact-sticky-note{z-index:17;color:#514126;background:#f5df86;border:1px solid #9b77345c;width:248px;margin:0 0 17px 24px;padding:13px 15px 14px;position:relative;transform:rotate(-2deg);box-shadow:4px 6px #5742221f,0 11px 18px #51412c1c,inset 0 1px #ffffff80}.contact-sticky-note:before{content:"";background:#eeba68c7;border:1px solid #b47d4124;width:42px;height:14px;position:absolute;top:-7px;left:50%;transform:translate(-50%)rotate(3deg);box-shadow:0 1px 2px #5d421e14}.contact-sticky-note p{letter-spacing:-.025em;margin:0;font-size:14px;font-weight:500;line-height:1.4}.contact-form h3{color:#1c2222;letter-spacing:-.01em;margin:0 0 17px;font-family:inherit;font-size:14px;font-weight:500}.contact-form label{margin-top:10px;display:block;position:relative}.contact-form input,.contact-form textarea{color:#202526;background:#ffffff9e;border:1px solid #463e322e;border-radius:6px;outline:none;width:100%;margin:0;font-family:inherit;font-size:12px;font-weight:400;transition:border-color .16s,box-shadow .16s,background-color .16s;box-shadow:inset 0 1px 3px #40322106,0 1px #ffffffbf}.contact-form input{height:35px;padding:0 11px}.contact-form textarea{resize:none;height:84px;min-height:84px;padding:11px;line-height:1.45}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6c7373;opacity:1}.contact-form input:focus,.contact-form textarea:focus{background:#ffffffdb;border-color:#97713c94;box-shadow:0 0 0 3px #b386471a}.contact-form input[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:#9b4133b8;box-shadow:0 0 0 2px #9b413317}.contact-form__error{z-index:3;color:#8c3327;background:#fff9f4eb;border-radius:3px;padding:1px 3px;font-size:7px;line-height:1.2;position:absolute;bottom:2px;right:5px}.contact-form button{color:#f8f5ee;clip-path:polygon(0 31%,5% 31%,11% 10%,84% 10%,100% 50%,84% 90%,11% 90%,5% 69%,0 69%);filter:drop-shadow(0 5px 5px #1017172e);letter-spacing:-.02em;background:linear-gradient(#ffffff24,#0000 25%),radial-gradient(circle at 70% 42%,#6a8a8b47,#0000 20%),linear-gradient(#263b3e 0%,#18282b 45%,#0b1517 100%);border:0;border-radius:0;justify-content:center;align-items:center;width:100%;height:48px;margin-top:0;padding:0 52px 0 58px;font-family:inherit;font-size:12px;transition:transform .16s,filter .16s;display:flex}.contact-form button:hover{filter:brightness(1.12)drop-shadow(0 6px 6px #1017172e);transform:translateY(-1px)scale(1.01)}.contact-form button:active{transform:translateY(0)}.contact-form button:focus-visible{outline-offset:2px;outline:3px solid #97713c33}.contact-form__rocket-launch{width:100%;height:48px;margin-top:5px;position:relative}.contact-form button.contact-form__rocket-button{z-index:2;clip-path:none;background:0 0;padding:0;position:relative;overflow:hidden}.contact-form__rocket-button:before,.contact-form__rocket-button:after{content:"";pointer-events:none;display:none;position:absolute}.contact-form__rocket-button:before{background:linear-gradient(90deg,#0000,#e1f9f533,#0000);border-radius:50%;height:12%;top:13%;left:10%;right:15%;transform:rotate(-2deg)}.contact-form__rocket-button:after{background:linear-gradient(#c0d0cb,#4c6263 45%,#172629);border-radius:2px;width:3px;height:17px;top:50%;left:6%;transform:translateY(-50%);box-shadow:5px 0 0 -1px #738f8d9e,0 0 0 1px #0a15175c}.contact-form__rocket-label,.contact-form__rocket-vehicle{z-index:3;position:relative}.contact-form__rocket-label{text-shadow:0 1px 2px #00000061;transform:translateY(-1px)}.contact-form__rocket-vehicle{filter:drop-shadow(0 2px 2px #030b0d57);width:51px;height:37px;position:absolute;top:50%;right:15%;transform:translateY(-50%)}.contact-form__rocket-vehicle>i{pointer-events:none;display:block;position:absolute}.contact-form__rocket-vehicle-body{background:linear-gradient(#ffffff85,#0000 22%),linear-gradient(#afc0bc 0%,#738683 38%,#3b4e50 66%,#1f3032 100%);border:1px solid #deefe88a;border-radius:7px 11px 11px 7px;width:32px;height:21px;top:8px;left:7px;overflow:hidden;box-shadow:inset 2px 1px 2px #ffffff59,inset -4px -4px 5px #050f1157}.contact-form__rocket-vehicle-body:before{content:"";background:#1427299e;width:1px;position:absolute;top:3px;bottom:3px;right:5px;box-shadow:2px 0 #daebe429}.contact-form__rocket-vehicle-body:after{content:"";background:#e1f4ed94;border-radius:2px;width:10px;height:2px;position:absolute;top:3px;left:3px;box-shadow:0 5px #1b35376b}.contact-form__rocket-vehicle-panel{background:linear-gradient(#a6d6cf94,#214245b8);border:1px solid #0f25285c;border-radius:1px;width:5px;height:11px;position:absolute;top:4px;left:7px;box-shadow:inset 1px 0 #f2fff847}.contact-form__rocket-vehicle-window{background:radial-gradient(circle at 32% 26%,#f2fff9 0 13%,#0000 14%),radial-gradient(circle at 38% 35%,#80c7c6 0 29%,#28646c 58%,#102d35 100%);border:1px solid #d7f8efe6;border-radius:50%;width:9px;height:9px;position:absolute;top:5px;right:8px;box-shadow:inset 1px 1px 1px #ffffff94,0 0 0 1px #07151761,0 0 5px #67d0cb52}.contact-form__rocket-vehicle-nose{clip-path:polygon(0 0,100% 50%,0 100%);filter:drop-shadow(1px 0 #08161880);background:linear-gradient(135deg,#f4fff9ad,#0000 35%),linear-gradient(#d7e4de 0%,#8fa39e 46%,#475b5d 100%);width:17px;height:21px;top:8px;right:0}.contact-form__rocket-vehicle-nozzle{background:linear-gradient(#829b97,#314648 62%,#142528);border:1px solid #bcd2ca8c;border-radius:2px 0 0 2px;width:8px;height:11px;top:13px;left:1px;box-shadow:inset 1px 0 #effff747}.contact-form__rocket-vehicle-fin{filter:drop-shadow(0 1px #050f1152);background:linear-gradient(135deg,#9cafaa,#44585a 60%,#1c2f32);width:16px;height:12px}.contact-form__rocket-vehicle-fin--upper{clip-path:polygon(0 100%,63% 0,100% 100%);top:1px;left:12px}.contact-form__rocket-vehicle-fin--lower{clip-path:polygon(0 0,100% 0,63% 100%);bottom:1px;left:13px}.contact-form__rocket-exhaust{z-index:1;pointer-events:none;width:58px;height:25px;position:absolute;top:50%;left:-44px;transform:translateY(-50%)}.contact-form__rocket-flame,.contact-form__rocket-ember{pointer-events:none;display:block;position:absolute}.contact-form__rocket-flame--outer{filter:blur(.35px)drop-shadow(0 1px 3px #e0652657);background:linear-gradient(90deg,#d64b26 0%,#f47a2a 35%,#ffc155 72%,#fff1a9 100%);width:58px;height:18px;animation:.33s ease-in-out infinite alternate contact-rocket-flame-outer}.contact-form__rocket-flame--core{filter:blur(.2px)drop-shadow(0 0 3px #ffb73cb8);background:linear-gradient(90deg,#f47b2b 0%,#ffbd4a 57%,#fff9c8 100%);width:40px;height:10px;animation:.23s ease-in-out infinite alternate contact-rocket-flame-core}.contact-form__rocket-flame--hot{filter:blur(.45px);background:#fffde4;border-radius:50%;width:22px;height:5px;animation:.18s ease-in-out infinite alternate contact-rocket-flame-hot;right:1px}.contact-form__rocket-ember{background:#ffc55d;border-radius:50%;width:3px;height:3px;animation:.68s ease-out infinite contact-rocket-ember;box-shadow:0 0 4px #ffb136c2}.contact-form__rocket-ember--one{animation-delay:-180ms;top:4px;left:-2px}.contact-form__rocket-ember--two{animation-delay:-430ms;top:18px;left:9px}.contact-form__rocket-ember--three{width:2px;height:2px;animation-delay:-590ms;top:7px;left:22px}@keyframes contact-rocket-flame-outer{0%{opacity:.75;transform:translateY(-50%)scaleX(.82)}to{opacity:1;transform:translateY(-50%)scaleX(1.08)}}@keyframes contact-rocket-flame-core{0%{opacity:.82;transform:translateY(-50%)scaleX(.8)}to{opacity:1;transform:translateY(-50%)scaleX(1.1)}}@keyframes contact-rocket-flame-hot{0%{opacity:.75;transform:translateY(-50%)scaleX(.85)}to{opacity:1;transform:translateY(-50%)scaleX(1.1)}}@keyframes contact-rocket-ember{0%{opacity:0;transform:translate(-2px)scale(.35)}25%{opacity:.95}to{opacity:0;transform:translate(-15px,1px)scale(.15)}}@media (prefers-reduced-motion:reduce){.contact-form__rocket-flame,.contact-form__rocket-ember{animation:none}}.contact-form__rocket-launch{height:59px;margin-top:7px;overflow:visible}.contact-form button.contact-form__rocket-button{color:#121a1e;clip-path:none;filter:none;height:59px;font-size:inherit;background:0 0;padding:0;transition:transform .16s;overflow:visible}.contact-form button.contact-form__rocket-button:hover{filter:none;transform:none}.contact-form button.contact-form__rocket-button:active{transform:none}.contact-form__rocket{aspect-ratio:5.1;isolation:isolate;filter:drop-shadow(0 1px 1px #0f141847);flex:none;width:min(100%,292px);height:auto;display:block;position:relative}.contact-form__rocket-fin,.contact-form__rocket-tail,.contact-form__rocket-collar,.contact-form__rocket-body,.contact-form__rocket-nose,.contact-form__rocket-window{display:block;position:absolute}.contact-form__rocket-fin{z-index:1;filter:drop-shadow(0 0 1px #10171b);background:linear-gradient(#ff4950 0%,#ec202d 62%,#af1324 100%);width:19%;height:43%;left:0}.contact-form__rocket-fin--top{clip-path:polygon(0 16%,100% 0,58% 100%,0 76%);top:1%}.contact-form__rocket-fin--bottom{clip-path:polygon(0 84%,100% 100%,58% 0,0 24%);bottom:1%}.contact-form__rocket-tail{z-index:2;clip-path:polygon(0 24%,14% 8%,57% 0,100% 18%,100% 82%,57% 100%,14% 92%,0 76%);background:#101d25;width:23%;height:56%;top:22%;left:2%;overflow:hidden}.contact-form__rocket-tail:before{content:"";clip-path:inherit;background:linear-gradient(#ace6e180,#0000 25%),linear-gradient(#2c7d87 0%,#1e5967 48%,#123944 100%);position:absolute;inset:2px}.contact-form__rocket-tail:after{content:"";background:#b1e0da47;border-radius:2px;width:2px;position:absolute;top:12%;bottom:12%;right:11%;box-shadow:-6px 0 #091e2640}.contact-form__rocket-collar{z-index:4;background:linear-gradient(90deg,#d28a31 0%,#ffe194 38%,#e1a348 70%,#9b5c23 100%);border:2px solid #15191a;border-radius:50%;width:4.8%;height:96%;top:2%;left:13.8%;box-shadow:inset 2px 0 #fff9d2cc,inset -2px 0 #5c2d1247}.contact-form__rocket-body{z-index:3;background:linear-gradient(#ffffffb8 0%,#ffffff2e 19%,#0000 28%),repeating-linear-gradient(#d2b15c17 0 4px,#fffcd514 4px 8px),linear-gradient(#fffbdc 0%,#fff1bd 48%,#eac879 100%);border:2px solid #12191c;border-radius:10px 25px 25px 10px;inset:2% 17% 2% 14%;overflow:hidden;box-shadow:inset 0 2px #ffffffb8,inset 0 -3px 5px #8b5b1f38,inset 3px 0 #fff9cabd}.contact-form__rocket-body:before{content:"";border:1px solid #a36f23b8;border-radius:6px 20px 20px 6px;position:absolute;inset:4px;box-shadow:inset 0 1px #ffffffc7,0 0 0 1px #fff9d17a}.contact-form__rocket-body:after{content:"";opacity:.74;background:linear-gradient(90deg,#ffffffc7,#ffffff08);border-radius:50%;width:72%;height:14%;position:absolute;top:6%;left:7%;transform:rotate(-1deg)}.contact-form__rocket-body-highlight{z-index:1;background:#c997373d;border-radius:50%;width:2px;position:absolute;top:22%;bottom:15%;right:8%}.contact-form__rocket-body-text{z-index:2;color:#0d141a;letter-spacing:-.04em;white-space:nowrap;place-items:center;padding:0 6%;font-family:Arial,Helvetica,sans-serif;font-size:clamp(12px,1.5vw,19px);font-weight:500;line-height:1;display:grid;position:absolute;inset:0}.contact-form__rocket-nose{z-index:5;clip-path:polygon(0 5%,42% 0,100% 50%,42% 100%,0 95%,22% 50%);background:#12171b;width:23%;top:2%;bottom:2%;right:0}.contact-form__rocket-nose:before{content:"";clip-path:inherit;background:linear-gradient(#ffb79da8,#0000 25%),linear-gradient(#ff6252 0%,#ed2d2e 44%,#b71928 100%);position:absolute;inset:2px}.contact-form__rocket-nose:after{content:"";background:#206b7280;border-left:1px solid #ffbd8c80;border-right:2px solid #122328b8;width:13%;position:absolute;top:8%;bottom:8%;left:7%}.contact-form__rocket-window{z-index:2;aspect-ratio:1;background:radial-gradient(circle at 31% 25%,#f5ffff 0 11%,#0000 12%),radial-gradient(circle at 37% 34%,#bde9e2 0 28%,#5faeb1 55%,#24616d 82%,#13333b 100%);border:2px solid #14252a;border-radius:50%;width:22%;top:50%;right:42%;transform:translateY(-50%);box-shadow:0 0 0 1px #e4fff4e6,inset 1px 1px 1px #ffffffe6,inset -2px -2px 2px #06252e4d}@media (width<=639px){.contact-form__rocket-launch,.contact-form button.contact-form__rocket-button{height:53px}.contact-form__rocket-body-text{font-size:10px}}.contact-form__rocket{border-radius:6px;overflow:visible;transform:translate(-7px)rotate(0)}.contact-form__rocket-image-frame{z-index:1;border-radius:inherit;position:absolute;inset:0;overflow:visible}.contact-form__rocket-image{z-index:0;pointer-events:none;mix-blend-mode:normal;width:131.4%;max-width:none;height:auto;display:block;position:absolute;top:calc(50% + 12px);left:45.69%;transform:translate(-50%,-50%)}.contact-form__rocket-html-label{z-index:2;color:#0d141a;letter-spacing:.015em;text-shadow:0 1px #ffffff4d;white-space:nowrap;place-items:center;padding:0 18%;font-family:Courier New,Courier,monospace;font-size:clamp(11px,1.15vw,15px);font-weight:600;line-height:1;display:grid;position:absolute;inset:0}.contact-form__rocket-flame,.contact-form__rocket-flame-spark{z-index:1;pointer-events:none;display:block;position:absolute}.contact-form__rocket-flame{clip-path:polygon(100% 50%,72% 18%,0 0,24% 50%,0 100%,72% 82%);transform-origin:100%;border-radius:48% 52% 52% 48%;top:50%;right:auto}.contact-form__rocket-flame--outer{filter:saturate(1.55)blur(.45px)drop-shadow(0 0 5px #ff4d0ceb)drop-shadow(0 0 12px #ff9d1994);background:linear-gradient(90deg,#ff210d 0%,#ff4f0d 24%,#ff9517 52%,#ffd43d 76%,#fff9c7 100%);width:21%;height:42%;animation:.265s ease-in-out infinite alternate contact-rocket-image-flame-outer;left:-5%;transform:translateY(calc(3px - 50%))}.contact-form__rocket-flame--outer:before,.contact-form__rocket-flame--outer:after{content:"";clip-path:polygon(100% 50%,70% 18%,0 0,24% 50%,0 100%,70% 82%);transform-origin:100%;border-radius:48% 52% 52% 48%;display:block;position:absolute;right:0}.contact-form__rocket-flame--outer:before{filter:saturate(1.5)blur(.25px)drop-shadow(0 0 5px #ffd748f5)drop-shadow(0 0 9px #ff7b0ead);background:linear-gradient(90deg,#ff5910 0%,#ffae28 48%,#ffe66d 78%,#ffffef 100%);width:74%;height:44%;animation:.155s ease-in-out infinite alternate contact-rocket-single-flame-core;top:50%;transform:translateY(-50%)}.contact-form__rocket-flame--outer:after{filter:blur(.45px)drop-shadow(0 0 5px #fff6ab);background:#fffef0;width:39%;height:19%;animation:.115s ease-in-out infinite alternate contact-rocket-single-flame-hot;top:50%;transform:translateY(-50%)}.contact-form__rocket-flame-spark{background:#fffbd2;border-radius:50%;width:4px;height:4px;animation:.47s ease-out infinite contact-rocket-image-spark;box-shadow:0 0 5px #fff59b,0 0 10px #ff8611bd}.contact-form__rocket-flame-spark--one{animation-delay:-180ms;top:28%;left:9%}.contact-form__rocket-flame-spark--two{width:3px;height:3px;animation-delay:-470ms;top:68%;left:14%}.contact-form__rocket-flame-spark--three{width:2px;height:2px;animation-delay:-300ms;top:18%;left:3%}.contact-form__rocket-flame-spark--four{width:3px;height:3px;animation-delay:-80ms;top:82%;left:20%}@keyframes contact-rocket-image-flame-outer{0%{opacity:.78;transform:translateY(calc(3px - 50%))scale(.78,.84)skewY(-2deg)}to{opacity:1;transform:translateY(calc(3px - 50%))scale(1.16,1.08)skewY(2deg)}}@keyframes contact-rocket-single-flame-core{0%{opacity:.78;transform:translateY(-50%)scale(.78,.8)skewY(2deg)}to{opacity:1;transform:translateY(-50%)scale(1.16,1.12)skewY(-2deg)}}@keyframes contact-rocket-single-flame-hot{0%{opacity:.78;transform:translateY(-50%)scaleX(.76)}to{opacity:1;transform:translateY(-50%)scaleX(1.16)}}@keyframes contact-rocket-image-spark{0%{opacity:0;transform:translate(0)scale(.35)}28%{opacity:1}to{opacity:0;transform:translate(-24px,1px)scale(.12)}}@media (prefers-reduced-motion:reduce){.contact-form__rocket-flame,.contact-form__rocket-flame-spark,.contact-form__rocket-flame--outer:before,.contact-form__rocket-flame--outer:after{animation:none}}.contact-form__rocket{isolation:isolate;filter:none;transition:none;transform:translate(-7px)translateZ(0)rotate(0)}.contact-form__rocket:before,.contact-form__rocket:after{z-index:0;content:"";pointer-events:none;display:block;position:absolute}.contact-form__rocket:before{filter:blur(8px);opacity:.64;background:radial-gradient(#3d2c1c26 0,#704c2a12 36%,#0000 73%);border-radius:50%;height:28%;bottom:-13%;left:10%;right:7%;transform:translateY(4px)skew(-12deg)}.contact-form__rocket:after{filter:blur(5px);mix-blend-mode:multiply;opacity:.76;background:radial-gradient(#ffba5330 0,#d9912d1a 42%,#0000 73%);border-radius:50%;inset:4% 5% 2%}.contact-form__rocket-image-frame{isolation:isolate;overflow:visible}.contact-form__rocket-image{filter:drop-shadow(0 1px #ffffff7a)drop-shadow(0 2px 3px #3a2a1c2e)drop-shadow(0 7px 11px #4a331d14);transition:filter .22s;transform:translate(-50%,-50%)rotate(0)}.contact-form__rocket-image-frame:before,.contact-form__rocket-image-frame:after{z-index:1;content:"";pointer-events:none;display:block;position:absolute}.contact-form__rocket-image-frame:before{filter:blur(.6px);mix-blend-mode:screen;opacity:.42;background:linear-gradient(90deg,#0000,#ffffff80 43%,#ffffff1f 78%,#0000);border-radius:999px;width:48%;height:11%;top:17%;left:28%;transform:rotate(-1deg)}.contact-form__rocket-image-frame:after{mix-blend-mode:screen;opacity:.24;border:1px solid #fff3;border-radius:999px;inset:7% 16% 7% 17%;box-shadow:inset 0 1px #ffffff38,0 0 8px #f4b45b1f}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket{transform:translate(-7px)translateY(0)scale(1)rotate(-.7deg)}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-image{filter:drop-shadow(0 1px #ffffff8f)drop-shadow(0 3px 4px #3a2a1c38)drop-shadow(0 8px 13px #4a331d1a)}.contact-form button.contact-form__rocket-button:active .contact-form__rocket{transform:translate(-7px)translateY(0)scale(1)rotate(-.7deg)}.contact-form__rocket-plume{z-index:1;pointer-events:none;opacity:0;transform-origin:100%;filter:blur(.2px)drop-shadow(0 0 9px #cdd8d86b);width:70%;height:220%;transition:opacity .18s,transform .36s cubic-bezier(.22,.75,.25,1);position:absolute;top:50%;left:-48%;transform:translate(14px,-50%)scale(.62)rotate(-6deg)}.contact-form__rocket-plume:before,.contact-form__rocket-plume:after{content:"";pointer-events:none;display:block;position:absolute}.contact-form__rocket-plume:before{filter:blur(3px)drop-shadow(0 0 8px #d3dcdc47);opacity:0;background:radial-gradient(at 86%,#fffffff5 0 12%,#0000 44%),radial-gradient(circle at 55% 54%,#bfc9cae0 0 27%,#0000 63%),radial-gradient(circle at 27% 48%,#e0e6e5c2 0 22%,#0000 58%);border-radius:50%;width:38%;height:24%;top:38%;right:-5%;transform:translateY(-50%)}.contact-form__rocket-plume:after{filter:blur(4px)drop-shadow(0 0 8px #cdd7d757);opacity:0;background:radial-gradient(at 91% 51%,#f6f8f7eb 0 9%,#c1cccdbd 22%,#0000 45%),radial-gradient(circle at 73% 32%,#f9faf8e6 0 14%,#c3cecfad 30%,#0000 49%),radial-gradient(circle at 66% 71%,#d6dedddb 0 17%,#a0aeaf8f 33%,#0000 51%),radial-gradient(circle at 42% 47%,#eff3f1e6 0 16%,#b7c3c49e 33%,#0000 51%),radial-gradient(circle at 19% 63%,#cfd9d9d1 0 15%,#94a4a580 32%,#0000 49%);border-radius:58% 42% 55% 45%;width:92%;height:86%;top:8%;left:-2%;transform:translate(20px,2px)rotate(-8deg)scale(.42,.54)}.contact-form__rocket-plume-ribbon{pointer-events:none;mix-blend-mode:screen;opacity:0;border:0 solid #0000;border-radius:50%;display:block;position:absolute}.contact-form__rocket-plume-ribbon--one{filter:blur(1.2px)drop-shadow(0 0 7px #e1e8e670);border-top-width:12px;border-top-color:#f2f6f4e0;border-right-width:10px;border-right-color:#a5b0b1b3;width:101%;height:76%;top:15%;right:-1%;transform:rotate(-17deg)}.contact-form__rocket-plume-ribbon--two{filter:blur(1.4px)drop-shadow(0 0 8px #c5cfcf6b);border-bottom-width:14px;border-bottom-color:#b8c2c3d1;border-left-width:11px;border-left-color:#eff3f1d1;width:95%;height:96%;top:30%;right:4%;transform:rotate(18deg)}.contact-form__rocket-plume-ribbon--three{filter:blur(1px)drop-shadow(0 0 6px #e4eae880);border-top-width:8px;border-top-color:#ffffffe6;border-left-width:7px;border-left-color:#93a0a294;width:83%;height:58%;top:42%;right:1%;transform:rotate(-8deg)}.contact-form__rocket-plume-spark{filter:blur(.7px);pointer-events:none;opacity:0;background:radial-gradient(circle at 28% 34%,#fffffff0 0 22%,#0000 23%),radial-gradient(circle at 53% 52%,#d3dcdbeb 0 34%,#0000 35%),radial-gradient(circle at 78% 56%,#9facaebd 0 21%,#0000 22%);border-radius:52% 48% 46% 54%;width:18px;height:14px;display:block;position:absolute;box-shadow:0 0 7px #eef3f19e,0 0 13px #8e9d9f57}.contact-form__rocket-plume-spark--one{width:27px;height:19px;top:23%;left:36%}.contact-form__rocket-plume-spark--two{width:21px;height:16px;top:51%;left:17%}.contact-form__rocket-plume-spark--three{width:24px;height:17px;top:13%;left:11%}.contact-form__rocket-plume-spark--four{width:16px;height:12px;top:71%;left:3%}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume{opacity:1;animation:1.45s cubic-bezier(.22,.75,.25,1) both contact-rocket-plume-ignite;transform:translateY(-50%)scale(1)rotate(0)}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume:before,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume:before{animation:1.55s ease-out both contact-rocket-smoke-neck}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume:after,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume:after{animation:1.9s ease-out .22s both contact-rocket-smoke-cloud-reveal,2.7s ease-in-out 2.12s infinite alternate contact-rocket-smoke-cloud-billow}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-ribbon--one,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-ribbon--one{animation:1.55s ease-out both contact-rocket-smoke-ribbon-reveal,1.12s ease-in-out 1.55s infinite contact-rocket-plume-wind-one}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-ribbon--two,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-ribbon--two{animation:1.8s ease-out .1s both contact-rocket-smoke-ribbon-reveal,1.18s ease-in-out 1.9s infinite contact-rocket-plume-wind-two}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-ribbon--three,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-ribbon--three{animation:1.35s ease-out .18s both contact-rocket-smoke-ribbon-reveal,.92s ease-in-out 1.55s infinite contact-rocket-plume-wind-three}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-spark,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-spark{animation:.88s ease-out infinite contact-rocket-plume-spark}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-spark--two,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-spark--two{animation-delay:-230ms}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-spark--three,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-spark--three{animation-delay:-520ms}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-spark--four,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-spark--four{animation-delay:-710ms}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-flame,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-flame,.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-flame-spark,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-flame-spark,.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-flame--outer:before,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-flame--outer:before,.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-flame--outer:after,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-flame--outer:after{opacity:.12;filter:grayscale()blur(1.5px);animation:none}@keyframes contact-rocket-plume-wind-one{0%,to{opacity:.72;transform:rotate(-17deg)translate(0)scale(.94,.92)}50%{opacity:1;transform:rotate(-7deg)translate(-5px,-5px)scale(1.06,1.08)}}@keyframes contact-rocket-plume-ignite{0%{opacity:0;transform:translate(13px,-50%)scale(.16,.22)rotate(-6deg)}28%{opacity:.52;transform:translate(8px,-50%)scale(.42,.46)rotate(-5deg)}66%{opacity:.92;transform:translate(3px,-50%)scale(.78,.76)rotate(-2deg)}to{opacity:1;transform:translateY(-50%)scale(1)rotate(0)}}@keyframes contact-rocket-smoke-neck{0%{opacity:0;transform:translate(12px,-50%)scale(.28,.48)}35%{opacity:.72;transform:translate(5px,-50%)scale(.62,.72)}to{opacity:.94;transform:translateY(-50%)scale(1)}}@keyframes contact-rocket-smoke-cloud-reveal{0%{opacity:0;transform:translate(22px,2px)rotate(-8deg)scale(.36,.48)}45%{opacity:.58;transform:translate(7px)rotate(-5deg)scale(.7,.78)}to{opacity:.9;transform:translate(0)rotate(-2deg)scale(1)}}@keyframes contact-rocket-smoke-cloud-billow{0%{transform:translate(0)rotate(-2deg)scale(1)}50%{transform:translate(-6px,-5px)rotate(2deg)scale(1.04,.98)}to{transform:translate(-12px,4px)rotate(-4deg)scale(1.08,1.04)}}@keyframes contact-rocket-smoke-ribbon-reveal{0%{opacity:0}to{opacity:.82}}@keyframes contact-rocket-plume-wind-two{0%,to{opacity:.62;transform:rotate(18deg)translate(0)scale(.95,.96)}50%{opacity:.94;transform:rotate(28deg)translate(-4px,5px)scale(1.04,1.08)}}@keyframes contact-rocket-plume-wind-three{0%,to{opacity:.58;transform:rotate(-8deg)translate(0)scale(.92,.9)}50%{opacity:.96;transform:rotate(4deg)translate(-3px,-4px)scale(1.1,1.04)}}@keyframes contact-rocket-plume-spark{0%{opacity:0;transform:translate(4px,5px)scale(.38)}22%{opacity:.88}to{opacity:0;transform:translate(-60px,-62px)scale(1.36)}}@media (prefers-reduced-motion:reduce){.contact-form__rocket,.contact-form__rocket-image,.contact-form__rocket-plume{transition:none}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume{animation:none!important}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume:before,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume:before{opacity:.94;transform:translateY(-50%)}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume:after,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume:after{opacity:.9;transform:translate(0)rotate(-2deg)scale(1)}.contact-form__rocket-plume-ribbon,.contact-form__rocket-plume-spark{animation:none!important}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-ribbon,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-ribbon{opacity:.82}.contact-form button.contact-form__rocket-button:hover .contact-form__rocket-plume-spark,.contact-form button.contact-form__rocket-button:focus-visible .contact-form__rocket-plume-spark{opacity:.68}}.contact-smoke-canvas{z-index:2147483647;pointer-events:none;mix-blend-mode:multiply;width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.contact-intro{z-index:auto}.contact-form button.contact-form__rocket-button{z-index:14;overflow:visible}.contact-form__rocket-flame,.contact-form__rocket-flame-spark,.contact-form__rocket-flame--outer:before,.contact-form__rocket-flame--outer:after{opacity:0;animation:none}.contact-form button.contact-form__rocket-button[data-rocket-flight=active] .contact-form__rocket{animation:contact-rocket-flight var(--rocket-travel-duration,2.2s) cubic-bezier(.18, .76, .18, 1) forwards;transition:none}.contact-form button.contact-form__rocket-button[data-rocket-flight=cooldown] .contact-form__rocket{transition:none;animation:none;transform:translate(-7px)translateY(0)scale(1)rotate(0)}.contact-form button.contact-form__rocket-button[data-rocket-flight=active] .contact-form__rocket-flame{opacity:.94;filter:saturate(1.55)blur(.45px)drop-shadow(0 0 5px #ff4d0ceb)drop-shadow(0 0 12px #ff9d1994);animation:.265s ease-in-out infinite alternate contact-rocket-image-flame-outer}.contact-form button.contact-form__rocket-button[data-rocket-flight=active] .contact-form__rocket-flame-spark{opacity:.86;filter:none;animation:.47s ease-out infinite contact-rocket-image-spark}.contact-form button.contact-form__rocket-button[data-rocket-flight=active] .contact-form__rocket-flame--outer:before{opacity:.96;filter:saturate(1.5)blur(.25px)drop-shadow(0 0 5px #ffd748f5)drop-shadow(0 0 9px #ff7b0ead);animation:.155s ease-in-out infinite alternate contact-rocket-single-flame-core}.contact-form button.contact-form__rocket-button[data-rocket-flight=active] .contact-form__rocket-flame--outer:after{opacity:.98;filter:blur(.45px)drop-shadow(0 0 5px #fff6ab);animation:.115s ease-in-out infinite alternate contact-rocket-single-flame-hot}@keyframes contact-rocket-flight{0%{transform:translate(-7px)translateY(0)scale(1)rotate(-.7deg)}8%{transform:translateX(calc(-7px + var(--rocket-travel-distance))) translateY(0) scale(1) rotate(-.7deg)}55%{transform:translateX(calc(-7px + var(--rocket-travel-distance))) translateY(0) scale(1) rotate(-.7deg)}to{transform:translateX(calc(-7px + var(--rocket-travel-distance))) translateY(0) scale(1) rotate(-.7deg)}}@keyframes contact-rocket-flight-return{0%{transform:translateX(calc(-7px + var(--rocket-travel-distance))) translateY(0) scale(1) rotate(-.7deg)}to{transform:translate(-7px)translateY(0)scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.contact-smoke-canvas{display:none}.contact-form__rocket,.contact-form__rocket-image{transition:none;animation:none!important}}.contact-form button.contact-form__rocket-button[data-contact-flight=preparing] .contact-form__rocket{transform:translate(-7px)translateZ(0)rotate(0)!important}.contact-form button.contact-form__rocket-button[data-contact-flight=reduced] .contact-form__rocket{opacity:0;transition:opacity .18s}.contact-rocket-overlay{z-index:30;pointer-events:none;isolation:isolate;position:fixed;inset:0;overflow:visible}.contact-flight-rocket{isolation:isolate;z-index:1!important;pointer-events:none!important;transform-origin:50%!important;display:block!important;position:absolute!important;overflow:visible!important}.contact-flight-rocket .contact-form__rocket-image{pointer-events:none}.contact-flight-rocket .contact-form__rocket-flame,.contact-flight-rocket .contact-form__rocket-flame-spark{opacity:0;animation:none}.contact-flight-rocket[data-flight-phase=ignition] .contact-form__rocket-flame,.contact-flight-rocket[data-flight-phase=flying] .contact-form__rocket-flame{opacity:.9;animation:.265s ease-in-out infinite alternate contact-rocket-image-flame-outer}.contact-flight-rocket[data-flight-phase=ignition] .contact-form__rocket-flame-spark,.contact-flight-rocket[data-flight-phase=flying] .contact-form__rocket-flame-spark{opacity:.82;animation:.47s ease-out infinite contact-rocket-image-spark}.contact-flight-rocket[data-flight-phase=ignition] .contact-form__rocket-flame--outer:before,.contact-flight-rocket[data-flight-phase=flying] .contact-form__rocket-flame--outer:before{opacity:.94;animation:.155s ease-in-out infinite alternate contact-rocket-single-flame-core}.contact-flight-rocket[data-flight-phase=ignition] .contact-form__rocket-flame--outer:after,.contact-flight-rocket[data-flight-phase=flying] .contact-form__rocket-flame--outer:after{opacity:.98;animation:.115s ease-in-out infinite alternate contact-rocket-single-flame-hot}.contact-flight-rocket[data-flight-phase=landing] .contact-form__rocket-flame{opacity:.16;filter:grayscale(.5)blur(1px);animation:none}.contact-flight-rocket[data-flight-phase=landed] .contact-form__rocket-flame,.contact-flight-rocket[data-flight-phase=complete] .contact-form__rocket-flame{opacity:0;animation:none}.contact-flight-ignition-smoke{z-index:0;pointer-events:none;opacity:0;filter:blur(2px);background:radial-gradient(circle at 76%,#fbf7ebd6 0 15%,#0000 41%),radial-gradient(circle at 51% 35%,#b5b2a88f 0 18%,#0000 48%),radial-gradient(circle at 40% 72%,#82817a61 0 16%,#0000 47%);border-radius:50%;width:37%;height:52%;position:absolute;top:50%;left:-22%;transform:translate(8px,-50%)scale(.42,.65)}.contact-flight-rocket[data-flight-phase=ignition] .contact-flight-ignition-smoke{opacity:.76;animation:.43s ease-out both contact-flight-ignition-smoke}@keyframes contact-flight-ignition-smoke{0%{opacity:0;transform:translate(10px,-50%)scale(.34,.5)}36%{opacity:.78}to{opacity:.28;transform:translate(-11px,-50%)scale(1.12,.92)}}.contact-planet--rocket-contact{filter:brightness(1.08)saturate(1.04);box-shadow:inset 7px 6px 14px #ffffff3b,inset -9px -9px 15px #0f0d0a4d,0 9px 14px #2d251b38,0 0 0 3px #aa834e21}.contact-planet--reduced-highlight{filter:brightness(1.12)saturate(1.05);box-shadow:inset 7px 6px 14px #ffffff40,inset -9px -9px 15px #0f0d0a47,0 9px 14px #2d251b3d,0 0 0 4px #aa834e2e}.contact-announcement{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact-cosmos{z-index:4;pointer-events:none}.contact-cosmos__system{z-index:2;transform-origin:50%;will-change:transform;pointer-events:none;position:absolute;inset:0}.contact-orbit-rings,.contact-sun,.contact-orbit-item,.contact-connector{will-change:transform;position:absolute;top:0;left:0}.contact-orbit-rings{z-index:1;transform-origin:0 0;opacity:0;width:0;height:0;transition:opacity .4s}.contact-experience[data-ready=true] .contact-orbit-rings{opacity:1}.contact-orbit-ring{border:1px solid #675b473b;border-radius:50%;display:block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.contact-orbit-ring:before,.contact-orbit-ring:after{content:"";background:#5b4d3999;border-radius:50%;width:3px;height:3px;position:absolute;box-shadow:0 0 0 2px #fffcf4ad}.contact-orbit-ring:before{top:-2px;left:50%}.contact-orbit-ring:after{width:2px;height:2px;bottom:9%;right:13%}.contact-orbit-ring--one{border-style:dashed;border-color:#8e704940;width:176px;height:132px}.contact-orbit-ring--two{border-style:dashed;border-color:#6e5c4447;width:296px;height:220px}.contact-orbit-ring--three{border-color:#64574440;width:424px;height:314px}.contact-orbit-ring--four{border-style:dashed;border-color:#5b504147;width:560px;height:424px}.contact-orbit-ring--shared{border-color:#66584333;width:686px;height:524px}.contact-connector{z-index:2;opacity:0;transform-origin:0;background:linear-gradient(90deg,#5b4e3a9e,#5b4e3a38);width:0;height:1px;transition:opacity .4s}.contact-experience[data-ready=true] .contact-connector{opacity:.72}.contact-connector:before,.contact-connector:after{content:"";background:#64533d;border:1px solid #fffcf6e6;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #64523a1f}.contact-connector:before{left:0}.contact-connector:after{left:100%}.contact-sun{z-index:6;opacity:0;pointer-events:none;isolation:isolate;width:0;height:0;transition:opacity .4s}.contact-experience[data-ready=true] .contact-sun{opacity:1}.contact-sun:before,.contact-sun:after{content:"";pointer-events:none;mix-blend-mode:screen;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.contact-sun:before{filter:blur(15px);opacity:.82;background:radial-gradient(circle,#fffff7d1 0 5%,#fff5cda3 16%,#ffdc9752 34%,#efb85d1f 55%,#0000 74%);width:clamp(330px,52vw,760px);height:clamp(330px,52vw,760px);animation:4.8s ease-in-out infinite contact-sun-aura}.contact-sun:after{filter:blur(5px);background:radial-gradient(circle,#ffffffc7 0 11%,#ffebb26b 32%,#f5c66f29 55%,#0000 74%);width:198px;height:198px}.contact-sun__rays{z-index:1;background:repeating-conic-gradient(from 4deg, #d89b486b 0 .45deg, transparent .55deg 4.1deg);border-radius:50%;width:214px;height:214px;animation:5.6s ease-in-out infinite contact-rays-breathe;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask-image:radial-gradient(circle,#0000 0 28%,#000 35% 66%,#0000 75%);mask-image:radial-gradient(circle,#0000 0 28%,#000 35% 66%,#0000 75%)}.contact-sun__core{z-index:2;appearance:none;color:#0b1112;pointer-events:auto;cursor:pointer;background:radial-gradient(circle at 34% 27%,#fffffffa,#0000 29%),radial-gradient(circle at 56% 57%,#fff8e8 0 37%,#f8db9f 69%,#e5b96c 100%);border:1px solid #d3a45f57;border-radius:50%;place-items:center;width:124px;height:124px;padding:0;animation:none;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset -9px -8px 15px #c58b3c2e,inset 5px 4px 10px #ffffffb8,0 0 18px #e6b15c3d,0 0 46px #e0a64e1f}.contact-sun__core:before{border-radius:inherit;content:"";border:1px solid #dba95b30;position:absolute;inset:5px}.contact-sun__power{stroke:currentColor;stroke-width:2.7px;opacity:1;pointer-events:none;width:clamp(23px,3vw,34px);height:clamp(23px,3vw,34px);transition:opacity .18s,transform .18s}.contact-sun:not(.contact-sun--moon) .contact-sun__power{animation:3.75s ease-in-out infinite contact-sun-power-icon}.contact-sun__core:hover .contact-sun__power,.contact-sun__core:focus-visible .contact-sun__power{opacity:1;transform:scale(1.08)}@keyframes contact-sun-power-icon{0%,to{color:#4a171b;opacity:.38;transform:scale(.92)}50%{color:#c9434b;opacity:.76;transform:scale(1.05)}}@keyframes contact-sun-aura{0%,to{opacity:.7;transform:translate(-50%,-50%)scale(.94)}50%{opacity:.94;transform:translate(-50%,-50%)scale(1.04)}}@keyframes contact-rays-breathe{0%,to{opacity:.53;transform:translate(-50%,-50%)scale(.93)rotate(0)}50%{opacity:.88;transform:translate(-50%,-50%)scale(1.04)rotate(4deg)}}.contact-orbit-item{z-index:7;opacity:0;pointer-events:none;width:0;height:0;transition:opacity .4s}.contact-experience[data-ready=true] .contact-orbit-item{opacity:1}.contact-planet{--planet-size:82px;z-index:2;width:var(--planet-size);height:var(--planet-size);color:#f9f7ef;cursor:pointer;pointer-events:auto;isolation:isolate;border:1px solid #362c2040;border-radius:50%;place-items:center;margin:0;padding:0;transition:filter .18s,box-shadow .18s;display:grid;position:absolute;top:0;left:0;overflow:visible;transform:translate(-50%,-50%);box-shadow:inset 7px 6px 14px #ffffff30,inset -9px -9px 15px #0f0d0a57,0 7px 10px #2d251b33,0 1px 2px #342a1d40}.contact-planet:before{z-index:0;border-radius:inherit;content:"";opacity:.78;mix-blend-mode:soft-light;pointer-events:none;background:radial-gradient(circle at 24% 34%,#1e171040 0 2px,#0000 2.8px),radial-gradient(circle at 66% 22%,#fffae847 0 3px,#0000 4px),radial-gradient(circle at 73% 67%,#1f191440 0 4px,#0000 5px),radial-gradient(circle at 42% 78%,#f5e8cc2e 0 2px,#0000 3px);position:absolute;inset:2px}.contact-planet:hover,.contact-planet:focus-visible{filter:brightness(1.12)saturate(1.03);box-shadow:inset 7px 6px 14px #ffffff3d,inset -9px -9px 15px #0f0d0a47,0 9px 14px #2d251b3d,0 0 0 4px #aa834e1f}.contact-planet:focus-visible{outline-offset:5px;outline:2px solid #71532fb3}.contact-planet svg{z-index:2;fill:none;stroke:currentColor;stroke-width:1.4px;filter:drop-shadow(0 1px 1px #0e0c093d);width:29px;height:29px;position:relative}.contact-planet--email{background:radial-gradient(circle at 31% 27%,#efdab1b8 0 6%,#0000 18%),radial-gradient(circle at 59% 68%,#8d6431 0 8%,#0000 25%),linear-gradient(137deg,#d7bd89 0%,#ac8150 44%,#6d4a25 100%)}.contact-planet--linkedin{--planet-size:84px;background:radial-gradient(circle at 34% 27%,#e0e8d4ad 0 8%,#0000 21%),radial-gradient(at 63% 61%,#465846 0 19%,#0000 35%),linear-gradient(145deg,#a3ad91,#657660 49%,#26362e)}.contact-planet--linkedin:after{z-index:-1;content:"";pointer-events:none;border:3px solid #b0a07ea3;border-color:#b0a07ea3 #766f5866 #b0a07ea3 #dcd1b094;border-radius:50%;width:91px;height:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(7deg);box-shadow:0 1px 1px #403a2f24}.contact-planet--linkedin svg{border:1px solid #fffc;border-radius:3px;width:28px;height:28px;padding:2px}.contact-planet--github{--planet-size:84px;background:radial-gradient(circle at 30% 28%,#ede7d9a6 0 8%,#0000 22%),radial-gradient(circle at 69% 61%,#817b72 0 12%,#0000 26%),linear-gradient(145deg,#b9b4aa,#7d7770 52%,#3f3c38)}.contact-planet--github svg{fill:#f8f5ee;stroke-width:1.05px;width:31px;height:31px}.contact-planet--schedule{background:radial-gradient(circle at 29% 27%,#dce6e7ad 0 7%,#0000 21%),radial-gradient(circle at 66% 64%,#45545b 0 11%,#0000 26%),linear-gradient(145deg,#91a1a6,#62747c 50%,#26363f)}.contact-planet--resume{background:radial-gradient(circle at 30% 27%,#e2b2899c 0 7%,#0000 21%),radial-gradient(circle at 68% 64%,#7a351d 0 12%,#0000 28%),linear-gradient(145deg,#b36c43,#8c4828 51%,#4c2619)}.contact-orbit-item__label{z-index:4;color:inherit;pointer-events:auto;appearance:none;cursor:pointer;width:154px;font:inherit;text-align:center;white-space:nowrap;will-change:left, top;background:0 0;border:0;padding:0;text-decoration:none;position:absolute;top:0;left:0;right:auto;transform:translate(-50%,-50%)}.contact-orbit-item__label:hover strong,.contact-orbit-item__label:focus-visible strong{text-underline-offset:3px;text-decoration:underline}.contact-orbit-item__label:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #71532fb3}.contact-orbit-item__label strong{color:#121718;letter-spacing:-.04em;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:600;line-height:1.35;display:flex}.contact-orbit-item__label strong svg{stroke-width:1.8px;width:16px;height:16px}.contact-orbit-item__label small{color:#252a2a;letter-spacing:-.035em;text-align:center;margin-top:7px;font-size:14px;font-weight:400;line-height:1.25;display:block}.contact-comet{z-index:2;opacity:.45;pointer-events:none;width:94px;height:28px;position:absolute;top:138px;right:194px;transform:rotate(-31deg)}.contact-comet:before,.contact-comet:after,.contact-comet i:before{content:"";transform-origin:100%;background:linear-gradient(90deg,#0000,#a585598c);width:88px;height:1px;position:absolute;top:13px;right:0}.contact-comet:after{transform:rotate(4deg)}.contact-comet i:before{transform:rotate(-4deg)}.contact-comet i:after{content:"";background:#bda77f;border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:-2px;box-shadow:0 0 7px #a7885b5c}.contact-decor-planet{z-index:2;opacity:.52;pointer-events:none;border:1px solid #937a5657;border-radius:50%;width:127px;height:35px;position:absolute;bottom:137px;left:-18px;transform:rotate(16deg);box-shadow:inset 0 0 0 7px #f8f3e8d9,inset 0 0 0 8px #987e5a36,inset 0 0 0 13px #f8f3e8bd,inset 0 0 0 14px #987e5a33}.contact-decor-planet:before{content:"";background:radial-gradient(at 37% 30%,#eee7d8,#c4b59c 57%,#8d7e67);border-radius:50%;width:53px;height:20px;position:absolute;top:7px;left:35px;box-shadow:inset -5px -4px 5px #5b49312e}.contact-nebula{z-index:1;pointer-events:none;filter:blur(1px)}.contact-nebula--left{opacity:.22;background:radial-gradient(at 48% 47%,#9e8b6c2b,#0000 67%);width:260px;height:170px;inset:auto auto -62px 14%}.contact-nebula--right{opacity:.24;background:radial-gradient(at 52% 49%,#a3917429,#0000 69%);width:305px;height:190px;top:auto;bottom:-72px;left:auto}.contact-asteroids{z-index:3;pointer-events:none;width:68px;height:33px;position:absolute}.contact-asteroids--one{top:calc(65% + 80px);left:66%;transform:rotate(-18deg)}.contact-asteroids--two{top:calc(37% + 80px);left:50%;transform:rotate(63deg)scale(.7)}.contact-asteroids i{background:linear-gradient(145deg,#837b6e,#514b42 58%,#2e2c28);border-radius:43% 57% 48% 52%;display:block;position:absolute;box-shadow:inset 2px 2px 2px #ffffff38,1px 2px 3px #25201a36}.contact-asteroids i:first-child{width:12px;height:8px;top:12px;left:3px}.contact-asteroids i:nth-child(2){width:7px;height:6px;top:4px;left:21px}.contact-asteroids i:nth-child(3){width:10px;height:7px;top:18px;left:32px}.contact-asteroids i:nth-child(4){width:5px;height:5px;top:8px;left:49px}.contact-asteroids i:nth-child(5){width:4px;height:4px;top:24px;left:60px}@media (width<=900px){.contact-experience{height:max(760px,100svh - 112px);min-height:760px;margin-top:-76px}.contact-intro{top:90px;left:30px}.contact-orbit-item__label{width:122px}.contact-comet{right:34px}}@media (width<=639px){.contact-experience{height:1000px;min-height:1000px;margin-top:14px}.contact-intro{width:calc(100% - 48px);top:28px;left:24px}.contact-intro h2{font-size:clamp(27px,8.1vw,32px)}.contact-intro>p:not(.contact-announcement){width:min(100%,326px)}.contact-form{width:min(100%,360px)}.contact-sticky-note{width:min(100%,248px);margin-left:12px}.contact-planet{--planet-size:48px}.contact-planet--linkedin{--planet-size:49px}.contact-planet--github{--planet-size:50px}.contact-planet svg{width:24px;height:24px}.contact-planet--linkedin:after{width:74px;height:18px}.contact-sun__core{width:76px;height:76px}.contact-sun__rays{width:144px;height:144px}.contact-orbit-item__label{width:94px}.contact-orbit-item__label strong{gap:3px;font-size:10.5px}.contact-orbit-item__label small{margin-top:2px;font-size:8.8px}.contact-comet{top:448px;right:19px;transform:rotate(-28deg)scale(.75)}.contact-decor-planet{transform-origin:0 100%;bottom:12px;transform:rotate(16deg)scale(.8)}.contact-asteroids--one{top:calc(72% + 80px);left:65%}.contact-asteroids--two{top:calc(58% + 80px);left:13%}}@media (prefers-reduced-motion:reduce){.contact-intro h2 span,.contact-sun__core,.contact-sun__power,.contact-sun__rays,.contact-sun:before{animation:none}}.projects-showcase{color:#111820;background:0 0;width:100vw;height:620px;margin-left:calc(50% - 50vw);font-family:Inter,ui-sans-serif,system-ui,sans-serif;position:relative;overflow:hidden}.projects-feature{isolation:isolate;background:0 0;width:min(1320px,100% - 96px);height:360px;margin:28px auto 0;position:relative;overflow:hidden}.projects-feature:before{z-index:0;content:"";background:#fff;width:100vw;position:absolute;inset:0 50%;transform:translate(-50%)}.projects-feature>*{z-index:1}.projects-feature__copy{z-index:2;width:465px;position:absolute;top:42px;left:94px}.projects-feature__badge{color:#3649ff;background:#f0edff;border-radius:8px;align-items:center;gap:5px;height:23px;padding:0 11px 0 9px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.projects-feature__badge span{color:#ffd227;font-size:16px;line-height:1}.projects-feature__copy h2{color:#12151a;letter-spacing:-.045em;margin:22px 0 13px;font-size:43px;font-weight:700;line-height:1}.projects-feature__copy p{color:#183e7b;width:440px;margin:0;font-size:14px;font-weight:500;line-height:1.65}.projects-tech-chips{align-items:center;gap:11px;margin-top:28px;display:flex}.projects-tech-chip{color:#1e252d;letter-spacing:-.02em;white-space:nowrap;background:#fff;border:1px solid #edf0f2;border-radius:6px;align-items:center;gap:6px;height:30px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 2px 5px #1f2a3517}.projects-tech-chip__logo{object-fit:contain;flex:none;width:22px;height:22px;display:inline-block}.projects-tech-chip__icon--python{background:linear-gradient(145deg,#3c83c3 0 48%,#f4cf3d 49% 100%);border-radius:4px 4px 4px 1px}.projects-tech-chip__icon--python:after{content:"";background:#fff;border-radius:50%;width:2px;height:2px;position:absolute;bottom:2px;right:2px}.projects-tech-chip__icon--pytorch{border:2px solid #f4312c;border-top-color:#0000;border-radius:50%}.projects-tech-chip__icon--pytorch:after{content:"";background:#f4312c;border-radius:50%;width:4px;height:4px;position:absolute;top:-3px;right:-2px}.projects-tech-chip__icon--opencv{background:conic-gradient(#40bb80 0 33%, #e7373c 33% 66%, #4068dd 66% 100%);border-radius:50%}.projects-tech-chip__icon--opencv:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:3px}.projects-tech-chip__icon--mediapipe:before,.projects-tech-chip__icon--mediapipe:after{content:"";background:#2287ee;position:absolute}.projects-tech-chip__icon--mediapipe:before{width:12px;height:2px;top:5px;left:0;transform:rotate(90deg);box-shadow:5px -5px #2287ee,5px 5px #2287ee}.projects-tech-chip__icon--mediapipe:after{background:#fff;border-radius:50%;inset:4px}.projects-feature__actions{color:#101820;align-items:center;gap:24px;margin-top:27px;font-size:13px;display:flex}.projects-feature__button{color:#fff;height:41px;font:inherit;background:#111c27;border:0;border-radius:6px;align-items:center;gap:11px;padding:0 15px;transition:background-color .18s,box-shadow .18s,transform .18s;display:inline-flex;position:relative;box-shadow:0 4px 8px #13233621}.projects-feature__button svg{transition:transform .18s}.projects-feature__button:hover{background:#a6482f;transform:translateY(-2px);box-shadow:0 8px 16px #a6482f47}.projects-feature__button:hover svg{transform:translate(4px)}.projects-feature__button:focus-visible{outline-offset:3px;outline:3px solid #f2b08e}.projects-feature__button:active{transform:translateY(0);box-shadow:0 4px 8px #a6482f38}@media (prefers-reduced-motion:reduce){.projects-feature__button,.projects-feature__button svg,.projects-feature__github,.projects-feature__github svg{transition:none}}.projects-feature__github{color:#27313a;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;height:41px;padding:0 15px;font-size:15px;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex;position:relative}.projects-feature__github img{object-fit:contain;flex:0 0 19px;width:19px;height:19px;display:block}.projects-feature__github svg{color:currentColor;margin-left:2px;transition:transform .18s}.projects-feature__github:hover,.projects-feature__github:focus-visible{color:#7e3926;background:#fff4ee;border-color:#a6482f;transform:translateY(-2px);box-shadow:0 4px 10px #a6482f24}.projects-feature__github:focus-visible{outline-offset:3px;outline:3px solid #f2b08e}.projects-feature__github:hover svg,.projects-feature__github:focus-visible svg{transform:translate(3px)}.projects-feature__github:active{transform:translateY(0);box-shadow:0 2px 5px #a6482f1f}.projects-feature__media{aspect-ratio:2940/1524;background:#010202;border:1px solid #1a1a1a;border-radius:10px;width:34%;height:auto;position:absolute;top:31px;left:44.5%;overflow:hidden;box-shadow:0 5px 10px #16222d14}.projects-feature__video{object-fit:contain;background:#010202;width:100%;height:100%;display:block}.keyboard-stage{background:radial-gradient(at 53% 83%,#071159 0%,#03051b 19%,#010101 57%);position:absolute;inset:0;overflow:hidden}.hand-palm{filter:blur(.35px);background:radial-gradient(at 48% 27%,#bd7b5c 0 20%,#96533d 47%,#4a2118 100%);border-radius:55% 44% 46% 52%;width:91px;height:106px;position:absolute;top:23px;left:45%;transform:rotate(7deg);box-shadow:inset -15px -10px 18px #2f120e91,inset 12px 9px 13px #eba07736}.hand-palm:after{content:"";background:linear-gradient(120deg,#6e3325,#a8654b 52%,#4a2018);border-radius:55% 35% 48% 48%;width:43px;height:71px;position:absolute;bottom:1px;left:-16px;transform:rotate(39deg)}.hand-finger{z-index:2;transform-origin:50% 0;background:linear-gradient(90deg,#57261c,#aa684c 49%,#6e3627 100%);border-radius:48% 48% 35% 35%;width:16px;position:absolute;box-shadow:inset 3px 1px 4px #f5a77c40}.hand-finger:after{content:"";background:#d38e6f57;border-radius:50%;width:9px;height:18px;position:absolute;top:3px;left:3px}.hand-finger--one{height:72px;top:18px;left:49%;transform:rotate(-28deg)}.hand-finger--two{height:87px;top:10px;left:54%;transform:rotate(-10deg)}.hand-finger--three{height:83px;top:14px;left:59%;transform:rotate(8deg)}.hand-finger--four{height:68px;top:26px;left:64%;transform:rotate(25deg)}.keyboard-glow{filter:blur(7px);background:radial-gradient(#1c2dffe6,#040d666e 44%,#0000 72%);border-radius:50%;height:61px;position:absolute;bottom:22px;left:20%;right:20%}.keyboard-rows{grid-template-columns:repeat(8,1fr);gap:8px;display:grid;position:absolute;bottom:24px;left:23%;right:22%;transform:perspective(130px)rotateX(28deg)skew(-6deg)}.keyboard-rows i{background:linear-gradient(90deg,#e9feff,#00f5ec 42%,#2d26ff 100%);border-radius:2px;height:7px;box-shadow:0 0 5px #00d9ff,0 0 8px #1c38ff}.projects-feature__play{color:#fff;background:#ffffff2e;border:1px solid #fffffff2;border-radius:50%;place-items:center;width:70px;height:70px;padding-left:3px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.projects-feature__title-row{width:fit-content;max-width:100%;display:block;position:relative}.projects-feature__settings{color:#18f;position:absolute;top:50%;left:calc(100% + clamp(4px,.7vw,10px));transform:translateY(-50%)}.projects-feature__metrics{flex-direction:column;gap:20px;display:flex;position:absolute;top:64px;left:auto;right:0}.projects-metric{grid-template-columns:58px 1fr;align-items:center;column-gap:15px;width:215px;height:68px;display:grid}.projects-metric__icon{border-radius:50%;grid-row:span 2;place-items:center;width:58px;height:58px;display:grid;position:relative}.projects-metric__icon--green{color:#1c3f27;background:#def3e2}.projects-metric__icon--blue{color:#2f609c;background:#deedff}.projects-metric__icon--purple{color:#7253df;background:#e8e0ff}.projects-metric__precision-icon{object-fit:contain;width:64px;max-width:none;height:64px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.projects-metric__recall-icon{object-fit:contain;width:64px;max-width:none;height:64px;display:block;transform:translate(-3px,-3px)scale(.9)}.projects-metric__icon--speed{background:radial-gradient(circle at 35% 25%,#d9d2ff 0%,#e8e2ff 100%);align-self:center;position:relative;overflow:hidden}.projects-metric__icon--speed img{object-fit:contain;filter:hue-rotate(46deg)saturate(.8)brightness(.7);width:64px;max-width:none;height:64px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.projects-metric strong{align-self:end;font-size:24px;line-height:1}.projects-metric small{color:#183e7b;align-self:start;margin-top:5px;font-size:12px;line-height:1}.projects-feature__badge-row{align-items:center;width:fit-content;max-width:100%;min-height:23px;display:flex;position:relative}.projects-rays{pointer-events:none;width:31px;height:42px;position:absolute;top:50%;transform:translateY(-50%)}.projects-rays--left{left:clamp(-38px,-2.5vw,-24px)}.projects-rays--right{left:auto;right:clamp(-38px,-2.5vw,-24px);transform:translateY(-50%)scaleX(-1)}.projects-rays i{clip-path:polygon(0 48%,12% 18%,96% 0,100% 56%,87% 84%,14% 100%);background:linear-gradient(90deg,#ffad18 0%,#ffc32a 50%,#ffb21a 100%);border-radius:70% 42% 58% 36%;width:14px;height:3px;display:block;position:absolute}.projects-rays i:first-child{width:15px;top:2px;left:14px;transform:rotate(48deg)skew(-7deg)}.projects-rays i:nth-child(2){width:16px;top:13px;left:1px;transform:rotate(7deg)skew(6deg)}.projects-rays i:nth-child(3){width:14px;top:28px;left:2px;transform:rotate(-25deg)skew(-5deg)}.projects-green-arrow{border-top:3px solid #1ed477;border-left:3px solid #1ed477;border-radius:80% 0 0;width:39px;height:35px;position:absolute;bottom:calc(clamp(8px,.8vw,12px) - 32px);left:clamp(-58px,-3.6vw,-42px);transform:rotate(-5deg)skew(-12deg)}.projects-green-arrow:after{content:"";border-top:3px solid #1ed477;border-right:3px solid #1ed477;width:12px;height:12px;position:absolute;top:-7px;right:-3px;transform:rotate(12deg)}.projects-red-squiggle{width:84px;height:233px;display:block;position:absolute;top:32px;right:0}.projects-divider{background:linear-gradient(90deg,#0000,#dfe5ec 10% 90%,#0000);width:min(1320px,100% - 96px);height:1px;margin:28px auto 0}.projects-list{grid-template-columns:repeat(3,1fr);width:min(1320px,100% - 96px);height:175px;margin:28px auto 0;display:grid}.projects-list__item{border-right:1px solid #f0f1f3;grid-template-columns:122px minmax(0,1fr);gap:23px;min-width:0;height:175px;padding:2px 24px 0 12px;display:grid;position:relative}.projects-list__item:last-child{border-right:0}.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){gap:23px;padding-left:12px}.project-thumb{border:1px solid #e7e9ec;border-radius:6px;width:122px;height:114px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffd9}.project-thumb--dashboard,.project-thumb--music-dashboard{background:linear-gradient(145deg,#060915,#020208 68%,#050612)}.project-thumb--music-dashboard{background:linear-gradient(145deg,#02080b,#020305 64%,#071a22)}.project-thumb--ingredia{background:radial-gradient(circle at 73% 20%,#d0f1779e,#0000 22%),linear-gradient(145deg,#f5f5df,#dfeccd 72%,#c5ddb5);border-color:#dce8cb;overflow:hidden}.ingredia-scan-frame{border:1px solid #4a7e3d8f;border-radius:6px;position:absolute;inset:16px 18px 15px;box-shadow:inset 0 0 0 5px #ffffff61,0 0 0 1px #ffffff7a}.ingredia-scan-frame:before,.ingredia-scan-frame:after{content:"";width:13px;height:13px;position:absolute}.ingredia-scan-frame:before{border-top:3px solid #77a83c;border-left:3px solid #77a83c;border-radius:5px 0 0;top:-1px;left:-1px}.ingredia-scan-frame:after{border-bottom:3px solid #77a83c;border-right:3px solid #77a83c;border-radius:0 0 5px;bottom:-1px;right:-1px}.ingredia-ring{border:4px solid #82ae47;border-top-color:#d6e5b9;border-radius:50%;width:37px;height:37px;position:absolute;top:38px;left:42px;transform:rotate(-32deg)}.ingredia-leaf{background:#477c4b;border-radius:100% 0;width:20px;height:10px;display:block;position:absolute;box-shadow:inset 5px 2px 7px #dcf49966}.ingredia-leaf--one{top:25px;right:22px;transform:rotate(-35deg)}.ingredia-leaf--two{background:#75a54b;top:34px;right:18px;transform:rotate(25deg)scale(.78)}.ingredia-label-line{background:#4d734b;border-radius:2px;height:2px;display:block;position:absolute;left:22px}.ingredia-label-line--one{width:35px;bottom:27px}.ingredia-label-line--two{opacity:.55;width:24px;bottom:20px}.dashboard-line{background:#f9bd1d;border-radius:2px;height:2px;position:absolute;left:8px;box-shadow:0 0 3px}.dashboard-line--one{width:24px;top:16px}.dashboard-line--two{color:#c3ff31;background:#4dfd84;width:47px;top:37px}.dashboard-line--three{color:#ef2aef;background:#f22af3;width:65px;top:57px}.dashboard-line--four{color:#5836ff;background:#5e34ff;width:36px;top:79px}.dashboard-panel{background:linear-gradient(160deg,#0000 0 39%,#2540ff 40% 45%,#0000 46% 54%,#ff28c4 55% 59%,#0000 60%);border:1px solid #402fff;width:40px;height:27px;position:absolute;bottom:11px;right:9px;box-shadow:0 0 5px #3e2fff}.project-thumb--border-map,.project-thumb--park-map{background-color:#fbfaf5;background-image:linear-gradient(24deg,#0000 49%,#d4e3f6 50% 51%,#0000 52%),linear-gradient(88deg,#0000 49%,#e8e3df 50% 51%,#0000 52%),radial-gradient(circle,#78baf4 1.3px,#0000 1.7px);background-size:100% 100%,100% 100%,28px 23px}.project-thumb--park-map{background-image:linear-gradient(89deg,#0000 49%,#c2e4cb 50% 51%,#0000 52%),linear-gradient(#0000 48%,#d6ece0 49% 50%,#0000 51%),radial-gradient(circle,#65c68f 1.2px,#0000 1.7px)}.map-road{transform-origin:0;background:#f27d8f;height:1px;display:block;position:absolute}.map-road--one{width:58px;top:25px;left:12px;transform:rotate(29deg)}.map-road--two{background:#e5a7b4;width:63px;top:70px;left:28px;transform:rotate(-28deg)}.map-road--three{background:#7ab4ef;width:76px;top:64px;left:17px;transform:rotate(1deg)}.project-thumb--park-map .map-road{background:#73cba0}.project-thumb--park-map .map-road--one{transform:rotate(88deg)}.project-thumb--park-map .map-road--two{transform:rotate(0)}.project-thumb--park-map .map-road--three{transform:rotate(-90deg)}.map-node{background:#39a5ff;border-radius:50%;width:4px;height:4px;position:absolute;box-shadow:0 0 0 1px #fff}.map-node--one{top:16px;left:55px}.map-node--two{top:41px;left:27px}.map-node--three{top:61px;left:58px}.map-node--four{top:80px;left:20px}.projects-list__body{flex-direction:column;min-width:0;display:flex}.projects-list__body strong{color:#1235f5;font-size:13px;line-height:1.35}.projects-list__body small{color:#6076a1;margin-top:10px;font-size:10px;font-style:italic;line-height:1.55}.projects-list__body>span{color:#153b79;margin-top:11px;font-size:11px;line-height:1.55}.projects-list__body time{color:#426398;margin-top:auto;font-size:11px}.projects-list__arrow{color:#263cff;position:absolute;bottom:0;right:20px}.projects-list__item:nth-child(3) .projects-list__arrow{right:26px}.projects-list__item:nth-child(4) .projects-list__arrow{right:30px}@media (width<=1100px){.projects-showcase{height:auto;min-height:514px;padding-bottom:30px}.projects-feature{width:calc(100% - 48px);height:auto;min-height:550px;padding:28px}.projects-feature__copy{width:50%;position:relative;top:auto;left:auto}.projects-feature__media{width:46%;height:auto;top:28px;left:auto;right:28px}.projects-feature__metrics{flex-direction:row;top:320px;left:28px}.projects-feature__settings{top:50%;left:calc(100% + clamp(4px,.7vw,10px))}.projects-red-squiggle{display:none}.projects-divider,.projects-list{width:calc(100% - 48px)}.projects-divider{margin-top:28px}.projects-list{grid-template-columns:repeat(2,1fr);gap:24px 0;height:auto;margin-top:28px}.projects-list__item{gap:19px;height:145px;padding-left:10px}.projects-list__item:nth-child(2){border-right:0;gap:19px;padding-left:10px}.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){gap:19px;padding-left:10px}}@media (width<=639px){.projects-showcase{width:100%;margin-left:0;padding:12px}.projects-feature{width:100%;min-height:0;padding:22px}.projects-feature__copy{width:100%}.projects-feature__copy h2{font-size:30px}.projects-feature__copy p{width:100%}.projects-tech-chips{flex-wrap:wrap}.projects-feature__media{width:100%;height:auto;margin-top:22px;position:relative;top:auto;right:auto}.projects-feature__metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;display:grid;position:relative;top:auto;left:auto}.projects-metric{width:auto}.projects-metric__icon{width:38px;height:38px}.projects-metric__icon--speed img,.projects-metric__recall-icon{width:54px;height:54px}.projects-metric strong{font-size:16px}.projects-metric small{font-size:8px}.projects-feature__settings,.projects-rays,.projects-green-arrow,.projects-red-squiggle{display:none}.projects-divider,.projects-list{width:100%}.projects-divider{margin-top:22px}.projects-list{grid-template-columns:1fr;gap:18px;margin-top:22px}.projects-list__item,.projects-list__item:nth-child(2){border-right:0}}.projects-showcase{--projects-container-gap:clamp(32px, 4vw, 48px);--projects-column-gap:clamp(28px, 3.2vw, 52px);width:100%;min-width:0;max-width:100%;height:auto;min-height:0;margin-left:0;overflow:visible;transform:translateY(-60px)}.projects-feature,.projects-divider,.projects-list{width:min(1500px, calc(100% - var(--projects-container-gap)));box-sizing:border-box;max-width:100%}.projects-feature{grid-template-columns:minmax(0,1.05fr) minmax(360px,1.25fr) minmax(170px,.45fr);grid-template-areas:"copy media metrics";align-items:center;gap:clamp(24px,3vw,56px);width:min(1500px,100%);height:auto;min-height:clamp(390px,30vw,455px);margin:clamp(22px,2.2vw,32px) auto 0;padding:clamp(28px,3.4vw,48px) clamp(28px,4.3vw,72px);display:grid;overflow:visible}.projects-feature:before{width:100%;height:100%;inset:0;transform:none}.projects-feature>*{min-width:0;max-width:100%}.projects-feature__copy{grid-area:copy;width:100%;max-width:100%;position:relative;top:auto;left:auto}.projects-feature__copy p{width:100%;max-width:44ch;font-size:clamp(14px,1vw,16px)}.projects-tech-chips{flex-wrap:wrap;gap:clamp(8px,1vw,14px);margin-top:clamp(22px,2vw,30px)}.projects-tech-chip{height:clamp(30px,2.4vw,36px);padding-inline:clamp(10px,.9vw,14px);font-size:clamp(12px,.9vw,14px)}.projects-feature__actions{flex-wrap:wrap;gap:clamp(14px,1.6vw,24px);margin-top:clamp(22px,2vw,30px);font-size:clamp(13px,.95vw,15px)}.projects-feature__button,.projects-feature__github{white-space:nowrap;height:clamp(40px,3.2vw,48px);padding-inline:clamp(14px,1.2vw,18px)}.projects-feature__media{aspect-ratio:2940/1524;grid-area:media;place-self:center;width:100%;max-width:100%;height:auto;margin:0;position:relative;inset:auto}.projects-feature__video{aspect-ratio:2940/1524;object-fit:contain;clip-path:inset(0 0 0 2px);width:100%;max-width:100%;height:100%}.projects-feature__metrics{grid-area:metrics;align-self:center;gap:clamp(14px,1.5vw,22px);width:100%;min-width:0;max-width:100%;position:relative;inset:auto}.projects-metric{grid-template-columns:clamp(52px,4.5vw,68px) minmax(0,1fr);column-gap:clamp(10px,1.2vw,16px);width:100%;min-width:0;max-width:100%;height:auto;min-height:clamp(68px,5vw,80px)}.projects-metric__icon{width:clamp(52px,4.5vw,68px);height:clamp(52px,4.5vw,68px)}.projects-metric__icon--speed img{width:clamp(70.4px,5.6vw,89.6px);height:clamp(70.4px,5.6vw,89.6px)}.projects-metric__recall-icon{width:clamp(58px,5vw,74px);height:clamp(58px,5vw,74px)}.projects-metric strong,.projects-metric small{overflow-wrap:anywhere;min-width:0}.projects-metric small{white-space:normal;font-size:clamp(11px,.85vw,13px)}.projects-divider{width:calc(100% + 60px);max-width:none;margin-top:clamp(24px,2.2vw,32px);transform:translate(-30px,-60px)}.projects-list{column-gap:var(--projects-column-gap);grid-template-columns:repeat(3,minmax(0,1fr));height:auto;margin-top:clamp(28px,2.23vw,34px);transform:translate(-30px,-60px)}.projects-list__item{border-right:0;grid-template-columns:minmax(96px,124px) minmax(0,1fr);gap:clamp(17px,1.54vw,26px);width:100%;min-width:0;max-width:100%;height:auto;min-height:clamp(171px,11.97vw,188px)}.projects-list__item:after{top:0;right:calc(var(--projects-column-gap) / -2);content:"";background:#f0f1f3;width:1px;position:absolute;bottom:-24px;transform:translateY(-14px)}.projects-list__item:last-child:after{display:none}@media (width>=1181px){.projects-list__item,.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){gap:clamp(17px,1.54vw,26px);padding-left:12px}}.project-thumb{aspect-ratio:122/114;width:100%;min-width:0;max-width:124px;height:auto}.projects-list__body,.projects-list__body strong,.projects-list__body small,.projects-list__body>span,.projects-list__body time{overflow-wrap:anywhere;white-space:normal;width:100%;min-width:0;max-width:100%}.projects-list__item:first-child .projects-list__body{max-width:100%}.projects-list__body strong{font-size:clamp(12.8px,.94vw,14.5px);line-height:1.3}.projects-list__body small{margin-top:12px;font-size:clamp(9.5px,.73vw,11.1px);line-height:1.5}.projects-list__body>span{margin-top:13px;font-size:clamp(10.3px,.77vw,12px);line-height:1.5}.projects-list__body time{font-size:clamp(10.3px,.73vw,11.1px)}.projects-list__arrow,.projects-list__item:nth-child(3) .projects-list__arrow,.projects-list__item:nth-child(4) .projects-list__arrow{width:19px;max-width:100%;height:19px;right:clamp(12px,1.6vw,30px)}@media (width>=1181px){.projects-feature{padding-bottom:0}.projects-feature__media{align-self:end}.projects-divider{margin-top:calc(clamp(24px,2.2vw,32px) + 60px)}}@media (width<=1180px){.projects-feature{grid-template-columns:minmax(0,1fr) minmax(clamp(280px,40vw,340px),1fr);grid-template-areas:"copy media""metrics metrics";gap:clamp(24px,3vw,40px);min-height:0;padding:clamp(28px,3.5vw,40px)}.projects-feature__metrics{grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:clamp(12px,2.5vw,24px);display:grid}.projects-feature__settings{left:calc(100% + clamp(4px,.7vw,10px))}.projects-red-squiggle{display:none}.projects-list{gap:clamp(24px, 3vw, 32px) var(--projects-column-gap);grid-template-columns:repeat(2,minmax(0,1fr))}.projects-list__item:nth-child(2n):after{display:none}.projects-list__item{min-height:154px}}@media (width<=840px){.projects-feature{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy""media""metrics"}.projects-feature__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-feature__media{width:100%}.projects-feature__settings,.projects-rays,.projects-green-arrow{display:none}}@media (width<=639px){.projects-showcase{--projects-container-gap:32px;padding:0}.projects-feature{min-height:0;margin-top:16px;padding:22px}.projects-feature__copy h2{font-size:clamp(30px,8vw,38px)}.projects-feature__copy p{max-width:100%}.projects-tech-chips{gap:8px;margin-top:22px}.projects-tech-chip{height:30px;padding-inline:10px;font-size:12px}.projects-feature__actions{gap:14px;margin-top:22px;font-size:13px}.projects-feature__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.projects-metric{grid-template-columns:clamp(34px,10vw,42px) minmax(0,1fr);column-gap:6px;min-height:56px}.projects-metric__icon{width:clamp(34px,10vw,42px);height:clamp(34px,10vw,42px)}.projects-metric__icon--speed img{width:clamp(46.4px,12.8vw,57.6px);height:clamp(46.4px,12.8vw,57.6px)}.projects-metric__precision-icon,.projects-metric__recall-icon{width:clamp(42px,12vw,54px);height:clamp(42px,12vw,54px)}.projects-metric strong{font-size:16px}.projects-metric small{font-size:8px}.projects-divider{margin-top:22px}.projects-list{grid-template-columns:minmax(0,1fr);gap:19px;margin-top:24px}.projects-list__item,.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){border-right:0;gap:clamp(12px,4vw,18px);min-height:130px;padding:2px 16px 0 12px}.projects-list__item:after{display:none}.projects-list__item{grid-template-columns:minmax(89px,96px) minmax(0,1fr)}.project-thumb{max-width:96px}.projects-list__body strong{font-size:12px}.projects-list__body small{margin-top:10px;font-size:9.5px}.projects-list__body>span{margin-top:10px;font-size:10px}.projects-list__body time{font-size:9.5px}.projects-list__arrow,.projects-list__item:nth-child(3) .projects-list__arrow,.projects-list__item:nth-child(4) .projects-list__arrow{width:17px;height:17px;right:12px}}@media (width>=640px){.projects-feature{--featured-horizontal-stretch:clamp(32px, 5vw, 72px);width:calc(100% + var(--featured-horizontal-stretch));max-width:none;margin-right:calc(var(--featured-horizontal-stretch) / -2);margin-left:calc(var(--featured-horizontal-stretch) / -2)}}.projects-feature__doodle{z-index:2;aspect-ratio:2/3;pointer-events:none;width:clamp(64px,7vw,104px);position:absolute;top:50%;right:clamp(-64px,-3vw,-32px);transform:translateY(-50%)}.paper-plane-doodle{width:100%;height:100%;display:block;overflow:visible}.paper-plane-doodle__flight-path path{stroke-dasharray:.06 .04}.paper-plane-doodle--animated .paper-plane-doodle__flight-path{animation:7s linear infinite paper-plane-doodle-flight}.paper-plane-doodle--animated .paper-plane-doodle__airplane{transform-box:fill-box;transform-origin:50%;animation:4.5s ease-in-out infinite paper-plane-doodle-float}@keyframes paper-plane-doodle-flight{to{stroke-dashoffset:-.1px}}@keyframes paper-plane-doodle-float{0%,to{transform:translate(0)}50%{transform:translate(1px,-3px)}}@media (width<=1180px) and (width>=841px){.projects-feature__doodle{width:clamp(56px,6.5vw,72px);top:50%;right:clamp(-52px,-3vw,-28px);transform:translateY(-50%)}}@media (width<=840px){.projects-feature__doodle{width:clamp(22px,3.65vw,28px);top:50%;right:0;transform:translateY(-50%)}}@media (width<=639px){.projects-feature__doodle{width:22px;top:50%;right:0;transform:translateY(-50%)}}@media (prefers-reduced-motion:reduce){.paper-plane-doodle--animated .paper-plane-doodle__flight-path,.paper-plane-doodle--animated .paper-plane-doodle__airplane{animation:none}}.ai-overview{min-height:190px;color:var(--overview-ink);background:#fff9f4f5;border:1px solid #e4d2c7db;border-radius:18px;padding:28px 24px 25px;font-family:SFMono-Regular,Roboto Mono,Menlo,Monaco,Consolas,Liberation Mono,monospace;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffffffa,0 1px 5px #66423009}.ai-overview__header{z-index:2;align-items:center;gap:12px;height:22px;display:flex;position:relative}.ai-overview__star{width:20px;color:var(--overview-accent);font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:400;line-height:1;transform:translateY(-1px)}.ai-overview h2{color:var(--overview-accent);letter-spacing:-.025em;margin:0;font-size:15.4px;font-weight:600;line-height:1}.ai-overview__copy{z-index:2;max-width:690px;color:var(--overview-ink);letter-spacing:-.022em;margin:19px 0 0;font-size:14.3px;font-weight:400;line-height:25px;position:relative}.ai-overview__copy strong{color:var(--overview-accent);font-weight:600}.ai-overview__no-break{white-space:nowrap}.ai-overview__skills{z-index:2;align-items:center;gap:18px;margin-top:20px;display:flex;position:relative}.ai-overview__skills--revealing{animation:.9s cubic-bezier(.22,1,.36,1) both overview-skills-reveal}.ai-overview__skills--revealing .ai-overview__skill{animation:.7s cubic-bezier(.22,1,.36,1) both overview-skill-reveal}.ai-overview__skills--revealing .ai-overview__skill:nth-child(2){animation-delay:.1s}.ai-overview__skills--revealing .ai-overview__skill:nth-child(3){animation-delay:.2s}@keyframes overview-skills-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes overview-skill-reveal{0%{opacity:0;transform:translateY(5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.ai-overview__skill{height:38px;color:var(--overview-ink);letter-spacing:-.015em;white-space:nowrap;background:#ffffffd6;border:1px solid #e8d9d0f2;border-radius:10px;flex:none;align-items:center;gap:9px;padding:0 13px 0 11px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:14.3px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #fffffff2,0 3px 8px #63423214}.ai-overview__skill-icon{width:21px;height:21px;color:var(--overview-accent);flex:none}.ai-overview__skill-icon--python{object-fit:contain;width:22px;height:22px}.ai-overview__skill-icon--machine-learning{object-fit:contain;object-position:center;width:25.41px;height:25.41px}.ai-overview__skill-icon--computer-vision{object-fit:contain;object-position:center;width:23.1px;height:23.1px}.ai-overview__glow{z-index:0;opacity:.92;filter:blur(5px);pointer-events:none;background:radial-gradient(at 52% 48%,#cf7f5b6b 0%,#e09d7c4d 31%,#f4cebb33 54%,#fff4ed14 70%,#0000 78%);border-radius:48% 52% 50% 49%;width:214px;height:168px;position:absolute;top:13px;right:68px}.ai-overview__sparkle{z-index:2;color:var(--overview-accent);pointer-events:none;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1;position:absolute}.ai-overview__sparkle--large{font-size:30px;top:32px;right:55px}.ai-overview__sparkle--small{font-size:16px;bottom:43px;right:258px}.ai-overview__arrow{z-index:2;border-right:1px solid var(--overview-accent);border-bottom:1px solid var(--overview-accent);pointer-events:none;border-bottom-right-radius:72px;width:67px;height:63px;position:absolute;bottom:43px;right:247px}.ai-overview__arrow:after{border-top:1px solid var(--overview-accent);border-right:1px solid var(--overview-accent);content:"";transform-origin:100% 0;width:8px;height:8px;position:absolute;top:-1px;right:-3px;transform:rotate(-18deg)}.typing-caret{vertical-align:-.12em;background:currentColor;width:1px;height:1.05em;margin-left:2px;animation:.72s step-end infinite typing-caret-blink;display:inline-block}@keyframes typing-caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}@media (width<=900px){.topbar{padding:0 22px}.about-section{grid-template-columns:1fr;gap:28px;min-height:0;padding:30px 4px 14px}.about-section__intro,.about-section__details{max-width:none}.nav-links{gap:22px}.ai-overview__glow{right:24px}.ai-overview__sparkle--large{right:28px}.ai-overview__arrow{right:205px}.ai-overview__sparkle--small{right:216px}}@media (width<=639px){.browser-frame{height:auto;min-height:100dvh}.nav-links{gap:0}.social-dock{width:min(158px,40vw);height:52px;padding:0}.nav-links>a{display:none}.hero-content{width:100%;min-height:100dvh;position:relative}.search-panel{min-height:100dvh;padding:20px 12px 96px}.about-section{gap:24px;padding:22px 4px 8px}.about-section h2{margin-top:15px;font-size:clamp(38px,12vw,54px)}.about-section__intro p{font-size:16px}.about-section__detail-card,.about-section__focus,.about-section__link{border-radius:16px}.ai-overview{border-radius:16px;min-height:214px;padding:22px 18px 23px}.ai-overview__copy{max-width:calc(100% - 12px);margin-top:15px;font-size:13.2px;line-height:21px}.ai-overview__skills{scrollbar-width:none;gap:18px;margin-top:17px;margin-left:-15px;margin-right:-15px;padding-bottom:2px;overflow-x:auto}.ai-overview__skills::-webkit-scrollbar{display:none}.ai-overview__desktop-break{display:none}.ai-overview__glow{opacity:.62;width:176px;height:143px;top:6px;right:-50px}.ai-overview__sparkle--large{font-size:24px;top:21px;right:13px}.ai-overview__arrow,.ai-overview__sparkle--small{display:none}.hero-visual{background:#f9f7f3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#050a18;--panel:#091224e0;--text:#e8f1ff;--muted:#9bacc8;--line:#84afeb40;--overview-accent:#9fc7ff;--overview-ink:#d9e7ff;--contact-page-background:radial-gradient(ellipse 42% 35% at 58% 112%, #4573be38, transparent 72%), radial-gradient(ellipse 31% 40% at 96% 91%, #6b48c433, transparent 73%), radial-gradient(circle at 62% 44%, #1c3967bd, transparent 30%), linear-gradient(116deg, #050b19 0%, #0a1730 52%, #040813 100%)}html[data-theme=dark],html[data-theme=dark] body{color:var(--text);background:#050a18}html[data-theme=dark] .browser-frame{background:radial-gradient(circle at 16% 16%,#4a77cd2e,#0000 28%),radial-gradient(circle at 88% 82%,#6446c233,#0000 32%),#050a18;border-top-color:#86b2f129}html[data-theme=dark] .hero-visual{background:radial-gradient(circle at 18% 16%,#5288e429,#0000 28%),radial-gradient(circle at 84% 72%,#704acd26,#0000 34%),linear-gradient(135deg,#07101f 0%,#0b1730 52%,#040814 100%)}html[data-theme=dark] .hero-visual:after{content:"";opacity:.56;pointer-events:none;background-image:radial-gradient(circle at 8% 18%,#ebf5ffd1 0 1px,#0000 1.8px),radial-gradient(circle at 18% 67%,#8ec4ffb8 0 1px,#0000 1.8px),radial-gradient(circle at 31% 12%,#ffffffc7 0 1px,#0000 1.7px),radial-gradient(circle at 46% 79%,#a7d0ffa3 0 1px,#0000 1.7px),radial-gradient(circle at 59% 28%,#ffffffc2 0 1px,#0000 1.7px),radial-gradient(circle at 73% 63%,#bcdbffb3 0 1px,#0000 1.8px),radial-gradient(circle at 88% 18%,#fffc 0 1px,#0000 1.8px),radial-gradient(circle at 94% 88%,#91c3ffad 0 1px,#0000 1.8px);position:absolute;inset:0}html[data-theme=dark] .search-panel:not(.contact-search-panel){color:#e8f1ff!important;background:#070f1fd6!important;border-color:#93b8ed2e!important;box-shadow:0 28px 70px #0000007a,inset 0 1px #c7e0ff14!important}html[data-theme=dark] .search-panel:not(.contact-search-panel):before{background:radial-gradient(760px 220px at 50% 0,#79a8ff29,#0000 75%),radial-gradient(520px 340px at 76% 38%,#6448c61f,#0000 72%)}html[data-theme=dark] .search-bar{background:#111f37e0!important;border-color:#8bb2eb38!important;box-shadow:0 12px 30px #0000003d,inset 0 1px #dcedff14!important}html[data-theme=dark] .search-bar>svg{color:#aacaff!important}html[data-theme=dark] .search-bar input{color:#edf5ff!important;caret-color:#a9c5ff!important}html[data-theme=dark] .search-bar input::placeholder{color:#8fa5c3!important}html[data-theme=dark] .search-panel .filter-tab{color:#a4b4cc!important}html[data-theme=dark] .search-panel .filter-tab[aria-selected=true],html[data-theme=dark] .search-panel .filter-tab:hover,html[data-theme=dark] .search-panel .filter-tab:focus-visible{color:#b9ceff!important}html[data-theme=dark] .search-panel .filter-tab:after{background:#93b9ff!important}html[data-theme=dark] .search-panel .filter-result-count{color:#9dafc9!important}html[data-theme=dark] .result-card{color:#e8f1ff!important;background:#0c1930e6!important;border-color:#87afe72b!important;box-shadow:0 16px 38px #00000047,inset 0 1px #d9ecff14!important}html[data-theme=dark] .result-card .result-title{color:#a9ccff!important}html[data-theme=dark] .search-panel .result-card--waterloo{background:linear-gradient(110deg,#fed34c1f,#0000 56%),#0c1930e6!important;border-color:#fed34c6b!important;box-shadow:inset 4px 0 #fed34c,0 16px 38px #00000047,0 0 0 1px #fed34c1a!important}html[data-theme=dark] .search-panel .result-card--waterloo:hover{border-color:#fed34c9e!important;box-shadow:inset 4px 0 #fed34c,0 18px 42px #00000057,0 0 0 2px #fed34c29!important}html[data-theme=dark] .search-panel .result-card--waterloo .result-title{color:#fed34c!important}html[data-theme=dark] .search-panel .result-card-sponsored{color:#fed34c!important;background:#fed34c24!important;border-color:#fed34c6b!important;box-shadow:inset 0 1px #ffffff1a!important}html[data-theme=dark] .search-panel .result-card--waterloo .result-card-url{color:#e10054!important}html[data-theme=dark] .search-panel .result-card--waterloo .result-card-description{color:#f1ede3!important}html[data-theme=dark] .search-panel .result-card--waterloo>span:last-child{color:#fed34c!important;border-color:#fed34c5c!important}html[data-theme=dark] .result-card [class*="text-[#6547e8]"],html[data-theme=dark] .result-card [class*="text-[#536075]"]{color:#a8bedf!important}html[data-theme=dark] .result-card>span:last-child{color:#aac8ff!important;background:#142848c7!important;border-color:#94b8ed2e!important;box-shadow:inset 0 1px #e1efff14!important}html[data-theme=dark] .ai-overview{color:var(--overview-ink);background:#0b1a33e6;border-color:#8fb8f033;box-shadow:inset 0 1px #d6eaff14,0 12px 28px #0003}html[data-theme=dark] .ai-overview__skill{color:#d9e8ff;background:#142a4cd1;border-color:#8fb8f033;box-shadow:inset 0 1px #dfefff14,0 5px 14px #0003}html[data-theme=dark] .about-section{color:#dceaff}html[data-theme=dark] .about-section h2{color:#e6f0ff}html[data-theme=dark] .about-section__intro p{color:#aabbd3}html[data-theme=dark] .about-section__detail-card,html[data-theme=dark] .about-section__focus,html[data-theme=dark] .about-section__link{color:#dceaff;background:#0c1a32db;border-color:#8db4e92e;box-shadow:inset 0 1px #dbedff12,0 12px 25px #00000038}html[data-theme=dark] .about-section__detail-card strong,html[data-theme=dark] .about-section__link small{color:#e5efff}html[data-theme=dark] .about-section__focus-item{color:#b7c8df}html[data-theme=dark] .projects-showcase{color:#e7f0ff}html[data-theme=dark] .projects-feature:before{box-shadow:none;background:0 0;border:0;border-radius:0}html[data-theme=dark] .projects-feature__copy h2{color:#eff6ff}html[data-theme=dark] .projects-feature__copy p{color:#b6cbea}html[data-theme=dark] .projects-feature__badge{color:#a9c7ff;background:#4258ab6b}html[data-theme=dark] .projects-tech-chip{color:#dbe9ff;background:#152a4ae0;border-color:#97bbed33;box-shadow:inset 0 1px #deefff14,0 3px 9px #0003}html[data-theme=dark] .projects-feature__actions{color:#dbe9ff}html[data-theme=dark] .projects-list__arrow{color:#9dc2ff}html[data-theme=dark] .projects-feature__github{color:#e8ddd7;border-color:#0000}html[data-theme=dark] .projects-feature__github:hover,html[data-theme=dark] .projects-feature__github:focus-visible{color:#ffd6c1;background:#432b25;border-color:#d38b6e;box-shadow:0 4px 10px #0003}html[data-theme=dark] .projects-divider,html[data-theme=dark] .projects-list__item:after{background:linear-gradient(90deg,#0000,#87b2eb52 10% 90%,#0000)}html[data-theme=dark] .projects-list__body strong{color:#9fc4ff}html[data-theme=dark] .projects-list__body small,html[data-theme=dark] .projects-list__body time{color:#8ea9ce}html[data-theme=dark] .projects-list__body>span{color:#b7cbe8}html[data-theme=dark] .experience-timeline{--experience-line:#59a7c8;color:#e4efff}html[data-theme=dark] .experience-entry__period{color:#d8e8ff}html[data-theme=dark] .experience-entry__node{background:#0b1b33f5;border-color:#8fbcee57;box-shadow:0 1px 8px #00000047}html[data-theme=dark] .experience-card{background:#0a182feb;border-color:#8fb5e933;box-shadow:0 12px 26px #0000004d,inset 0 1px #d9edff12}html[data-theme=dark] .experience-card__divider{background:#8fb5e933}html[data-theme=dark] .experience-card h3{color:#e7f1ff}html[data-theme=dark] .experience-card__description{color:#a8bad4}html[data-theme=dark] .experience-card__tags span{color:#a9cbea;background:#244d697a}html[data-theme=dark] .experience-card__arrow{color:#9fc7ff;background:#132a4cd1;border-color:#8fb5e940}html[data-theme=dark] .search-panel.map-search-panel{background:#070f1fd6!important}html[data-theme=dark] .search-panel.contact-search-panel{color:#e7f1ff!important;background:var(--contact-page-background)!important;border-color:#0000!important}html[data-theme=dark] .contact-experience{color:#e7f1ff;background:var(--contact-page-background)}html[data-theme=dark] .contact-paper-noise{opacity:.22;background-image:repeating-radial-gradient(circle at 17% 23%,#76a9e80f 0 .45px,#0000 .7px 3.3px),repeating-radial-gradient(circle at 74% 61%,#dceeff14 0 .6px,#0000 .85px 4px)}html[data-theme=dark] .contact-star,html[data-theme=dark] .contact-star:after{background:#add7ffb8;box-shadow:0 0 7px #7abcff57}html[data-theme=dark] .contact-star--bright,html[data-theme=dark] .contact-star--bright:after{background:#eff7ffe6;box-shadow:0 0 10px #addaff8f}html[data-theme=dark] .contact-dust{background:#6e99c7;box-shadow:0 0 3px #7ebcff61}html[data-theme=dark] .contact-intro h2{color:#f0f6ff}html[data-theme=dark] .contact-intro>p:not(.contact-announcement){color:#b8cbe4}html[data-theme=dark] .contact-form{background:#08162cb3;border-color:#8bb5eb3d;box-shadow:inset 0 1px #dbeeff14,0 12px 30px #00000047}html[data-theme=dark] .contact-form h3{color:#e7f1ff}html[data-theme=dark] .contact-form input,html[data-theme=dark] .contact-form textarea{color:#e9f3ff;background:#112544bd;border-color:#91b5e44d;box-shadow:inset 0 1px 3px #00000029,0 1px #dbeeff0d}html[data-theme=dark] .contact-form input::placeholder,html[data-theme=dark] .contact-form textarea::placeholder{color:#8fa8c8}html[data-theme=dark] .contact-form input:focus,html[data-theme=dark] .contact-form textarea:focus{background:#153057db;border-color:#80b9ffc2;box-shadow:0 0 0 3px #67abff29}html[data-theme=dark] .contact-form__error{color:#ffb9b0;background:#37161ff0}html[data-theme=dark] .contact-orbit-ring{border-color:#7ab4ef47}html[data-theme=dark] .contact-orbit-ring--one,html[data-theme=dark] .contact-orbit-ring--two{border-color:#7db5ef57}html[data-theme=dark] .contact-connector{background:linear-gradient(90deg,#76b6f4b8,#76b6f42e)}html[data-theme=dark] .contact-connector:before,html[data-theme=dark] .contact-connector:after{background:#5c8ec8;border-color:#dbf0ffe0;box-shadow:0 0 0 1px #76b5f533}html[data-theme=dark] .contact-orbit-item__label{color:#e4efff}html[data-theme=dark] .contact-orbit-item__label small{color:#a8bedc}html[data-theme=dark] .contact-sun__core{appearance:none;pointer-events:auto;cursor:pointer;padding:0}html[data-theme=dark] .contact-sun__core:focus-visible{outline-offset:8px;outline:2px solid #a6d6fff2}html[data-theme=dark] .contact-sun--moon:before{filter:blur(13px);opacity:.62;background:radial-gradient(circle,#eff8ff94 0 22%,#bee0ff52 45%,#6faae924 63%,#0000 76%);width:clamp(170px,18vw,260px);height:clamp(170px,18vw,260px);animation:4.8s ease-in-out infinite contact-moon-aura}html[data-theme=dark] .contact-sun--moon:after{filter:blur(6px);opacity:.55;background:radial-gradient(circle,#f7fcff9e 0 24%,#cce8ff57 48%,#0000 76%);width:clamp(120px,13vw,178px);height:clamp(120px,13vw,178px)}html[data-theme=dark] .contact-sun--moon .contact-sun__rays{opacity:0;animation:none;transform:translate(-50%,-50%)scale(.68)}html[data-theme=dark] .contact-sun--moon .contact-sun__core{background:radial-gradient(at 19% 76%,#8f9da53d,#0000 48%),radial-gradient(at 76% 24%,#ffffff5c,#0000 52%),linear-gradient(25deg,#cbd5d9 0%,#e1e7ea 34%,#eff3f4 68%,#f3f5f5 100%);border-color:#c6d1d7db;width:clamp(68px,8.75vw,112px);height:clamp(68px,8.75vw,112px);animation:none;overflow:hidden;box-shadow:inset 8px -10px 14px #74828b38,inset -5px 5px 10px #ffffff94,0 0 14px #e2f4ff94,0 0 32px #9dcdff52,0 0 58px #5d9de62e,0 2px 7px #00000042}html[data-theme=dark] .contact-sun--moon .contact-sun__core:before{border-color:#a1afb64d}html[data-theme=light] .contact-sticky-note{color:#493512;background:linear-gradient(135deg,#fff8be 0%,#fff19b 56%,#ffe77a 100%);border-color:#ab7e1880;box-shadow:4px 6px #5742221f,0 12px 22px #51412c24,0 0 18px #ffdc5638,inset 0 1px #ffffffc7,inset 0 -1px #c6911b29}@keyframes contact-moon-float{0%,to{transform:translate(-50%,-50%)scale(.97)}50%{transform:translate(-50%,-50%)scale(1.035)}}@keyframes contact-moon-aura{0%,to{opacity:.54;transform:translate(-50%,-50%)scale(.94)}50%{opacity:.82;transform:translate(-50%,-50%)scale(1.05)}}main,.browser-frame,.hero-content,#portfolioSearchRoot,.search-panel,.search-panel__inner,.search-results-stack,.result-stack{min-width:0}main{width:100%}.browser-frame{height:auto;min-height:100svh;overflow:visible}.hero-content{min-height:100svh;position:relative;inset:auto;transform:translateY(-20px)}#portfolioSearchRoot{height:auto;min-height:100svh}.search-panel{width:100%;max-width:none;height:auto;min-height:100svh;margin-inline:auto;padding:0;overflow:visible}.search-panel__inner{width:min(100%,1920px);min-height:100svh;margin-inline:auto;padding:clamp(24px,4vw,56px) clamp(20px,5vw,72px) clamp(88px,8vw,108px)}.search-panel.map-search-panel,.search-panel.contact-search-panel{padding:0}.browser-frame:has(.about-section){background:#fff}.browser-frame:has(.map-search-panel){background:#fff}.browser-frame:has(.experience-timeline){background:#fff}.browser-frame:has(.about-section) .hero-visual{background:#fff}.browser-frame:has(.map-search-panel) .hero-visual{background:#fff}.browser-frame:has(.experience-timeline) .hero-visual{background:#fff}:is(.browser-frame:has(.about-section) .search-panel,.browser-frame:has(.map-search-panel) .search-panel,.browser-frame:has(.experience-timeline) .search-panel){border-color:#0000;box-shadow:inset 0 1px #ffffffe6}.search-panel .search-bar{gap:clamp(16px,2.5vw,48px);height:clamp(72px,6vw,96px);padding-inline:clamp(20px,2.4vw,36px)}.search-panel .search-bar>svg{width:clamp(28px,2.2vw,34px);height:clamp(28px,2.2vw,34px)}.search-panel .search-bar input{min-width:0;max-width:100%;font-size:clamp(24px,2.45vw,38px)}.search-bar__submit{width:clamp(48px,4.2vw,64px);height:clamp(48px,4.2vw,64px);margin-right:clamp(-20px,-1.25vw,-4px)}.search-bar__submit svg{width:clamp(24px,1.8vw,28px);height:clamp(24px,1.8vw,28px)}.search-header>.filter-tabs{margin-top:clamp(20px,2.2vw,28px)}.search-panel .filters-scroll{overflow:visible}.search-panel [role=tablist]{gap:clamp(14px,1.8vw,22px) clamp(20px,3.5vw,54px);min-width:0}.search-panel .filter-tab{padding-bottom:clamp(10px,1vw,14px);font-size:clamp(15px,1.05vw,16px)}.search-panel .filter-result-count{font-size:clamp(14px,1vw,16px)}.search-results-stack{margin-top:clamp(8px,.8vw,10px)}.search-results-stack.all-results{margin-top:calc(clamp(8px,.8vw,10px) + 20px)}.result-stack{row-gap:10px}.search-panel .result-card,.search-panel .result-card>span{min-width:0}.search-panel .result-card .result-title{overflow-wrap:anywhere;font-size:clamp(20px,1.75vw,27px)}.search-panel .result-card .result-card-description{font-size:clamp(15px,1.15vw,18px)}.search-panel .result-card--waterloo .result-title{font-size:clamp(23px,1.95vw,27px)}.search-panel .result-card--waterloo .result-card-description{font-size:clamp(16px,1.3vw,18px)}.ai-overview{min-height:clamp(190px,15vw,230px);padding:clamp(22px,2.2vw,28px) clamp(18px,2vw,24px) clamp(20px,2vw,25px)}.ai-overview__copy{max-width:72ch;font-size:clamp(13.2px,.9vw,14.3px);line-height:clamp(21px,1.6vw,25px)}.ai-overview__skills{flex-wrap:wrap;gap:clamp(12px,1.3vw,18px);min-width:0}.ai-overview__skill{white-space:normal;max-width:100%;font-size:clamp(13px,.95vw,14.3px)}.about-section,.about-section__intro,.about-section__details,.projects-feature,.projects-feature__copy,.projects-feature__media,.projects-feature__metrics,.projects-list,.projects-list__item,.projects-list__body{min-width:0}.projects-showcase{max-width:100%;overflow:visible;transform:translateY(clamp(-60px,-3.9vw,-24px))}.projects-divider,.projects-list{transform:translate(clamp(-30px,-2vw,-14px),clamp(-60px,-3.9vw,-24px))}.projects-divider{width:calc(100% + clamp(28px,4vw,60px))}.projects-list{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-list__body strong,.projects-list__body small,.projects-list__body>span,.projects-list__body time{overflow-wrap:anywhere}.experience-timeline{min-width:0;max-width:100%;height:min(596px,max(420px,100svh - 218px))}.search-panel.map-search-panel .places-map,.places-map{height:clamp(500px,72svh,760px);min-height:0}.location-card--anchored{left:clamp(125px, var(--location-anchor-x), calc(100% - 125px));top:clamp(170px, var(--location-anchor-y), calc(100% - 12px));max-width:calc(100% - 24px)}.globe-hint{overflow-wrap:anywhere;max-width:calc(100% - 24px)}@media (width>=640px){.contact-experience{width:100vw;max-width:100vw;height:clamp(720px,100svh - 128px,920px);min-height:720px;margin-top:clamp(-94px,-6vw,-54px)}.contact-intro{width:min(325px,100% - 2*clamp(24px,3.95vw,72px));top:clamp(90px,100svh - 650px,155px);left:clamp(24px,3.95vw,72px)}.contact-intro h2{font-size:clamp(34px,2.6vw,44px)}.contact-form{width:min(325px,100%);max-width:100%}}@media (width<=1390px) and (width>=841px){.projects-list{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(24px,3vw,32px)}.projects-list__item,.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){min-height:154px}.projects-list__item:after{display:none}}@media (width>=901px) and (width<=1100px){.search-panel .filter-result-count{margin-top:14px;position:static;right:auto}}@media (width>=901px) and (height<=760px){.search-panel__inner{padding-bottom:clamp(72px,8vh,96px)}.about-section{gap:clamp(22px,3vw,40px);padding-top:24px;padding-bottom:12px}.about-section h2{margin-top:14px;margin-bottom:14px}.ai-overview{min-height:190px}}@media (width<=639px){.ai-overview__skills{margin-inline:0;overflow:visible}}@media (width<=1024px){.search-panel .search-bar input{font-size:clamp(18px,2.8vw,28px)}.search-panel .filter-tab{font-size:clamp(13px,1.8vw,15px)}.search-panel .filter-result-count{font-size:clamp(12px,1.6vw,14px)}.search-panel .result-card .result-title{font-size:clamp(18px,2.2vw,23px)}.search-panel .result-card--waterloo .result-title{font-size:clamp(20px,2.3vw,24px)}.search-panel .result-card .result-card-description{font-size:clamp(13px,1.7vw,16px)}.search-panel .result-card--waterloo .result-card-description{font-size:clamp(14px,1.8vw,16px)}.about-section h2{font-size:clamp(34px,5vw,52px)}.about-section__intro p{font-size:clamp(14px,1.6vw,17px)}.projects-feature__copy h2{font-size:clamp(32px,3.8vw,46px)}.projects-feature__copy p{font-size:clamp(13px,1vw,15px)}.projects-metric strong{font-size:clamp(18px,1.8vw,24px)}.contact-intro h2{font-size:clamp(30px,3.2vw,38px)}.contact-intro>p:not(.contact-announcement){font-size:clamp(15px,1.6vw,17px);line-height:1.7}}@media (width<=639px){.topbar{height:60px;padding-inline:16px}.brand{font-size:12px}.search-panel .search-bar{gap:clamp(10px,3vw,14px);height:clamp(58px,16vw,68px);padding-inline:clamp(16px,4vw,20px)}.search-panel .search-bar>svg{width:clamp(22px,6vw,26px);height:clamp(22px,6vw,26px)}.search-panel .search-bar input{font-size:clamp(16px,4.3vw,18px)}.search-bar__submit{width:clamp(42px,12vw,48px);height:clamp(42px,12vw,48px);margin-right:-10px}.search-bar__submit svg{width:21px;height:21px}.search-header>.filter-tabs{margin-top:18px}.search-panel [role=tablist]{gap:10px 18px}.search-panel .filter-tab{padding-bottom:8px;font-size:clamp(12px,3.2vw,14px)}.search-panel .filter-result-count{margin-top:11px;font-size:clamp(11px,3.1vw,13px)}.search-panel .result-card .result-title{font-size:clamp(16px,4.5vw,19px)}.search-panel .result-card--waterloo .result-title{font-size:clamp(17px,4.8vw,20px)}.search-panel .result-card-url,.search-panel .result-card--waterloo .result-card-url{font-size:clamp(11px,3.2vw,13px)}.search-panel .result-card .result-card-description{font-size:clamp(12px,3.5vw,14px)}.search-panel .result-card--waterloo .result-card-description{font-size:clamp(12.5px,3.7vw,14.5px)}.search-panel .result-card-sponsored{margin-bottom:5px;padding:4px 7px;font-size:9px}.search-panel .result-card--waterloo>span:first-child{font-size:22px}.ai-overview{min-height:196px;padding:20px 16px}.ai-overview__star{width:18px;font-size:19px}.ai-overview h2{font-size:13px}.ai-overview__copy{font-size:clamp(12px,3.4vw,13px);line-height:1.55}.ai-overview__skill{font-size:clamp(11px,3vw,12px)}.about-section{gap:20px;padding-top:18px}.about-section__eyebrow,.about-section__detail-label{font-size:10px}.about-section h2{margin:13px 0 14px;font-size:clamp(29px,8.8vw,44px)}.about-section__intro p{font-size:clamp(13px,3.8vw,15px);line-height:1.55}.about-section__detail-card,.about-section__focus{padding:18px}.about-section__detail-card strong{margin-top:9px;font-size:clamp(17px,4.8vw,19px)}.about-section__focus-item{gap:5px;min-height:29px;padding:6px 8px;font-size:10px}.about-section__focus-item svg{width:13px;height:13px}.about-section__link{gap:12px;padding:16px 16px 16px 18px;font-size:12px}.about-section__link small{font-size:clamp(16px,4.5vw,18px)}.projects-feature__badge{height:21px;padding-inline:8px;font-size:9px}.projects-feature__badge span{font-size:13px}.projects-feature__copy h2{font-size:clamp(28px,7.8vw,34px)}.projects-feature__copy p{font-size:clamp(12px,3.5vw,14px);line-height:1.5}.projects-tech-chip{height:28px;padding-inline:8px;font-size:10px}.projects-feature__actions{gap:10px;font-size:11px}.projects-feature__github{font-size:12px}.projects-metric strong{font-size:14px}.projects-metric small{font-size:7px}.projects-list__body strong{font-size:11px}.projects-list__body small,.projects-list__body time{font-size:8.5px}.projects-list__body>span{font-size:9px}.experience-entry__period{font-size:15px}.experience-card h3{font-size:17px}.experience-card__role{font-size:12px}.experience-card__description{font-size:11px}.experience-card__tags span{padding-inline:7px;font-size:9px}.contact-intro h2{font-size:clamp(24px,7.6vw,30px)}.contact-intro>p:not(.contact-announcement){width:min(100%,290px);margin-top:12px;font-size:clamp(13px,3.8vw,15px);line-height:1.55}.contact-sticky-note p{font-size:12px}.contact-form h3{margin-bottom:13px;font-size:12px}.contact-form input,.contact-form textarea{font-size:16px}.contact-form button{font-size:11px}.contact-orbit-item__label strong{font-size:10px}.contact-orbit-item__label small{font-size:8px}.location-card h3{font-size:13px}.location-card__name,.location-card__description{font-size:9px}}.projects-showcase{font-size:clamp(12px,1vw,16px)}.projects-feature__badge{font-size:clamp(9px,.86vw,11px)}.projects-feature__badge span{font-size:clamp(12px,1.25vw,16px)}.projects-feature__copy h2{font-size:clamp(26px,3.3vw,52px)}.projects-feature__copy p{font-size:clamp(12px,1.1vw,16px)}.projects-tech-chip{font-size:clamp(10px,.9vw,14px)}.projects-feature__actions{font-size:clamp(10px,.95vw,15px)}.projects-feature__github{font-size:clamp(10px,1.17vw,15px)}.projects-metric strong{font-size:clamp(14px,1.65vw,28px)}.projects-metric small{font-size:clamp(7px,.85vw,13px)}.projects-list__body strong{font-size:clamp(11px,.94vw,14.5px)}.projects-list__body small,.projects-list__body time{font-size:clamp(8px,.73vw,11.1px)}.projects-list__body>span{font-size:clamp(9px,.77vw,12px)}@media (width<=840px){.projects-list{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-list__item,.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){grid-template-columns:minmax(96px,124px) minmax(0,1fr)}.projects-list__item:nth-child(2n):after{display:none}}@media (width<=720px){.projects-list{grid-template-columns:minmax(0,1fr)}.projects-list__item,.projects-list__item:nth-child(2),.projects-list__item:nth-child(3),.projects-list__item:nth-child(4){grid-template-columns:minmax(89px,96px) minmax(0,1fr)}.project-thumb{max-width:96px}.projects-list__item:after{display:none}}.browser-frame,.hero-content,#portfolioSearchRoot,.search-panel,.search-panel__inner{box-sizing:border-box;min-width:0;max-width:100%}.browser-frame{width:100%;height:auto;min-height:100svh;overflow:hidden visible}.hero-content,#portfolioSearchRoot,.search-panel{height:auto;min-height:100svh}.search-panel__inner{width:min(100%,1920px);overflow:visible}.browser-frame:has(.contact-search-panel) .search-panel__inner{padding-bottom:0}.about-section h2{font-size:clamp(30px,5vw,66px)}.about-section__intro p{font-size:clamp(13px,1.6vw,19px)}.about-section__detail-card strong{font-size:clamp(17px,1.6vw,22px)}.experience-timeline{height:auto;max-height:none;padding-bottom:clamp(18px,3svh,30px);overflow:visible}.experience-entry,.experience-card,.experience-entry:last-of-type,.experience-entry:last-of-type .experience-card{min-height:clamp(136px,19svh,175px)}.experience-entry__period{font-size:clamp(14px,1.55vw,23px)}.experience-card h3{font-size:clamp(17px,1.8vw,25px)}.experience-card__role{font-size:clamp(12px,1.15vw,16px)}.experience-card__description{font-size:clamp(11px,1vw,14px)}.experience-card__tags span{font-size:clamp(9px,.86vw,12px)}@media (width<=760px){.experience-card{transform:translate(clamp(18px,5.8vw,50px))}}.places-map,.search-panel.map-search-panel .places-map{max-width:100%;height:clamp(500px,72svh,760px)}.contact-experience{width:100vw;max-width:100vw;height:max(620px,100svh - 96px);min-height:max(620px,100svh - 96px);overflow:visible}.contact-intro h2{font-size:clamp(24px,7.6vw,44px)}.contact-intro>p:not(.contact-announcement){width:min(260px,100%);font-size:clamp(13px,1.15vw,17px);line-height:clamp(22px,2.2vw,34px)}.contact-form{width:min(325px,100%);margin-top:clamp(16px,2.05vw,28px);padding:clamp(12px,1.25vw,17px)}.contact-sticky-note{width:min(248px,100%);margin-bottom:clamp(12px,1.25vw,17px);padding:clamp(10px,.95vw,13px) clamp(12px,1.1vw,15px) clamp(11px,1vw,14px)}.contact-sticky-note p{font-size:clamp(11px,1vw,14px)}.contact-form h3{margin-bottom:clamp(11px,1.25vw,17px);font-size:clamp(11px,.95vw,14px)}.contact-form label{margin-top:clamp(7px,.7vw,10px)}.contact-form input,.contact-form textarea{font-size:clamp(12px,1vw,14px)}.contact-form input{height:clamp(32px,2.55vw,35px)}.contact-form textarea{height:clamp(72px,6.2vw,84px);min-height:clamp(72px,6.2vw,84px)}.contact-form button,.contact-form button.contact-form__rocket-button{height:clamp(42px,3.5vw,48px);font-size:clamp(11px,.95vw,14.3px)}.contact-form__rocket-launch{height:clamp(42px,3.5vw,48px)}.contact-form__rocket-image-frame,.contact-flight-rocket .contact-form__rocket-image-frame{overflow:visible}.contact-form__rocket-image{top:calc(50% + clamp(4px,.8vw,12px))}.contact-sun:before{width:clamp(240px,52vw,760px);height:clamp(240px,52vw,760px)}.contact-sun:after{width:clamp(150px,14.5vw,198px);height:clamp(150px,14.5vw,198px)}.contact-sun__rays{width:clamp(144px,15.7vw,214px);height:clamp(144px,15.7vw,214px)}.contact-sun__core{width:clamp(76px,9vw,124px);height:clamp(76px,9vw,124px)}.contact-planet,.contact-planet--linkedin,.contact-planet--github{--planet-size:clamp(48px, 7.1vw, 84px)}.contact-planet svg{width:clamp(20px,2.15vw,31px);height:clamp(20px,2.15vw,31px)}.contact-orbit-item__label{width:clamp(94px,11.3vw,154px)}.contact-orbit-item__label strong{gap:clamp(3px,.6vw,8px);font-size:clamp(10px,2vw,17px)}.contact-orbit-item__label strong svg{width:clamp(12px,1.2vw,16px);height:clamp(12px,1.2vw,16px)}.contact-orbit-item__label small{margin-top:clamp(2px,.5vw,7px);font-size:clamp(8px,1.6vw,14px)}.contact-nebula--left,.contact-nebula--right{bottom:0}@media (width<=900px) and (width>=640px){.contact-experience{height:max(660px,100svh - 120px);min-height:max(660px,100svh - 120px)}}@media (width<=639px){.contact-experience{height:max(560px,100svh - 140px);min-height:max(560px,100svh - 140px)}}html,body{height:100%;min-height:100dvh;overflow:hidden}body{min-height:100dvh}main,.browser-frame,.hero-content,#portfolioSearchRoot,.search-panel,.search-panel__inner{height:100%;min-height:100dvh}.browser-frame{height:100dvh;overflow:hidden}.hero-content{transform:none}.search-panel__inner{padding-top:clamp(4px,4vw - 20px,36px)}.browser-frame:has(.contact-search-panel){height:100%;min-height:100dvh}.browser-frame:has(.contact-search-panel) .hero-content{height:100%;min-height:100dvh}.browser-frame:has(.contact-search-panel) #portfolioSearchRoot{height:100%;min-height:100dvh}.browser-frame:has(.contact-search-panel) .search-panel{height:100%;min-height:100dvh}.browser-frame:has(.contact-search-panel){overflow:hidden}.browser-frame:has(.contact-search-panel) .hero-content{position:relative;inset:auto;transform:none}.browser-frame:has(.contact-search-panel) #portfolioSearchRoot{height:100%}:is(html:has(.about-under-construction),body:has(.about-under-construction)){height:auto;min-height:100%;overflow:hidden auto}main:has(.about-under-construction){height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction){height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction) .hero-content{height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction) #portfolioSearchRoot{height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction) .search-panel{height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction) .search-panel__inner{height:auto;min-height:100dvh}.browser-frame:has(.about-under-construction){overflow:visible}.browser-frame:has(.about-under-construction) .hero-content{position:relative;inset:auto;transform:none}.browser-frame:has(.about-under-construction) .search-panel__inner{padding-bottom:24px;overflow:visible}.browser-frame:has(.about-under-construction) .under-construction-overlay{place-items:center}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}.search-panel.all-search-panel{--all-surface:#fdfcf9;--all-ink:#302d2a;--all-muted:#736c65;--all-accent:#a35133;--all-line:#e6e0d8;--all-card:#fffefa;--all-soft:#f4efe8;background:var(--all-surface);color:var(--all-ink);box-shadow:none;border:0}:is(html:has(.all-search-panel),body:has(.all-search-panel)){height:auto;min-height:100%;overflow:clip auto}.search-panel.all-search-panel,.all-search-panel .search-panel__inner{height:auto;min-height:100dvh}main:has(.all-search-panel){height:auto;min-height:100dvh}.browser-frame:has(.all-search-panel){height:auto;min-height:100dvh}.browser-frame:has(.all-search-panel) .hero-content{height:auto;min-height:100dvh}.browser-frame:has(.all-search-panel) #portfolioSearchRoot{height:auto;min-height:100dvh}.browser-frame:has(.all-search-panel){border:0;overflow:visible}.all-search-panel .search-panel__inner{padding-bottom:100px}.all-search-panel .search-results-stack.all-results{margin-top:26px}.all-overview{min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.all-overview__main{grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);align-items:center;gap:clamp(40px,6.2vw,92px);padding:8px 8px 28px;display:grid}.all-overview__introduction{min-width:0}.all-overview__name{color:var(--all-ink);letter-spacing:-.055em;margin:0 0 25px;font-family:Polaris,-apple-system,BlinkMacSystemFont,sans-serif;font-size:clamp(58px,5.6vw,82px);font-weight:600;line-height:1.06}.all-overview__name>span{color:var(--all-accent)}.all-search-panel .all-overview .ai-overview{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;font-family:inherit;overflow:visible}.all-overview .ai-overview__header{height:auto;color:var(--all-accent);gap:8px}.all-overview .ai-overview__header h2{color:inherit;letter-spacing:.015em;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5}.all-overview .ai-overview__copy{max-width:39ch;color:var(--all-muted);letter-spacing:-.027em;text-wrap:pretty;margin-top:14px;font-size:clamp(19px,1.65vw,24px);font-weight:400;line-height:1.65}.all-overview .ai-overview__copy strong{color:var(--all-ink);font-weight:600}.all-overview .ai-overview__skills{flex-wrap:wrap;gap:8px;margin-top:27px}.all-search-panel .all-overview .ai-overview__skill{border:1px solid var(--all-line);height:38px;color:var(--all-ink);background:var(--all-card);box-shadow:none;white-space:nowrap;border-radius:999px;gap:8px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:500}.all-overview .ai-overview__skill-icon{object-fit:contain;width:19px;height:19px;color:var(--all-accent)}.all-project{justify-self:end;width:100%;min-width:0;max-width:440px;padding-top:4px}.all-project__heading{color:var(--all-muted);justify-content:space-between;gap:14px;margin-bottom:13px;font-size:12px;font-weight:500;line-height:1.4;display:flex}.all-project__heading>span:first-child{color:var(--all-ink);font-weight:600}.all-project__preview{aspect-ratio:2;border:1px solid var(--all-line);background:var(--all-soft);border-radius:20px;width:100%;padding:0;display:block;overflow:hidden;box-shadow:0 12px 28px -18px #4837274d}.all-project__preview img{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.22,1,.36,1);display:block}.all-project__preview:hover img,.all-project__preview:focus-visible img{transform:scale(1.035)}.all-project__details{padding:20px 2px 0}.all-project__details h2{color:var(--all-ink);letter-spacing:-.045em;margin:0;font-family:Polaris,-apple-system,BlinkMacSystemFont,sans-serif;font-size:clamp(21px,1.85vw,27px);font-weight:500;line-height:1.25}.all-project__details p{max-width:45ch;color:var(--all-muted);text-wrap:pretty;margin:10px 0 11px;font-size:14px;line-height:1.65}.all-search-panel .all-project__link{min-height:44px;color:var(--all-accent);text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.all-project__link svg{transition:transform .2s}.all-project__link:hover svg{transform:translate(2px,-2px)}.all-project__preview:focus-visible,.all-project__link:focus-visible,.all-overview__education .result-card:focus-visible{outline:2px solid var(--all-accent);outline-offset:5px}.all-overview__education{border-top:1px solid var(--all-line);padding-top:24px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo{border:1px solid var(--all-line);background:var(--all-card);min-height:120px;box-shadow:none;border-radius:16px;align-items:center;gap:20px;padding:22px 26px;transition:transform .2s,border-color .2s;display:flex}.all-search-panel .all-overview .all-overview__education .result-card--waterloo:hover{box-shadow:none;border-color:#c9b08e;transform:translateY(-2px)}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:first-child{width:54px;height:54px;box-shadow:none;align-self:center;margin-top:0}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:nth-child(2){grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}.all-search-panel .all-overview .all-overview__education .result-card-sponsored{color:var(--all-muted);box-shadow:none;letter-spacing:.09em;background:0 0;border:0;border-radius:0;margin:0 0 7px;padding:0;font-family:inherit;font-size:10px;font-weight:500;line-height:1.4}.all-search-panel .all-overview .all-overview__education .result-card .result-title{color:var(--all-ink);letter-spacing:-.03em;overflow-wrap:normal;font-family:inherit;font-size:clamp(16px,1.4vw,21px);font-weight:600;line-height:1.35}.all-search-panel .all-overview .all-overview__education .result-card-url{color:var(--all-muted);margin-top:5px;font-size:12px;font-weight:400}.all-search-panel .all-overview .all-overview__education .result-card-description{color:var(--all-muted);white-space:nowrap;grid-column:auto;margin:0;font-size:13px;line-height:1.5}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:last-child{background:var(--all-soft);width:42px;height:42px;color:var(--all-accent);box-shadow:none;border:0;border-radius:50%;margin:0 0 0 4px;display:grid}.all-overview__education .result-card>span:last-child svg{width:19px;height:19px}html[data-theme=dark] .search-panel.all-search-panel{--all-surface:#0b1220;--all-card:#111c2c;--all-ink:#e8edf5;--all-muted:#a4b1c3;--all-accent:#9fc7ff;--all-line:#2a3748;--all-soft:#1c2b40;background:var(--all-surface);box-shadow:none}@media (prefers-reduced-motion:no-preference){.all-overview__introduction,.all-project,.all-overview__education{animation:.55s cubic-bezier(.22,1,.36,1) both all-content-enter}.all-project{animation-delay:80ms}.all-overview__education{animation-delay:.14s}}@keyframes all-content-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.all-overview__main{grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr);gap:36px}.all-overview__name{font-size:62px}.all-overview .ai-overview__copy{font-size:19px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:nth-child(2){display:block}.all-search-panel .all-overview .all-overview__education .result-card-description{margin-top:7px}}@media (width<=767px){.all-search-panel .search-panel__inner{padding-bottom:108px}.all-search-panel .search-results-stack.all-results{margin-top:30px}.all-overview__main{grid-template-columns:minmax(0,1fr);gap:36px;padding:0 0 28px}.all-overview__name{margin-bottom:20px;font-size:clamp(52px,10vw,68px)}.all-overview .ai-overview__copy{max-width:52ch;font-size:19px;line-height:1.65}.all-overview .ai-overview__skills{gap:7px;margin-top:22px}.all-overview .ai-overview__skill{padding-inline:10px;font-size:11px}.all-project{max-width:none}.all-project__preview{aspect-ratio:1.85;border-radius:16px}.all-project__details{padding-top:17px}.all-project__details h2{font-size:25px}.all-project__details p{max-width:50ch}.all-overview__education{padding-top:24px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo{align-items:flex-start;gap:14px;padding:19px 16px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:first-child{align-self:flex-start;width:40px;height:40px;margin-top:3px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:last-child{display:none}.all-search-panel .all-overview .all-overview__education .result-card .result-title{font-size:16px}}@media (width<=380px){.all-overview .ai-overview__copy{font-size:18px}}@media (prefers-reduced-motion:reduce){.all-overview *,.all-overview :before,.all-overview :after{transition:none!important;animation:none!important}.all-overview .result-card:hover,.all-project__preview:hover img,.all-project__preview:focus-visible img,.all-project__link:hover svg{transform:none}}html[data-theme=dark] .all-search-panel .result-card--waterloo,html[data-theme=dark] .all-search-panel .result-card--waterloo:hover{border-color:var(--all-line)!important;background:var(--all-card)!important;box-shadow:none!important}html[data-theme=dark] .all-search-panel .result-card--waterloo:hover{border-color:var(--all-accent)!important}html[data-theme=dark] .all-search-panel .result-card--waterloo .result-title{color:var(--all-ink)!important}html[data-theme=dark] .all-search-panel .result-card--waterloo .result-card-sponsored{color:var(--all-muted)!important;box-shadow:none!important;background:0 0!important}html[data-theme=dark] .all-search-panel .result-card--waterloo .result-card-url,html[data-theme=dark] .all-search-panel .result-card--waterloo .result-card-description{color:var(--all-muted)!important}html[data-theme=dark] .all-search-panel .result-card--waterloo>span:last-child{color:var(--all-accent)!important;background:var(--all-soft)!important;box-shadow:none!important}@media (width>=768px){.search-panel.all-search-panel,.all-search-panel .search-panel__inner{height:100dvh;min-height:0;overflow:hidden}html:has(.all-search-panel){height:100dvh;min-height:0;overflow:hidden}body:has(.all-search-panel){height:100dvh;min-height:0;overflow:hidden}main:has(.all-search-panel){height:100dvh;min-height:0;overflow:hidden}.browser-frame:has(.all-search-panel){height:100dvh;min-height:0;overflow:hidden}.browser-frame:has(.all-search-panel) .hero-content{height:100dvh;min-height:0;overflow:hidden}.browser-frame:has(.all-search-panel) #portfolioSearchRoot{height:100dvh;min-height:0;overflow:hidden}.browser-frame:has(.all-search-panel){min-height:0}.all-search-panel .search-panel__inner{flex-direction:column;padding-bottom:clamp(84px,11svh,104px);display:flex}.all-search-panel .search-results-stack.all-results{flex:auto;min-height:0;margin-top:clamp(8px,2.3svh,22px);display:flex}.all-overview{flex:auto;grid-template-rows:minmax(0,1fr) auto;width:100%;min-height:0;display:grid}.all-overview__main{gap:clamp(32px,6.2vw,92px);height:100%;min-height:0;padding:0 8px clamp(10px,3.1svh,28px)}.all-overview__name{margin-bottom:clamp(14px,2.8svh,25px);font-size:clamp(48px,min(5.6vw,9svh),82px)}.all-overview .ai-overview__copy{margin-top:clamp(9px,1.7svh,14px);font-size:clamp(15px,min(1.65vw,2.65svh),24px);line-height:1.55}.all-overview .ai-overview__skills{gap:clamp(6px,1svh,8px);margin-top:clamp(14px,3svh,27px)}.all-search-panel .all-overview .ai-overview__skill{height:clamp(30px,4.6svh,38px);padding-inline:clamp(9px,1.4svh,12px);font-size:clamp(11px,1.55svh,12px)}.all-overview .ai-overview__skill-icon{width:clamp(16px,2.4svh,19px);height:clamp(16px,2.4svh,19px)}.all-project{width:min(100%,52svh);max-width:440px;padding-top:0}.all-project__heading{margin-bottom:clamp(8px,1.45svh,13px)}.all-project__details{padding-top:clamp(11px,2.2svh,20px)}.all-project__details h2{font-size:clamp(20px,min(1.85vw,3svh),27px)}.all-project__details p{margin-block:clamp(6px,1.1svh,10px);font-size:clamp(12px,1.75svh,14px);line-height:1.5}.all-search-panel .all-project__link{min-height:clamp(32px,5svh,44px)}.all-overview__education{padding-top:clamp(10px,2.7svh,24px)}.all-search-panel .all-overview .all-overview__education .result-card--waterloo{gap:clamp(14px,2.4svh,20px);min-height:clamp(78px,13svh,120px);padding:clamp(11px,2.25svh,22px) clamp(18px,2vw,26px)}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:first-child{width:clamp(42px,7svh,54px);height:clamp(42px,7svh,54px)}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:nth-child(2){grid-template-columns:minmax(0,1fr) auto;gap:clamp(14px,2.4svh,20px);display:grid}.all-search-panel .all-overview .all-overview__education .result-card-sponsored{margin-bottom:clamp(3px,.8svh,7px)}.all-search-panel .all-overview .all-overview__education .result-card .result-title{font-size:clamp(15px,min(1.4vw,2.4svh),21px)}.all-search-panel .all-overview .all-overview__education .result-card-url{font-size:clamp(11px,1.6svh,12px)}.all-search-panel .all-overview .all-overview__education .result-card-description{margin:0;font-size:clamp(11px,1.7svh,13px)}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:last-child{width:clamp(36px,6svh,42px);height:clamp(36px,6svh,42px)}}@media (width>=768px) and (height<=650px){.all-overview__main{padding-bottom:12px}.all-overview__name{margin-bottom:12px;font-size:50px}.all-overview .ai-overview__copy{margin-top:8px;font-size:14.5px;line-height:1.45}.all-overview .ai-overview__skills{margin-top:10px}.all-search-panel .all-overview .ai-overview__skill{height:28px;font-size:10.5px}.all-project{width:min(100%,42svh)}.all-project__heading{margin-bottom:6px;font-size:11px;line-height:1.25}.all-project__details h2{font-size:19px}.all-project__details p{margin-block:4px;font-size:11.5px;line-height:1.4}.all-search-panel .all-project__link{min-height:28px;font-size:12px}}@media (width>=768px) and (height<=575px){.all-search-panel .search-panel__inner{padding-bottom:80px}.all-search-panel .search-results-stack.all-results{margin-top:6px}.all-overview__main{padding-bottom:8px}.all-overview__name{margin-bottom:8px;font-size:44px}.all-overview .ai-overview__header h2{font-size:12px}.all-overview .ai-overview__copy{margin-top:6px;font-size:13.5px;line-height:1.4}.all-overview .ai-overview__skills{margin-top:7px}.all-search-panel .all-overview .ai-overview__skill{height:26px;font-size:10px}.all-project{width:min(100%,39svh)}.all-project__heading{margin-bottom:4px;font-size:10.5px}.all-project__details{padding-top:5px}.all-project__details h2{font-size:17px}.all-project__details p{margin-block:2px;font-size:10.5px;line-height:1.35}.all-search-panel .all-project__link{min-height:22px;font-size:11px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo{min-height:68px;padding:8px 16px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:first-child{width:36px;height:36px}.all-search-panel .all-overview .all-overview__education .result-card--waterloo>span:last-child{width:32px;height:32px}}:is(.browser-frame:has(.search-header),.search-panel:has(.search-header)){border:0}.search-panel .search-panel__inner{max-width:1500px;padding-top:clamp(24px,2.5vw,36px)}.search-header{display:contents}@media (width<=767px){.search-panel .search-panel__inner{padding-top:20px;padding-inline:24px}}@media (width<=380px){.search-panel .search-panel__inner{padding-inline:18px}}@media (width>=768px){.search-panel .search-panel__inner{padding-top:clamp(8px,2.4svh,24px)}}@media (width>=768px) and (height<=575px){.search-panel .search-panel__inner{padding-top:8px}}@media (width<=767px){.search-header .filters-scroll{scrollbar-width:none;margin:-4px;padding:4px;overflow-x:auto}.search-header [role=tablist]{flex-wrap:nowrap;gap:16px;min-width:max-content}}@media (width>=768px){.search-header .search-bar{flex:none;height:clamp(58px,9svh,86px)}.search-header .search-bar>svg{width:clamp(25px,3.7svh,34px);height:clamp(25px,3.7svh,34px)}.search-header .search-bar input{font-size:clamp(22px,min(2.45vw,4svh),38px)}.search-header .search-bar__submit{width:clamp(44px,7svh,64px);height:clamp(44px,7svh,64px)}.search-header .filter-tabs{flex:none;margin-top:clamp(10px,2svh,20px)}.search-header .filter-tab{padding-bottom:clamp(8px,1.35svh,13px)}.search-header .filter-result-count{margin:0;padding:0;line-height:1;position:absolute;top:0;right:clamp(0px,4vw,62px)}}@media (width>=768px) and (height<=575px){.search-header .search-bar{height:50px}.search-header .search-bar>svg{width:22px;height:22px}.search-header .search-bar__submit{width:40px;height:40px}.search-header .filter-tabs{margin-top:6px}.search-header .filter-tab{padding-bottom:6px;font-size:14px}}
