.Tooltip_tooltipContainer__dBTkc{position:relative;display:inline-block}.Tooltip_tooltip__UWQ7A{position:absolute;background-color:#1f2937;color:white;padding:5px 10px;border-radius:6px;font-size:max(12px,.75rem);white-space:nowrap;z-index:1000;pointer-events:none;opacity:0;transition:opacity .3s;animation:Tooltip_fadeIn__B_5sG .3s forwards;border:1px solid #4b5563}.Tooltip_tooltip__UWQ7A:hover{border-color:#caa550;box-shadow:0 0 5px rgba(202,165,80,.5)}@keyframes Tooltip_fadeIn__B_5sG{to{opacity:1}}.Tooltip_tooltip__UWQ7A:after{content:"";position:absolute;border-width:5px;border-style:solid}.Tooltip_top__b6XKG{bottom:125%;left:50%;transform:translateX(calc(-50% + var(--shift, 0px)))}.Tooltip_top__b6XKG:after{top:100%;left:calc(50% - var(--shift, 0px));transform:translateX(-50%);border-color:#1f2937 transparent transparent}.Tooltip_bottom__HqYW6{top:125%;left:50%;transform:translateX(calc(-50% + var(--shift, 0px)))}.Tooltip_bottom__HqYW6:after{bottom:100%;left:calc(50% - var(--shift, 0px));transform:translateX(-50%);border-color:transparent transparent #1f2937}.Tooltip_left__ZOnTR{right:125%;top:50%;transform:translateY(-50%)}.Tooltip_left__ZOnTR:after{left:100%;top:50%;transform:translateY(-50%);border-color:transparent transparent transparent #1f2937}.Tooltip_right__yno2c{left:125%;top:50%;transform:translateY(-50%)}.Tooltip_right__yno2c:after{right:100%;top:50%;transform:translateY(-50%);border-color:transparent #1f2937 transparent transparent}.PdfPreviewModal_backdrop__mhYk5{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}.PdfPreviewModal_modal__PX5_9{width:min(1000px,100%);height:min(90vh,100%);display:flex;flex-direction:column;background:#3c3c3c;border-radius:.75rem;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.5)}.PdfPreviewModal_modal__PX5_9:focus{outline:none}.PdfPreviewModal_modal__PX5_9 ::selection{background:#f5f5f5;color:#3c3c3c}.PdfPreviewModal_modalHeader__D4kPy{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .75rem;color:#f5f5f5}.PdfPreviewModal_modalTitle__esAYd{font-size:.85rem;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.PdfPreviewModal_calendar__XZL9o{display:inline;margin-right:.15rem;vertical-align:-.1em}.PdfPreviewModal_modalActions__n7xUH{display:flex;gap:.5rem;flex-shrink:0}.PdfPreviewModal_modalButton__rLa1_{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;color:#f5f5f5;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:9999px;font-size:max(12px,.8rem);text-decoration:none;cursor:pointer}.PdfPreviewModal_modalButton__rLa1_:hover{background:rgba(255,255,255,.2)}.PdfPreviewModal_pdf__7LZiN{flex:1;width:100%;border:none;background:#fff}.PdfPreviewModal_fallback__3z2Qm{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;height:100%;color:#f5f5f5}.CVDownloadButton_button__4AE5s{position:relative;display:flex;align-items:center;justify-content:center;width:auto;padding:.625rem 1.25rem;border:2px solid var(--foreground);border-radius:9999px;background:rgba(255,255,255,.2);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);color:var(--foreground);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:border-color .2s ease,color .2s ease,background-color .2s ease}.CVDownloadButton_button__4AE5s:hover{color:var(--primary);border-color:var(--primary)}.CVDownloadButton_primary__GtUB8{background:var(--primary);border-color:var(--primary);color:var(--on-primary);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 2px 8px var(--tag-hl-glow)}.CVDownloadButton_primary__GtUB8:hover{background:color-mix(in srgb,var(--primary) 86%,black);border-color:color-mix(in srgb,var(--primary) 86%,black);color:var(--on-primary)}.CVDownloadButton_compact__jG9KC{padding:.3rem .95rem;font-size:.9rem}.CVDownloadButton_menu__Rmn5i{left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 1.5rem);overflow-wrap:normal;word-break:normal;background-color:var(--secondary);border:1px solid var(--secondary-hover);box-shadow:0 10px 25px rgba(0,0,0,.25)}.CVDownloadButton_items__QrRSj{margin:0;padding:.25rem;list-style:none}.CVDownloadButton_item__x6AvC{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.15rem .35rem .15rem .75rem;border-radius:.75rem;transition:background-color .15s ease}.CVDownloadButton_item__x6AvC:hover{background-color:color-mix(in srgb,var(--primary) 12%,transparent)}.CVDownloadButton_itemLink__I9KiL{flex:1;padding:.5rem 0;color:var(--foreground);font-size:.9rem;text-align:left;text-decoration:none}.CVDownloadButton_itemLink__I9KiL:hover{text-decoration:underline;text-underline-offset:3px}.CVDownloadButton_preview__1bR5a{flex-shrink:0;padding:.2rem .7rem;border:1px solid var(--rule,color-mix(in srgb,var(--foreground) 28%,transparent));border-radius:9999px;background:none;color:var(--foreground);font-size:max(12px,.75rem);transition:border-color .2s ease,color .2s ease}.CVDownloadButton_preview__1bR5a:hover{border-color:var(--primary);color:var(--primary)}.CVDownloadButton_updated__Tq9ig{margin:0;padding:.5rem 1rem .65rem;border-top:1px solid var(--rule,color-mix(in srgb,var(--foreground) 28%,transparent));color:var(--foreground-muted);font-size:max(12px,.75rem);text-align:left}.CVDownloadButton_split__y2D9c{display:inline-flex;align-items:stretch}a.CVDownloadButton_button__4AE5s{text-decoration:none}.CVDownloadButton_main__ee7uV{border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}.CVDownloadButton_more__CjQXR{padding-inline:.7rem;min-width:2.75rem;border-top-left-radius:0;border-bottom-left-radius:0;border-left-width:1px}.CVDownloadButton_primary__GtUB8.CVDownloadButton_more__CjQXR{border-left-color:color-mix(in srgb,var(--on-primary) 40%,transparent)}.CVDownloadButton_moreIcon__Lh6Ko{font-size:.75rem;transition:transform .25s cubic-bezier(.16,1,.3,1)}.CVDownloadButton_moreIconOpen__JcqMV{transform:rotate(180deg)}@media (pointer:coarse){.CVDownloadButton_button__4AE5s{min-height:44px}}.TagHint_hint__SqflD{position:relative;display:inline-block;cursor:help;text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px}.TagHint_tip__MvQ1F{position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translateX(calc(-50% + var(--shift, 0px)));width:max-content;max-width:min(20rem,80vw);padding:.6rem .8rem;border-radius:.5rem;background:#1f2937;color:#f5f5f5;border:1px solid #4b5563;font-size:max(12px,.8rem);font-weight:400;line-height:1.4;text-align:left;white-space:pre-line;box-shadow:0 4px 14px rgba(0,0,0,.3);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility 0s linear .3s;z-index:50;cursor:var(--cursor-text,text);user-select:text;text-decoration:none}.TagHint_tip__MvQ1F ::selection,.TagHint_tip__MvQ1F::selection{background:#f5f5f5;color:#1f2937}.TagHint_tipLabel__OeFi3{font-weight:600}.TagHint_plain__TdtpQ{position:relative;display:inline-block;cursor:default}.TagHint_tip__MvQ1F[data-below="1"]{bottom:auto;top:calc(100% + .5rem)}.TagHint_tip__MvQ1F[data-below="1"]:before{top:auto;bottom:100%}.TagHint_tip__MvQ1F[data-side=left]{bottom:auto;left:auto;top:var(--top,0);right:calc(100% + .5rem);transform:none}.TagHint_tip__MvQ1F[data-side=left]:before{top:0;bottom:0;left:100%;right:auto;width:.75rem;height:auto}.TagHint_tip__MvQ1F:before{content:"";position:absolute;left:0;right:0;top:100%;height:.75rem}.TagHint_hint__SqflD.TagHint_dismissed__dMrB3 .TagHint_tip__MvQ1F,.TagHint_hint__SqflD.TagHint_dismissed__dMrB3.TagHint_open__B7key .TagHint_tip__MvQ1F,.TagHint_hint__SqflD.TagHint_dismissed__dMrB3:focus-visible .TagHint_tip__MvQ1F,.TagHint_hint__SqflD.TagHint_dismissed__dMrB3:has(:focus-visible) .TagHint_tip__MvQ1F,.TagHint_hint__SqflD.TagHint_dismissed__dMrB3:hover .TagHint_tip__MvQ1F{opacity:0;visibility:hidden;pointer-events:none}.TagHint_hint__SqflD.TagHint_open__B7key .TagHint_tip__MvQ1F,.TagHint_hint__SqflD:focus-visible .TagHint_tip__MvQ1F,.TagHint_hint__SqflD:has(:focus-visible) .TagHint_tip__MvQ1F,.TagHint_hint__SqflD:hover .TagHint_tip__MvQ1F{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.TagHint_status__Np5If{display:inline-block;margin-left:.3em;font-weight:400;font-style:italic;white-space:nowrap}.TagHint_status__Np5If:before{content:"\00b7";margin-right:.3em;font-style:normal}.ProfileSection_profileSection__oONNC{display:flex;flex-direction:row;align-items:center;gap:3rem;padding:3rem 1rem;justify-content:center;min-height:420px;position:relative;width:100%;max-width:900px;margin:0 auto}.ProfileSection_profileImageContainer__o1zVj{width:200px;height:200px;flex-shrink:0;flex-grow:0;border-radius:50%;overflow:hidden;border:4px solid rgba(0,112,243,.2);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);position:relative;align-self:center;transition:opacity .3s ease-in-out,visibility .3s ease-in-out}.ProfileSection_profileImage__X1yP2{object-fit:cover;width:100%;height:100%}.ProfileSection_contentContainer__5Ohoi{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem 0;flex:1;max-width:400px;min-width:300px;min-height:300px;position:relative;transition:opacity .3s ease-in-out,visibility .3s ease-in-out}.ProfileSection_name__HPp_E{font-family:var(--font-serif),Georgia,serif;font-size:2.25rem;font-weight:700;margin-bottom:1rem;color:var(--name)}.ProfileSection_description__9ABni{font-size:1.125rem;margin-bottom:1.5rem;text-align:center;color:var(--mode-desc,#4b5563);margin-left:auto;margin-right:auto;line-height:1.6;min-height:5.4rem;width:100%;max-width:100%;display:flex;align-items:center;justify-content:center;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto;box-sizing:border-box}.ProfileSection_proof__M1IQf{margin:-.75rem 0 1.5rem;font-size:1rem;text-align:center;color:var(--mode-desc,#4b5563);text-wrap:balance}.ProfileSection_proof__M1IQf a{color:var(--link);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.ProfileSection_proof__M1IQf a:hover{color:var(--link-hover)}.ProfileSection_availability__F3n1_{margin:-.75rem 0 1rem;font-size:.9rem;text-align:center;color:var(--foreground-muted);text-wrap:balance}.ProfileSection_scopes__Xqexp{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin:0 0 1.5rem}.ProfileSection_scope__2YqRN{min-height:44px;padding:.35rem .8rem;border:1px solid color-mix(in srgb,var(--primary) 70%,transparent);border-radius:9999px;background:transparent;color:var(--foreground);font-size:.85rem;font-weight:600;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.ProfileSection_scope__2YqRN:hover{border-color:var(--primary);background:var(--tech-bg);color:var(--primary)}.ProfileSection_scope__2YqRN[data-status]{border-style:dashed}.ProfileSection_scopeStatus__Y_wx_{display:inline-block;margin-left:.35em;font-weight:400;font-style:italic}.ProfileSection_scopeStatus__Y_wx_:before{content:"\00b7";margin-right:.35em;font-style:normal}.ProfileSection_buttonSection__ZBGdW{display:flex;flex-direction:column;gap:1.5rem;align-items:center;width:100%;min-height:120px}.ProfileSection_socialLinks__0nQ1s{display:flex;gap:1rem;justify-content:center}.ProfileSection_socialButton__mDHmO{width:3rem;height:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);transition:none}.ProfileSection_socialButton__mDHmO:hover{transform:scale(1.05)}.ProfileSection_emailButton__Ul73L,.ProfileSection_githubButton__XKMfp,.ProfileSection_linkedinButton__gOr__{background-color:var(--secondary);color:var(--foreground);border:1px solid var(--secondary-hover)}.ProfileSection_emailButton__Ul73L:hover,.ProfileSection_githubButton__XKMfp:hover,.ProfileSection_linkedinButton__gOr__:hover{color:var(--primary);border-color:var(--primary)}.ProfileSection_socialIcon__Bhc9B{color:inherit;font-size:1.375rem}.ProfileSection_cvButtonContainer__8WgDf{display:flex;justify-content:center;width:100%;margin-top:1rem}[data-theme=dark] .ProfileSection_profileImageContainer__o1zVj{border-color:rgba(76,152,175,.2)}@media (max-width:640px){.ProfileSection_profileSection__oONNC{flex-direction:column;padding:2rem 1rem;margin-top:2rem;min-height:500px;gap:1.5rem}.ProfileSection_profileImageContainer__o1zVj{width:160px;height:160px;margin-bottom:1rem;align-self:center}.ProfileSection_name__HPp_E{font-size:1.8rem;margin-bottom:.75rem}.ProfileSection_description__9ABni{font-size:1rem;margin-bottom:1.25rem;min-height:5rem;max-width:min(100%,28ch)}.ProfileSection_contentContainer__5Ohoi{width:100%;max-width:none;min-width:auto;min-height:280px}.ProfileSection_buttonSection__ZBGdW{min-height:100px}}@media (min-width:641px) and (max-width:768px){.ProfileSection_profileSection__oONNC{flex-direction:column;padding:2.5rem 1.5rem;margin-top:1rem;min-height:480px;gap:2rem}.ProfileSection_profileImageContainer__o1zVj{width:225px;height:225px;margin-bottom:1.5rem;align-self:center}.ProfileSection_contentContainer__5Ohoi{width:100%;max-width:none;min-width:auto;min-height:290px}.ProfileSection_description__9ABni{min-height:4.8rem;max-width:min(100%,30ch)}}@media (min-width:769px){.ProfileSection_profileImageContainer__o1zVj{width:275px;height:275px}.ProfileSection_profileSection__oONNC{min-height:450px;max-width:1000px;gap:4rem}.ProfileSection_contentContainer__5Ohoi{max-width:450px;min-height:320px}}@media (prefers-reduced-motion:reduce){.ProfileSection_socialButton__mDHmO:hover{transform:none}}.ImageCarousel_carouselContainer__8oGT8{position:relative;overflow:hidden;border-radius:.5rem;height:350px;user-select:none}.ImageCarousel_singleImageContainer__rLxJy{position:relative;overflow:hidden;border-radius:.5rem;height:auto;max-height:350px}.ImageCarousel_expandControl__tl2UX{position:absolute;top:10px;right:10px;background-color:rgba(0,0,0,.6);color:white;border-radius:50%;padding:5px;cursor:pointer;z-index:10;border:none;transition:transform .2s ease,background-color .2s ease}.ImageCarousel_expandControl__tl2UX:hover{background-color:rgba(0,0,0,.8);transform:scale(1.1)}.ImageCarousel_playControl__GM8g4{position:absolute;top:10px;left:10px;background-color:rgba(0,0,0,.6);color:white;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;border:none;transition:background-color .2s ease}.ImageCarousel_playControl__GM8g4:hover{background-color:rgba(0,0,0,.8)}.ImageCarousel_navButton__VdLNj{position:absolute;top:50%;transform:translateY(-50%);background-color:rgba(0,0,0,.7);color:white;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;transition:all .2s ease;opacity:.8}.ImageCarousel_carouselContainer__8oGT8:hover .ImageCarousel_navButton__VdLNj{opacity:1;background-color:rgba(0,0,0,.8)}.ImageCarousel_navButton__VdLNj:hover{background-color:rgba(0,0,0,.8);transform:translateY(-50%) scale(1.1)}.ImageCarousel_prevButton__x5ga6{left:10px}.ImageCarousel_nextButton___JDQh{right:10px}.ImageCarousel_dotsContainer__sgH5k{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);display:flex;z-index:5}.ImageCarousel_dot__PXaAf{width:24px;height:24px;padding:0;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer}.ImageCarousel_dot__PXaAf:before{content:"";width:8px;height:8px;border-radius:50%;background-color:rgba(255,255,255,.5);transition:background-color .2s ease,transform .2s ease}.ImageCarousel_dot__PXaAf:hover:before{background-color:rgba(255,255,255,.8);transform:scale(1.2)}.ImageCarousel_dot__PXaAf.ImageCarousel_active__ZKY_d:before{background-color:white;transform:scale(1.3)}.ImageCarousel_imagesWrapper__zdK20{width:100%;height:100%;overflow:hidden;position:relative}.ImageCarousel_imagesTrack__x9TWm{display:flex;width:100%;height:100%;will-change:transform}.ImageCarousel_imageSlide__nWn1t{position:relative;flex:0 0 100%;width:100%;height:100%;overflow:hidden}.ImageCarousel_imageSlide__nWn1t img.ImageCarousel_slideBackdrop__vmHTI{position:absolute;top:-24px;left:-24px;width:calc(100% + 48px)!important;height:calc(100% + 48px)!important;max-width:none;object-fit:cover;filter:blur(22px) brightness(.7) saturate(1.2);pointer-events:none;cursor:default}.ImageCarousel_imageSlide__nWn1t>div:not(:first-child){position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ImageCarousel_imageSlide__nWn1t>div img{width:auto!important;height:100%!important;max-width:100%;object-fit:contain;object-position:center;display:block;cursor:pointer}@media (max-width:640px){.ImageCarousel_navButton__VdLNj{width:35px;height:35px}.ImageCarousel_expandControl__tl2UX{padding:4px}.ImageCarousel_prevButton__x5ga6{left:5px}.ImageCarousel_nextButton___JDQh{right:5px}.ImageCarousel_dotsContainer__sgH5k{bottom:0}}@media (prefers-reduced-motion:reduce){.ImageCarousel_expandControl__tl2UX:hover,.ImageCarousel_navButton__VdLNj:hover{transform:translateY(-50%)}}.ImageCarousel_expandControl__tl2UX:after,.ImageCarousel_playControl__GM8g4:after{content:"";position:absolute;inset:-9px}@media (pointer:coarse){.ImageCarousel_expandControl__tl2UX{position:relative}.ImageCarousel_expandControl__tl2UX:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.ImageCarousel_dot__PXaAf{position:relative}.ImageCarousel_dot__PXaAf:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.ImageCarousel_navButton__VdLNj{position:relative}.ImageCarousel_navButton__VdLNj:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}}.DocumentButton_root__9sWG_{position:relative;display:inline-block}.DocumentButton_docButton__U6tgx{width:auto!important;min-width:44px;height:44px!important;padding:0 .7rem!important;gap:.35rem;display:inline-flex!important;align-items:center;justify-content:center;color:#fff}.DocumentButton_pages__SD7TT{font-size:max(12px,.75rem);font-weight:600;letter-spacing:.02em;line-height:1;white-space:nowrap}.DocumentButton_docTooltip__TS8XN{font-size:max(12px,.8rem)!important;font-weight:400!important;white-space:normal!important;width:max-content;max-width:min(22rem,85vw);text-align:center}.DocumentButton_menu__CFrwq{position:absolute;top:calc(100% + .5rem);left:0;min-width:11rem;display:flex;flex-direction:column;background:#1f2937;border:1px solid #4b5563;border-radius:.5rem;box-shadow:0 6px 18px rgba(0,0,0,.35);overflow:hidden;z-index:60}.DocumentButton_menuItem__qv3E_{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;color:#f5f5f5;background:transparent;border:none;font-size:.875rem;text-align:left;text-decoration:none;cursor:pointer}.DocumentButton_menuItem__qv3E_:focus-visible,.DocumentButton_menuItem__qv3E_:hover{background:rgba(255,255,255,.1)}.ProjectCard_projectCard__yrox6{background:color-mix(in srgb,var(--secondary) 92%,transparent);color:var(--foreground);border:1px solid var(--secondary-hover);display:flex;flex-direction:column;width:100%;max-width:100%;min-width:0;position:relative;overflow:visible;border-radius:.5rem;padding:1rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);box-sizing:border-box;transition:background-color .2s ease,box-shadow .2s ease,border-color .2s ease}.ProjectCard_projectCard__yrox6:hover{background:var(--secondary);border-color:var(--primary);box-shadow:0 10px 25px rgba(0,0,0,.25)}.ProjectCard_projectTitle__Y_BLJ{font-family:var(--font-serif),Georgia,serif;font-size:1.3rem;font-weight:700;margin-top:.5rem!important;margin-bottom:.25rem;color:var(--project-title);text-align:left!important;display:flex;align-items:flex-start;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.ProjectCard_projectTitle__Y_BLJ>svg{flex-shrink:0;margin-top:.3em}.ProjectCard_projectDescription__9uCmw{font-size:.9rem;margin-top:.5rem;color:var(--foreground);text-align:left!important;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;white-space:pre-line}.ProjectCard_fileMeta__onHUB{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .6rem;margin:.15rem 0 .75rem;font-size:max(12px,.75rem);letter-spacing:.06em;text-align:left;text-transform:uppercase}.ProjectCard_fileStatus__TNgLc{color:var(--primary);font-weight:600}.ProjectCard_fileDate__Q1f6f{color:var(--foreground-muted)}.ProjectCard_fileStatus__TNgLc:not(:last-child):after{content:"·";margin-left:.6rem;color:var(--foreground-muted);font-weight:400}.ProjectCard_projectImageContainer__iV0uO{position:relative;overflow:visible}.ProjectCard_projectImageWrapper__UoF6H{position:relative;overflow:hidden;border-radius:.5rem;height:auto;max-height:350px;transition:none}.ProjectCard_projectImageWrapper__UoF6H img{width:100%;height:100%;object-fit:cover;object-position:center;transition:none}.ProjectCard_expandControl__md3HW{position:absolute;top:10px;right:10px;background-color:rgba(0,0,0,.6);color:white;border-radius:50%;padding:5px;cursor:pointer;z-index:10;border:none;transition:transform .2s ease,background-color .2s ease}.ProjectCard_expandControl__md3HW:hover{background-color:rgba(0,0,0,.8);transform:scale(1.1)}.ProjectCard_expandedImageOverlay__t_IhC{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;max-width:min(1200px,90vw);height:auto;max-height:85vh;background-color:transparent;border-radius:2.5rem;box-shadow:0 8px 24px rgba(0,0,0,.3);z-index:100;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;transition:opacity .3s ease-in-out,visibility .3s ease-in-out}.ProjectCard_expandedImageOverlay__t_IhC.ProjectCard_active__K9vXP{opacity:1;visibility:visible;pointer-events:auto}.ProjectCard_expandedImageOverlay__t_IhC:focus{outline:none}.ProjectCard_expandedBackdrop__Iz3th{backdrop-filter:blur(5px);position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.8);z-index:99;opacity:0;visibility:hidden;pointer-events:none;cursor:pointer;transition:opacity .3s ease-in-out,visibility .3s ease-in-out}.ProjectCard_expandedBackdrop__Iz3th.ProjectCard_active__K9vXP{opacity:1;visibility:visible;pointer-events:auto}@keyframes ProjectCard_fadeIn__0o4SO{0%{opacity:0}to{opacity:1}}.ProjectCard_socialIcon__IOFvV{width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background-color .2s ease}.ProjectCard_socialIcon__IOFvV.ProjectCard_socialLabeled__ooBBP{width:auto;min-width:44px;height:44px;gap:.4rem;padding-inline:.9rem!important}.ProjectCard_socialLabeled__ooBBP>span{color:#fff;font-size:max(12px,.8rem);font-weight:600;white-space:nowrap}.ProjectCard_socialIcon__IOFvV svg,.ProjectCard_socialIcon__IOFvV>*{transition:color .2s ease,transform .2s ease}.ProjectCard_socialIcon__IOFvV:hover svg,.ProjectCard_socialIcon__IOFvV:hover>*{color:var(--primary);transform:scale(1.1)}.ProjectCard_socialIcon__IOFvV:hover{transform:scale(1.1)}.ProjectCard_pillLight__wqyTs{background-color:#1a5690}.ProjectCard_pillLight__wqyTs:hover{background-color:#154776}.ProjectCard_pillLight__wqyTs.ProjectCard_socialIcon__IOFvV:hover svg,.ProjectCard_pillLight__wqyTs.ProjectCard_socialIcon__IOFvV:hover>*{color:#fff}.ProjectCard_technologies__b2VPf{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.25rem}.ProjectCard_techTag__ukJ3J>span{display:inline-block;margin:-.25rem -.5rem;padding:.25rem .5rem}.ProjectCard_techTag__ukJ3J{transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.ProjectCard_techTag__ukJ3J.ProjectCard_techTagRelated__Ej2Kx{background:var(--tag-hl-bg);border-color:var(--tag-hl-border);color:var(--tag-hl-text);box-shadow:0 0 0 1px var(--tag-hl-border),0 2px 8px var(--tag-hl-glow)}.ProjectCard_techTag__ukJ3J.ProjectCard_techTagActive__WF1RL{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:0 2px 8px var(--tag-hl-glow)}.ProjectCard_techFocus__PJtei .ProjectCard_moreTags__oqNC5:not(.ProjectCard_moreTagsRelated__pUD6T),.ProjectCard_techFocus__PJtei .ProjectCard_techTag__ukJ3J:not(.ProjectCard_techTagRelated__Ej2Kx):not(.ProjectCard_techTagActive__WF1RL){opacity:.42}.ProjectCard_moreTags__oqNC5{position:relative;background:transparent;border:1px dashed var(--tech-border);color:var(--primary);font-size:max(12px,.8rem);font-weight:600;padding:.25rem .6rem;border-radius:9999px;cursor:pointer}.ProjectCard_moreTags__oqNC5.ProjectCard_moreTagsRelated__pUD6T{background:var(--tag-hl-bg);border-style:solid;border-color:var(--tag-hl-border);color:var(--tag-hl-text);box-shadow:0 2px 8px var(--tag-hl-glow)}.ProjectCard_moreTags__oqNC5:hover{background:var(--tech-bg)}.ProjectCard_techTag__ukJ3J{background:var(--tech-bg);border:1px solid var(--tech-border);color:var(--tech-text);font-size:max(12px,.8rem);padding:.25rem .5rem;border-radius:9999px}.ProjectCard_projectLinks__peFug{display:flex;justify-content:flex-start!important;margin-top:1.5rem;margin-bottom:1rem;gap:.5rem;flex-wrap:wrap}.ProjectCard_readMoreLink__3BEwx{display:block;width:fit-content;text-align:left;margin-top:.5rem;padding-block:.4rem;margin-block:0;color:var(--link);font-weight:500;font-size:.9rem;cursor:pointer;text-decoration:none}.ProjectCard_closeButton__qqjct{position:absolute;top:30px;right:30px;z-index:105}.ProjectCard_expandedCarouselContainer__UuyFC{position:relative;user-select:none}.ProjectCard_expandedCarouselContainer__UuyFC,.ProjectCard_expandedImageSlider__BmUSa{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.ProjectCard_expandedImage__PQkBK{max-width:90%;width:auto;max-height:80vh;height:auto;margin:0 auto;display:block;user-select:none;border-radius:.5rem;object-fit:contain}.ProjectCard_expandedImage__PQkBK.ProjectCard_dragging__0EN8p{pointer-events:none}.ProjectCard_expandedNavPrev__B_79I{left:30px}.ProjectCard_expandedNavNext__7Uvr1{right:30px}.ProjectCard_expandedNavButton__dRoch{position:absolute;top:50%;transform:translateY(-50%);background-color:rgba(0,0,0,.7);color:white;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:104;transition:all .2s ease;opacity:.8;backdrop-filter:blur(4px)}.ProjectCard_expandedNavButton__dRoch:hover{background-color:rgba(0,0,0,.9);transform:translateY(-50%) scale(1.1);opacity:1}.ProjectCard_expandedDotsContainer__mzF0o{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:0;z-index:104;background-color:rgba(0,0,0,.3);padding:4px 12px;border-radius:20px;backdrop-filter:blur(8px)}.ProjectCard_expandedDot__jtW1k{width:24px;height:24px;padding:0;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer}.ProjectCard_expandedDot__jtW1k:before{content:"";width:12px;height:12px;box-sizing:border-box;border-radius:50%;border:2px solid rgba(255,255,255,.7);transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.ProjectCard_expandedDot__jtW1k:hover:before{border-color:white;transform:scale(1.2)}.ProjectCard_expandedDot__jtW1k.ProjectCard_expandedDotActive__lld8m:before{background-color:white;border-color:white;transform:scale(1.3)}@media (max-width:640px){.ProjectCard_expandedImageOverlay__t_IhC{top:0;left:0;transform:none;width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0}.ProjectCard_expandedCarouselContainer__UuyFC{width:100vw!important;height:100vh!important}.ProjectCard_expandedImage__PQkBK{max-width:100vw;width:100vw;max-height:100vh;height:100vh;object-fit:contain;border-radius:0}.ProjectCard_expandedNavButton__dRoch{width:45px;height:45px}.ProjectCard_expandedDotsContainer__mzF0o{bottom:20px;gap:0;padding:4px 8px}.ProjectCard_expandedDot__jtW1k:before{width:10px;height:10px}}.ProjectCard_expandControl__md3HW:after{content:"";position:absolute;inset:-9px}[data-theme=dark] .ProjectCard_projectImageWrapper__UoF6H{background-color:var(--secondary-hover-light,#e2e8f0)}.ProjectCard_moreTags__oqNC5:after{content:"";position:absolute;inset:-8px -4px}.ProjectCard_techTag__ukJ3J:not(.ProjectCard_techScope__IDvMD):not(.ProjectCard_techTagRelated__Ej2Kx):not(.ProjectCard_techTagActive__WF1RL){border-color:color-mix(in srgb,var(--tech-border) 55%,transparent)}.ProjectCard_techTag__ukJ3J.ProjectCard_techScope__IDvMD:not(.ProjectCard_techTagRelated__Ej2Kx):not(.ProjectCard_techTagActive__WF1RL){border-color:var(--primary);font-weight:600}.ProjectCard_techTag__ukJ3J.ProjectCard_techScope__IDvMD:has([data-status]){border-style:dashed}@media (pointer:coarse){.ProjectCard_readMoreLink__3BEwx{display:flex;align-items:center;min-height:44px}}.LazyProjectCard_lazyCardContainer__0VgjE{display:flex;flex-direction:column;flex:1;width:100%;transition:opacity .4s ease}.LazyProjectCard_placeholder__B8phO{width:100%;height:100%;padding:1.5rem;border-radius:.5rem;background-color:var(--secondary);box-shadow:0 4px 10px rgba(0,0,0,.15);opacity:.7;animation:LazyProjectCard_pulse__rSBF_ 1.5s infinite;min-height:500px}.LazyProjectCard_placeholderTitle__NL_He{height:1.75rem;width:70%;background-color:var(--placeholder);border-radius:.25rem;margin-bottom:1rem}.LazyProjectCard_placeholderDescription___PbTI{height:4rem;width:100%;background-color:var(--placeholder);border-radius:.25rem;margin-bottom:1rem}.LazyProjectCard_placeholderImage__cBWDi{height:250px;width:100%;background-color:var(--placeholder);border-radius:.5rem;margin-bottom:1rem}.LazyProjectCard_placeholderTags__Izy2Z{display:flex;flex-wrap:wrap;gap:.5rem}.LazyProjectCard_placeholderTag__GgOzo{height:1.5rem;width:5rem;background-color:var(--placeholder);border-radius:1rem}@keyframes LazyProjectCard_pulse__rSBF_{0%{opacity:.6}50%{opacity:.8}to{opacity:.6}}@media (max-width:640px){.LazyProjectCard_placeholder__B8phO{padding:1rem;min-height:450px}.LazyProjectCard_placeholderImage__cBWDi{height:200px}}.ProjectsSection_masonryGrid__WLGvb{display:grid;grid-template-columns:1fr;grid-auto-rows:4px;column-gap:2rem;align-items:start;width:100%;position:relative}@media (min-width:640px){.ProjectsSection_masonryGrid__WLGvb{grid-template-columns:repeat(2,1fr)}}.ProjectsSection_masonryItem__J4X0f{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.ProjectsSection_noResultsMessage__7Hft3{text-align:center;padding:2rem;color:var(--foreground-muted);font-style:italic}.ProjectsSection_noResultsMessage__7Hft3 p{margin:0 0 1rem;font-size:1rem}.ProjectsSection_noResultsMessage__7Hft3 button{font-style:normal}.ProjectsSection_listFooter__It64w{display:flex;justify-content:center;margin-top:2rem}.ProjectsSection_listToggle__A_qVC{padding:.6rem 1.5rem;border:2px solid var(--secondary-hover);border-radius:9999px;background-color:var(--secondary);color:var(--foreground);font-size:.95rem;font-weight:500;transition:border-color .2s ease,color .2s ease}.ProjectsSection_listToggle__A_qVC:hover{border-color:var(--primary);color:var(--primary)}.ProjectSearch_searchContainer__E_ACF{width:100%;margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.ProjectSearch_searchBarWrapper__FNcfS{width:100%;display:flex;justify-content:center}.ProjectSearch_searchBar__fkdkk{--search-pad-left:2.5rem;--search-pad-right:1rem;--search-pad-y:0.75rem;--search-font:1rem;position:relative;width:100%;max-width:600px;display:flex;align-items:center}.ProjectSearch_searchInput__mM4Np{width:100%;padding:var(--search-pad-y) var(--search-pad-right) var(--search-pad-y) var(--search-pad-left);border:2px solid var(--secondary-hover);border-radius:2rem;background-color:var(--secondary);color:var(--foreground);font-size:var(--search-font);transition:border-color .2s ease,box-shadow .2s ease;outline:none}.ProjectSearch_searchInput__mM4Np:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.ProjectSearch_searchInput__mM4Np:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ProjectSearch_searchInput__mM4Np::placeholder{color:var(--foreground-muted);opacity:1}.ProjectSearch_searchIcon___c8En{position:absolute;left:.75rem;color:var(--foreground-muted);z-index:1;pointer-events:none}.ProjectSearch_clearButton__OXSVO{position:absolute;right:.75rem;background:none;border:none;color:var(--foreground-muted);cursor:pointer;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color .2s ease,background-color .2s ease}.ProjectSearch_clearButton__OXSVO:hover{color:var(--primary);background-color:rgba(var(--primary-rgb),.1)}.ProjectSearch_keywordsContainer__1sGsx{width:100%;display:flex;flex-direction:column;align-items:center;gap:.75rem}.ProjectSearch_keywordGroup__xhgLW{display:flex;flex-direction:column;align-items:center;gap:.35rem;width:100%}.ProjectSearch_groupLabel__bPeBB{font-size:max(12px,.75rem);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--foreground-muted)}.ProjectSearch_keywordTags__YItMN[hidden]{display:none}.ProjectSearch_groupToggle__i_ZX_{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border:none;border-radius:9999px;background:none;cursor:pointer;transition:color .2s ease,background-color .2s ease}.ProjectSearch_groupToggle__i_ZX_:hover{color:var(--primary)}.ProjectSearch_groupToggle__i_ZX_:hover .ProjectSearch_groupChevron__NYcA_:not(.ProjectSearch_groupChevronOpen__5SBpI){transform:translateY(2px)}.ProjectSearch_groupToggle__i_ZX_:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ProjectSearch_groupToggle__i_ZX_:before{content:"";width:.7rem}.ProjectSearch_groupChevron__NYcA_{font-size:max(12px,.7rem);transition:transform .25s cubic-bezier(.16,1,.3,1)}.ProjectSearch_groupChevronOpen__5SBpI{transform:rotate(180deg)}.ProjectSearch_keywordTag__RH8aj.ProjectSearch_scopeTag__A7dKQ{border-color:var(--primary);font-weight:600}.ProjectSearch_keywordTags__YItMN{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;max-width:800px}.ProjectSearch_keywordTag__RH8aj{background-color:var(--secondary);border:2px solid var(--secondary-hover);color:var(--foreground);padding:.5rem 1rem;border-radius:1.5rem;font-size:.875rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;user-select:none;white-space:nowrap;min-width:fit-content}.ProjectSearch_keywordTag__RH8aj:hover{border-color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.ProjectSearch_keywordTag__RH8aj.ProjectSearch_selected__Gr2cJ{background-color:var(--primary);border-color:var(--primary);color:white}.ProjectSearch_keywordTag__RH8aj.ProjectSearch_selected__Gr2cJ:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}@media (max-width:640px){.ProjectSearch_searchBar__fkdkk{--search-pad-left:2rem;--search-pad-right:0.75rem;--search-pad-y:0.5rem;--search-font:0.9rem}.ProjectSearch_searchIcon___c8En{left:.5rem;font-size:.875rem}.ProjectSearch_clearButton__OXSVO{right:.5rem}.ProjectSearch_keywordTag__RH8aj{padding:.4rem .8rem;font-size:max(12px,.8rem)}.ProjectSearch_keywordTags__YItMN{gap:.4rem}}[data-theme=dark] .ProjectSearch_keywordTag__RH8aj.ProjectSearch_selected__Gr2cJ{background-color:var(--primary);color:var(--selected-ink)}@keyframes ProjectSearch_tagSelect__cCJFZ{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.ProjectSearch_keywordTag__RH8aj.ProjectSearch_selected__Gr2cJ{animation:ProjectSearch_tagSelect__cCJFZ .2s ease}@media (prefers-reduced-motion:reduce){.ProjectSearch_keywordTag__RH8aj:hover{transform:none}.ProjectSearch_keywordTag__RH8aj.ProjectSearch_selected__Gr2cJ{animation:none}}.ProjectSearch_clearButton__OXSVO:after{content:"";position:absolute;inset:-8px}.ProjectSearch_ghost__Tjytz{position:absolute;inset:0;z-index:1;display:flex;align-items:center;padding-left:calc(var(--search-pad-left) + 2px);padding-right:var(--search-pad-right);overflow:hidden;color:var(--foreground-muted);font-size:var(--search-font);white-space:pre;pointer-events:none}.ProjectSearch_ghostTyped__ZHZyW{visibility:hidden}.ProjectSearch_suggestions__yspGL{position:absolute;top:calc(100% + .4rem);left:0;right:0;z-index:30;max-height:18rem;margin:0;padding:.35rem;overflow-y:auto;list-style:none;text-align:left;background:var(--secondary);border:1px solid var(--secondary-hover);border-radius:1.25rem;box-shadow:0 10px 25px rgba(0,0,0,.25)}.ProjectSearch_suggestion__DrOF9{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .9rem;border-radius:.9rem;color:var(--foreground);font-size:.95rem}.ProjectSearch_suggestionActive__cWaVY{background:color-mix(in srgb,var(--primary) 16%,transparent)}.ProjectSearch_suggestionText__yGD0f{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ProjectSearch_suggestionKey__d6PDA{flex-shrink:0;padding:.05rem .45rem;border:1px solid var(--secondary-hover);border-radius:.4rem;color:var(--foreground-muted);font-family:inherit;font-size:max(12px,.7rem)}.ProjectSearch_explainer__G79Gv{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:60rem;margin:0 auto}.ProjectSearch_explainerItem__FIbdB{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.5rem;padding:.85rem 1.1rem;border:1px solid var(--secondary-hover);border-radius:.75rem;background-color:var(--secondary);color:var(--foreground);font-size:.875rem;line-height:1.5}.ProjectSearch_explainerItem__FIbdB p{margin:0;white-space:pre-line;text-align:left}.ProjectSearch_explainerLabel__T_mSK{font-weight:600}@media (max-width:640px){.ProjectSearch_explainerItem__FIbdB{grid-template-columns:minmax(0,1fr);padding:.75rem .9rem}}@media (pointer:coarse){.ProjectSearch_groupToggle__i_ZX_,.ProjectSearch_keywordTag__RH8aj{min-height:44px}.ProjectSearch_clearButton__OXSVO{position:relative}.ProjectSearch_clearButton__OXSVO:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}}.SearchResults_resultsContainer__4Wrhu{width:100%;display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:.75rem 2rem;margin-bottom:1.5rem}.SearchResults_resultsText__wornw{font-size:.9rem;color:var(--foreground-muted);text-align:center;margin:0}.SearchResults_noResults__BKeZb{color:var(--primary);font-weight:500}.SearchResults_filteredNote__5DXwa{color:var(--primary);font-style:italic}.SearchResults_sortContainer__bnYN8{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.SearchResults_sortLabel__JdfWR{font-size:.85rem;color:var(--foreground-muted);font-weight:500}.SearchResults_sortButton__IQvsJ{background-color:var(--secondary);border:2px solid var(--secondary-hover);color:var(--foreground);padding:.5rem 1rem;border-radius:1.5rem;font-size:.875rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;user-select:none;white-space:nowrap}.SearchResults_sortButton__IQvsJ:hover{border-color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.SearchResults_sortButtonActive__Y6nru{background-color:var(--primary);border-color:var(--primary);color:white}.SearchResults_sortButtonActive__Y6nru:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}[data-theme=dark] .SearchResults_sortButtonActive__Y6nru{color:var(--selected-ink)}@media (max-width:640px){.SearchResults_resultsText__wornw,.SearchResults_sortLabel__JdfWR{font-size:max(12px,.8rem)}.SearchResults_sortButton__IQvsJ{padding:.4rem .8rem;font-size:max(12px,.8rem)}}@media (prefers-reduced-motion:reduce){.SearchResults_sortButton__IQvsJ:hover{transform:none}}@media (pointer:coarse){.SearchResults_sortButton__IQvsJ{min-height:44px}}.Section_section__7S7p0{padding:5rem 0;position:relative;width:100%;margin-inline:auto;color:var(--foreground);transition:none}.Section_container__Mr_zS,.Section_fullWidthContainer__RQJ_i{width:100%;padding:0;box-sizing:border-box}.Section_titleWrapper___3SWd{margin-bottom:3rem}.Section_title__npijq{font-family:var(--font-serif),Georgia,serif;font-size:2.5rem;font-weight:700;margin-bottom:1rem;position:relative}.Section_subtitle__SgVgN{font-size:1.1rem;color:var(--mode-desc);max-width:600px}.Section_content__X6yxw{width:100%}@media (max-width:768px){.Section_section__7S7p0{padding:2.5rem 0;width:100%}.Section_container__Mr_zS,.Section_fullWidthContainer__RQJ_i{padding:0;width:100%}.Section_title__npijq{font-size:2rem}.Section_subtitle__SgVgN{font-size:1rem}}@media (max-width:480px){.Section_section__7S7p0{padding-left:var(--section-padding-horizontal-mobile);padding-right:var(--section-padding-horizontal-mobile);width:100%}.Section_container__Mr_zS,.Section_fullWidthContainer__RQJ_i{padding:0}}.CardItem_cardItem__Lvc4B{padding:2rem;border-radius:12px;background-color:color-mix(in srgb,var(--secondary) 92%,transparent);box-shadow:0 4px 10px rgba(0,0,0,.15);transition:none}.CardItem_cardItem__Lvc4B:hover{transform:translateY(-5px);box-shadow:0 6px 15px rgba(0,0,0,.2);background-color:var(--secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.CardItem_cardHeader__p1_9O{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.CardItem_logo__vOBBY{flex-shrink:0;width:6.25rem;height:6.25rem;border-radius:8px;object-fit:contain;padding:2px}@media (max-width:600px){.CardItem_logo__vOBBY{width:4rem;height:4rem}}.CardItem_title__NuKnF{font-family:var(--font-serif),Georgia,serif;font-size:1.5rem;font-weight:600;margin:0 0 .25rem;text-align:left}.CardItem_title__NuKnF a{color:var(--link);text-decoration:none;transition:none}.CardItem_title__NuKnF a:hover{color:var(--link-hover);text-decoration:underline}.CardItem_subtitle__AD4cM{font-size:1.2rem;font-weight:500;margin:0;color:var(--color-text-secondary);text-align:left}.CardItem_technologies__5f_4n{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.CardItem_split__bD4p6{display:grid;grid-template-columns:calc(70% - 1.25rem) minmax(0,1fr);column-gap:2.5rem;row-gap:1rem;align-items:start}.CardItem_split__bD4p6 .CardItem_cardHeader__p1_9O{grid-column:1/-1;margin:0}.CardItem_split__bD4p6 .CardItem_description__VsUEy{grid-column:1;grid-row:2}.CardItem_split__bD4p6 .CardItem_technologies__5f_4n{grid-column:2;grid-row:2;margin:0;align-content:start;position:sticky;top:7rem;padding-left:1.5rem;border-left:1px solid var(--secondary-hover)}@media (max-width:900px){.CardItem_split__bD4p6{grid-template-columns:minmax(0,1fr)}.CardItem_split__bD4p6 .CardItem_description__VsUEy,.CardItem_split__bD4p6 .CardItem_technologies__5f_4n{grid-column:1}.CardItem_split__bD4p6 .CardItem_technologies__5f_4n{grid-row:3;position:static;padding-left:0;border-left:none;margin-top:.5rem}}.CardItem_tech___7aTD>span{display:inline-block;margin:-.25rem -.75rem;padding:.25rem .75rem}.CardItem_techRelated__44VG8{background-color:var(--tag-hl-bg)!important;border-color:var(--tag-hl-border)!important;color:var(--tag-hl-text)!important;box-shadow:0 0 0 1px var(--tag-hl-border),0 2px 8px var(--tag-hl-glow)}.CardItem_techActive__lzCBr{background-color:var(--primary)!important;border-color:var(--primary)!important;color:var(--on-primary)!important;box-shadow:0 2px 8px var(--tag-hl-glow)}.CardItem_techFocus__JmFCj .CardItem_moreTags__ueV70:not(.CardItem_moreTagsRelated__yhz8T),.CardItem_techFocus__JmFCj .CardItem_tech___7aTD:not(.CardItem_techRelated__44VG8):not(.CardItem_techActive__lzCBr){opacity:.42}.CardItem_moreTags__ueV70{position:relative;background:transparent;border:1px dashed var(--tech-border);color:var(--primary);font-size:.85rem;font-weight:600;padding:.25rem .75rem;border-radius:20px;cursor:pointer}.CardItem_moreTagsRelated__yhz8T{background-color:var(--tag-hl-bg);border-style:solid;border-color:var(--tag-hl-border);color:var(--tag-hl-text)}.CardItem_moreTags__ueV70:hover,.CardItem_tech___7aTD{background-color:var(--tech-bg)}.CardItem_tech___7aTD{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;transition:opacity .15s ease;display:inline-block;border:1px solid var(--tech-border);color:var(--tech-text)}.CardItem_tech___7aTD:hover{background-color:var(--tech-hover-bg);border-color:var(--tech-hover-border)}@media (max-width:768px){.CardItem_cardItem__Lvc4B{padding:1rem;width:100%;margin:0 auto}.CardItem_cardHeader__p1_9O{align-items:flex-start;gap:.85rem}}@media (max-width:480px){.CardItem_cardItem__Lvc4B{padding:.75rem;border-radius:8px}.CardItem_technologies__5f_4n{margin-top:.75rem}.CardItem_tech___7aTD{padding:.2rem .5rem;font-size:max(12px,.75rem)}}@media (prefers-reduced-motion:reduce){.CardItem_cardItem__Lvc4B:hover{transform:none}}.CardItem_moreTags__ueV70:after{content:"";position:absolute;inset:-8px -4px}.CardItem_tech___7aTD:not(.CardItem_techScope__yXRwX):not(.CardItem_techRelated__44VG8):not(.CardItem_techActive__lzCBr){border-color:color-mix(in srgb,var(--tech-border) 55%,transparent)}.CardItem_tech___7aTD.CardItem_techScope__yXRwX:not(.CardItem_techRelated__44VG8):not(.CardItem_techActive__lzCBr){border-color:var(--primary);font-weight:600}.CardItem_tech___7aTD.CardItem_techScope__yXRwX:has([data-status]){border-style:dashed}.MetaInfoDisplay_metaInfoInline__b5OvJ{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.MetaInfoDisplay_separator__TEoHH{font-size:max(12px,.8rem);opacity:.6;color:var(--primary)}.MetaInfoDisplay_location__L08pQ,.MetaInfoDisplay_period__ofI7g{font-size:.9rem;margin:0;color:var(--primary)}@media (max-width:768px){.MetaInfoDisplay_metaInfoInline__b5OvJ{flex-direction:column;align-items:flex-start;gap:.1rem}.MetaInfoDisplay_separator__TEoHH{display:none}}.CardList_cardList__wb4UV{display:flex;flex-direction:column;gap:2.5rem}.ExperienceSection_experienceItem__O5slk{padding:2rem;border-radius:12px;background-color:color-mix(in srgb,var(--secondary) 92%,transparent);box-shadow:0 4px 10px rgba(0,0,0,.15);transition:none}.ExperienceSection_experienceItem__O5slk:hover{transform:translateY(-5px);box-shadow:0 6px 15px rgba(0,0,0,.2);background-color:var(--secondary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}@media (max-width:768px){.ExperienceSection_experienceItem__O5slk{padding:1rem;width:100%;margin:0 auto}}@media (max-width:480px){.ExperienceSection_experienceItem__O5slk{padding:.75rem;border-radius:8px}}@media (prefers-reduced-motion:reduce){.ExperienceSection_experienceItem__O5slk:hover{transform:none}}.TrainingSection_location__SqGGy,.TrainingSection_period__0hoj4{font-size:.9rem;opacity:.8;margin:0;color:var(--primary)}.TrainingSection_description__jibko{margin-bottom:1.5rem;line-height:1.6;white-space:pre-line;text-align:left}.TrainingSection_technologies__uOafL{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}@media (max-width:768px){.TrainingSection_trainingItem__xIe7h{padding:1rem;width:100%;margin:0 auto}}@media (max-width:480px){.TrainingSection_trainingItem__xIe7h{padding:.75rem;border-radius:8px}.TrainingSection_technologies__uOafL{margin-top:.75rem}}.ContactSection_ledger__JjcuX{--rule:color-mix(in srgb,var(--foreground) 28%,transparent);max-width:40rem;margin:0 auto;text-align:left}.ContactSection_row__LfAc9{display:grid;grid-template-columns:9.5rem minmax(0,1fr);align-items:center;column-gap:1.5rem;padding:1rem 0;border-top:1px solid var(--rule)}.ContactSection_row__LfAc9:last-child{border-bottom:1px solid var(--rule)}.ContactSection_label__M75Zn{display:flex;align-items:center;gap:.65rem;transition:color .2s ease;font-size:max(12px,.75rem);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--foreground-muted)}.ContactSection_icon__KvK55{flex-shrink:0;width:1.1rem;height:1.1rem}.ContactSection_row__LfAc9:hover .ContactSection_label__M75Zn{color:var(--primary)}.ContactSection_value__RLZU7{margin:0;font-size:1.05rem;overflow-wrap:anywhere}.ContactSection_value__RLZU7>a{color:var(--link);text-decoration:none}.ContactSection_value__RLZU7>a:hover{text-decoration:underline;text-underline-offset:4px}.ContactSection_actions___UHFD{display:inline-flex;align-items:center;gap:.5rem;margin-left:1rem;vertical-align:middle;white-space:nowrap}.ContactSection_action__A69XP{display:inline-flex;align-items:center;gap:.4rem;min-height:1.75rem;padding:.15rem .7rem;border:1px solid var(--rule);border-radius:9999px;background:none;font-size:max(12px,.8rem);text-decoration:none;transition:border-color .2s ease,color .2s ease}.ContactSection_action__A69XP,.ContactSection_value__RLZU7 .ContactSection_action__A69XP{position:relative;color:var(--foreground)}.ContactSection_copiedTip__AD17c{position:absolute;bottom:calc(100% + .45rem);right:0;padding:.25rem .6rem;border-radius:.5rem;background:#1f2937;color:#f5f5f5;font-size:max(12px,.8rem);white-space:nowrap;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.3)}.ContactSection_value__RLZU7 .ContactSection_action__A69XP:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}@media (max-width:560px){.ContactSection_row__LfAc9{grid-template-columns:minmax(0,1fr);row-gap:.4rem;padding:1.1rem .75rem}.ContactSection_value__RLZU7{font-size:1rem}.ContactSection_actions___UHFD{display:flex;margin:.7rem 0 0;gap:.6rem}.ContactSection_action__A69XP{min-height:2.5rem;padding:.3rem 1.1rem;font-size:.85rem}}.ContactSection_action__A69XP:after{content:"";position:absolute;inset:-.5rem -.2rem}