.ProgressiveImage-module__NQhpkW__wrapper{border-radius:inherit;background:#0c12180f;width:100%;position:relative;overflow:hidden}.ProgressiveImage-module__NQhpkW__preview{object-fit:cover;filter:blur(10px);opacity:1;transition:opacity .22s ease-out;transform:scale(1.03)}.ProgressiveImage-module__NQhpkW__previewHidden{opacity:0}.ProgressiveImage-module__NQhpkW__skeleton{background:linear-gradient(110deg,#141c2414 10%,#141c2424 22%,#141c2414 34%) 0 0/220% 100%;animation:1.1s linear infinite ProgressiveImage-module__NQhpkW__shimmer;position:absolute;top:0;bottom:0;left:0;right:0}.ProgressiveImage-module__NQhpkW__skeletonHidden{opacity:0}.ProgressiveImage-module__NQhpkW__main{object-fit:cover;opacity:0;transition:opacity .24s ease-out;transform:scale(1.01)}.ProgressiveImage-module__NQhpkW__mainVisible{opacity:1;transform:scale(1)}@keyframes ProgressiveImage-module__NQhpkW__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ProgressiveImage-module__NQhpkW__preview,.ProgressiveImage-module__NQhpkW__main,.ProgressiveImage-module__NQhpkW__skeleton{transition:none;animation:none}}
.Projects-module__fb4soG__projectsContainer{gap:var(--space-24);padding:var(--space-12)0;flex-direction:column;display:flex}.Projects-module__fb4soG__caseStudy{box-shadow:none;gap:var(--space-12);background:0 0;border:none;border-radius:0;flex-direction:column;display:flex;position:relative}.Projects-module__fb4soG__caseStudy:after{content:"";bottom:calc(var(--space-12)*-1);background:var(--border-color);width:100%;height:1px;position:absolute;left:0}.Projects-module__fb4soG__caseStudy:last-child:after{display:none}.Projects-module__fb4soG__projectHeader{gap:var(--space-12);background:0 0;grid-template-columns:1fr 1fr;align-items:end;padding:0;display:grid}.Projects-module__fb4soG__projectIntro{text-align:left;gap:var(--space-6);flex-direction:column;max-width:none;margin:0;display:flex}.Projects-module__fb4soG__projectTitle{font-size:max(2.5rem,min(4vw,3.5rem));font-weight:var(--font-weight-heavy);font-family:var(--font-display);letter-spacing:var(--tracking-tighter);color:var(--header_color);text-transform:uppercase;margin:0;line-height:1.1}.Projects-module__fb4soG__projectSubtitle{font-size:var(--font-size-base);color:var(--color-primary);font-weight:var(--font-weight-bold);letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-body)}.Projects-module__fb4soG__introDescription{font-size:var(--font-size-xl);line-height:var(--line-height-snug);color:var(--text-primary);max-width:40ch}.Projects-module__fb4soG__heroImage{aspect-ratio:16/10;border-radius:var(--radius-xs);border:1px solid var(--border-color);width:100%}.Projects-module__fb4soG__section{padding:var(--space-12)0;gap:var(--space-12);grid-template-columns:300px 1fr;align-items:start;display:grid;background:0 0!important;border:none!important}.Projects-module__fb4soG__sectionTitle{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.3em;color:var(--text-secondary);margin:0;position:-webkit-sticky;position:sticky;top:120px}.Projects-module__fb4soG__sectionContent{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--text-primary)}.Projects-module__fb4soG__sectionContent ul,.Projects-module__fb4soG__sectionContent ol{margin:0;padding-left:1.2rem}.Projects-module__fb4soG__sectionContent li{margin-bottom:var(--space-4)}.Projects-module__fb4soG__executionContent{gap:var(--space-16);display:grid}.Projects-module__fb4soG__executionItem{gap:var(--space-6);box-shadow:none;background:0 0;border:none;flex-direction:column;padding:0;display:flex}.Projects-module__fb4soG__executionTitle{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--header_color);letter-spacing:var(--tracking-tight);margin:0}.Projects-module__fb4soG__executionImage{border-radius:var(--radius-xs);border:1px solid var(--border-color);width:100%}.Projects-module__fb4soG__codeImages{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.Projects-module__fb4soG__codeImage{border-radius:var(--radius-xs);width:100%}.Projects-module__fb4soG__finishedProduct{gap:var(--space-8);flex-direction:column;min-width:0;display:flex}.Projects-module__fb4soG__powerbiEmbed{width:100%}@media (max-width:1024px){.Projects-module__fb4soG__projectHeader{gap:var(--space-8);grid-template-columns:1fr}.Projects-module__fb4soG__section{gap:var(--space-4);grid-template-columns:1fr}.Projects-module__fb4soG__sectionTitle{position:static}}@media (max-width:640px){.Projects-module__fb4soG__codeImages{grid-template-columns:1fr}}@media only screen and (max-width:768px){.Projects-module__fb4soG__caseStudy{border-radius:var(--radius-xl);height:auto;min-height:0}.Projects-module__fb4soG__projectHeader{padding:var(--space-10)var(--space-6)var(--space-6)}.Projects-module__fb4soG__section,.Projects-module__fb4soG__executionItem{padding:var(--space-6)}.Projects-module__fb4soG__finishedProduct{padding:var(--space-8)}}@media only screen and (max-width:520px){.Projects-module__fb4soG__projectTitle{font-size:clamp(var(--font-size-3xl),8vw,var(--font-size-4xl))}.Projects-module__fb4soG__projectSubtitle{font-size:var(--font-size-base)}.Projects-module__fb4soG__executionItem{padding:var(--space-5)}}@media (prefers-reduced-motion:reduce){.Projects-module__fb4soG__heroImage,.Projects-module__fb4soG__executionImage,.Projects-module__fb4soG__finishedImage{transition:none}}[data-theme=dark] .Projects-module__fb4soG__caseStudy{background:var(--surface-elevated);border-color:var(--border-color);box-shadow:var(--shadow-deep)}[data-theme=dark] .Projects-module__fb4soG__projectHeader{background:linear-gradient(135deg,#1b7f794d 0%,#f2b44733 100%)}[data-theme=dark] .Projects-module__fb4soG__projectSubtitle{color:var(--text-secondary)}[data-theme=dark] .Projects-module__fb4soG__section{background:var(--surface-secondary);border-color:var(--border-color)}[data-theme=dark] .Projects-module__fb4soG__executionItem{background:var(--surface);border-color:var(--border-color)}[data-theme=dark] .Projects-module__fb4soG__justify{color:var(--text-primary)}
.DeferredEmbed-module__xXIwiq__container{width:100%}.DeferredEmbed-module__xXIwiq__previewCard{aspect-ratio:1024/612;border-radius:var(--radius-xs);border:1px solid var(--border-color);background:var(--surface);width:100%;position:relative;overflow:hidden}.DeferredEmbed-module__xXIwiq__previewImage{object-fit:cover}.DeferredEmbed-module__xXIwiq__previewOverlay{background:linear-gradient(#080b101f,#080b108f);justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.DeferredEmbed-module__xXIwiq__ctaButton{color:#f3f8ff;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;font-size:var(--font-size-xs);border-radius:var(--radius-round);cursor:pointer;background:#0a0f17a6;border:1px solid #ffffff94;padding:.9rem 1.3rem;transition:transform .18s,background .18s}.DeferredEmbed-module__xXIwiq__ctaButton:hover{background:#0a0f17d1;transform:translateY(-1px)}.DeferredEmbed-module__xXIwiq__iframe{aspect-ratio:1024/612;border:1px solid var(--border-color);border-radius:var(--radius-xs);width:100%}@media (prefers-reduced-motion:reduce){.DeferredEmbed-module__xXIwiq__ctaButton{transition:none}}
.page-layout-module__zgN-BW__main{padding:var(--space-8)clamp(var(--space-4),4vw,var(--space-12));color:var(--body_color);background:0 0;flex-direction:column;flex:1;justify-content:flex-start;display:flex;position:relative}.page-layout-module__zgN-BW__centering{padding-top:var(--space-6);padding-left:clamp(var(--space-4),4vw,var(--space-10));padding-right:clamp(var(--space-4),4vw,var(--space-10));width:100%;margin:0 auto}.page-layout-module__zgN-BW__educationSection{gap:var(--space-12);flex-direction:column;display:flex}@media only screen and (min-width:1200px){.page-layout-module__zgN-BW__centering{padding-left:var(--space-16);padding-right:var(--space-16);max-width:1200px;margin:0 auto}}@media only screen and (max-width:600px){.page-layout-module__zgN-BW__main{min-height:100vh;padding:var(--space-4)}.page-layout-module__zgN-BW__centering{padding-left:var(--space-4);padding-right:var(--space-4)}}
