.FilterGroups-module__exx47W__root{width:100%}.FilterGroups-module__exx47W__row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.FilterGroups-module__exx47W__allBtn,.FilterGroups-module__exx47W__trigger,.FilterGroups-module__exx47W__clearBtn,.FilterGroups-module__exx47W__menuItem{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);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,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}.FilterGroups-module__exx47W__allBtn{color:var(--text-muted);border:1px solid var(--border-subtle);background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__allBtn{background-color:color-mix(in srgb, var(--surface), transparent 35%)}}.FilterGroups-module__exx47W__allBtn{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 3.5);padding-block:calc(var(--spacing,.25rem) * 2.5)}.FilterGroups-module__exx47W__allBtn:hover{color:var(--foreground);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__allBtn:hover{border-color:color-mix(in srgb, var(--accent), transparent 55%)}}.FilterGroups-module__exx47W__allBtnActive{color:var(--foreground);background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__allBtnActive{background-color:color-mix(in srgb, var(--accent), transparent 82%)}}.FilterGroups-module__exx47W__allBtnActive{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__allBtnActive{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.FilterGroups-module__exx47W__dropdown{min-width:min(100%,11.5rem);position:relative}.FilterGroups-module__exx47W__trigger{width:100%;min-width:11.5rem;color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--surface);justify-content:space-between;align-items:center;gap:.75rem;display:flex}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__trigger{background-color:color-mix(in srgb, var(--surface), transparent 20%)}}.FilterGroups-module__exx47W__trigger{text-align:left;border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 3.5);padding-block:calc(var(--spacing,.25rem) * 2)}.FilterGroups-module__exx47W__trigger:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__trigger:hover{border-color:color-mix(in srgb, var(--accent), transparent 50%)}}.FilterGroups-module__exx47W__triggerActive{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__triggerActive{border-color:color-mix(in srgb, var(--accent), transparent 40%)}}.FilterGroups-module__exx47W__triggerActive{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__triggerActive{background-color:color-mix(in srgb, var(--accent), transparent 88%)}}.FilterGroups-module__exx47W__triggerOpen{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__triggerOpen{border-color:color-mix(in srgb, var(--accent), transparent 35%)}}.FilterGroups-module__exx47W__triggerOpen{box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__triggerOpen{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent), transparent 88%)}}.FilterGroups-module__exx47W__triggerMeta{flex-direction:column;gap:.1rem;min-width:0;display:flex}.FilterGroups-module__exx47W__triggerLabel{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;--tw-font-weight:var(--font-weight-semibold,600);font-size:.65rem;font-weight:var(--font-weight-semibold,600)}.FilterGroups-module__exx47W__triggerValue{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);overflow:hidden}.FilterGroups-module__exx47W__chevron{opacity:.55;border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:.45rem;height:.45rem;margin-top:.15rem;transition:transform .18s;transform:rotate(45deg)}.FilterGroups-module__exx47W__triggerOpen .FilterGroups-module__exx47W__chevron{margin-top:.35rem;transform:rotate(225deg)}.FilterGroups-module__exx47W__menu{z-index:30;border:1px solid var(--border-subtle);background-color:var(--surface);min-width:100%;max-height:16rem;box-shadow:0 12px 28px var(--foreground);border-radius:.9rem;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .4rem);left:0;overflow:auto}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__menu{box-shadow:0 12px 28px color-mix(in srgb, var(--foreground), transparent 90%)}}.FilterGroups-module__exx47W__menuItem{width:100%;color:var(--text-muted);text-align:left;padding-inline:calc(var(--spacing,.25rem) * 3);padding-block:calc(var(--spacing,.25rem) * 2);background:0 0;border:0;border-radius:.65rem;display:block}.FilterGroups-module__exx47W__menuItem:hover{color:var(--foreground);background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__menuItem:hover{background-color:color-mix(in srgb, var(--accent), transparent 90%)}}.FilterGroups-module__exx47W__menuItemActive{color:var(--foreground);background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.FilterGroups-module__exx47W__menuItemActive{background-color:color-mix(in srgb, var(--accent), transparent 84%)}}.FilterGroups-module__exx47W__clearBtn{color:var(--accent);text-underline-offset:.2em;background:0 0;border:1px solid #0000;padding-inline:.5rem;text-decoration:underline}.FilterGroups-module__exx47W__clearBtn:hover{color:var(--foreground)}@media (max-width:640px){.FilterGroups-module__exx47W__dropdown{flex:calc(50% - .35rem);min-width:0}.FilterGroups-module__exx47W__trigger{width:100%;min-width:0}.FilterGroups-module__exx47W__allBtn{flex:100%}}@property --tw-font-weight{syntax:"*";inherits:false}
.ProjectsView-module__sEi6UG__page{isolation:isolate;position:relative}.ProjectsView-module__sEi6UG__page:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg, var(--surface) 0%, transparent 55%);height:36rem;position:absolute;inset:0 0 auto}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__page:before{background:linear-gradient(180deg, color-mix(in srgb, var(--surface), transparent 55%) 0%, transparent 55%)}}.ProjectsView-module__sEi6UG__inner,.ProjectsView-module__sEi6UG__innerNarrow{width:100%;padding-inline:calc(var(--spacing,.25rem) * 6);margin-inline:auto}.ProjectsView-module__sEi6UG__inner{max-width:var(--container-7xl,80rem)}.ProjectsView-module__sEi6UG__innerNarrow{max-width:var(--container-3xl,48rem)}.ProjectsView-module__sEi6UG__intro{padding-top:calc(var(--spacing,.25rem) * 16);padding-bottom:calc(var(--spacing,.25rem) * 8)}@media (min-width:64rem){.ProjectsView-module__sEi6UG__intro{padding-top:calc(var(--spacing,.25rem) * 24);padding-bottom:calc(var(--spacing,.25rem) * 10)}}.ProjectsView-module__sEi6UG__eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:calc(var(--spacing,.25rem) * 3);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.ProjectsView-module__sEi6UG__title{color:var(--foreground);letter-spacing:-.03em;margin-bottom:calc(var(--spacing,.25rem) * 8);font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)));--tw-leading:1.08;--tw-font-weight:var(--font-weight-semibold,600);line-height:1.08;font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.ProjectsView-module__sEi6UG__title{font-size:var(--text-5xl,3rem);line-height:var(--tw-leading,var(--text-5xl--line-height,1))}}@media (min-width:64rem){.ProjectsView-module__sEi6UG__title{font-size:var(--text-6xl,3.75rem);line-height:var(--tw-leading,var(--text-6xl--line-height,1))}}.ProjectsView-module__sEi6UG__filters{max-width:64rem}.ProjectsView-module__sEi6UG__listSection{padding-bottom:calc(var(--spacing,.25rem) * 12)}@media (min-width:64rem){.ProjectsView-module__sEi6UG__listSection{padding-bottom:calc(var(--spacing,.25rem) * 20)}}.ProjectsView-module__sEi6UG__list{flex-direction:column;gap:1.5rem;display:flex}.ProjectsView-module__sEi6UG__empty{color:var(--text-muted);padding-block:calc(var(--spacing,.25rem) * 10);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)))}.ProjectsView-module__sEi6UG__card{--card-bg:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__card{--card-bg:color-mix(in srgb, var(--surface), var(--background) 28%)}}.ProjectsView-module__sEi6UG__card{border:1px solid var(--border-subtle);background-color:var(--card-bg);border-radius:1.35rem;grid-template-columns:1fr;gap:0;transition:border-color .2s;display:grid;overflow:hidden}.ProjectsView-module__sEi6UG__card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__card:hover{border-color:color-mix(in srgb, var(--accent), transparent 50%)}}.ProjectsView-module__sEi6UG__cardLink{color:inherit;text-decoration:none;display:contents}.ProjectsView-module__sEi6UG__detailsCta{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__detailsCta{color:color-mix(in srgb, var(--accent), white 12%)}}.ProjectsView-module__sEi6UG__detailsCta{width:fit-content;margin-top:calc(var(--spacing,.25rem) * 2);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}@media (min-width:900px){.ProjectsView-module__sEi6UG__card{grid-template-columns:minmax(280px,.95fr) 1.35fr;min-height:320px}}.ProjectsView-module__sEi6UG__media{background-color:var(--background);min-height:220px;position:relative}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__media{background-color:color-mix(in srgb, var(--background), transparent 20%)}}@media (min-width:900px){.ProjectsView-module__sEi6UG__media{min-height:100%}}.ProjectsView-module__sEi6UG__mediaImage{object-fit:cover;object-position:center}.ProjectsView-module__sEi6UG__mediaFade{pointer-events:none;background:linear-gradient(to bottom, transparent 0%, var(--card-bg) 50%, var(--card-bg) 100%);height:45%;position:absolute;inset:auto 0 0}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__mediaFade{background:linear-gradient(to bottom, transparent 0%, color-mix(in srgb, var(--card-bg), transparent 40%) 50%, var(--card-bg) 100%)}}@media (min-width:900px){.ProjectsView-module__sEi6UG__mediaFade{background:linear-gradient(to right, transparent 0%, var(--card-bg) 50%, var(--card-bg) 100%);width:45%;height:auto;inset:0 0 0 auto}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__mediaFade{background:linear-gradient(to right, transparent 0%, color-mix(in srgb, var(--card-bg), transparent 40%) 50%, var(--card-bg) 100%)}}}.ProjectsView-module__sEi6UG__mediaBadge{z-index:1;color:var(--foreground);background-color:var(--background);position:absolute;top:.9rem;left:.9rem}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__mediaBadge{background-color:color-mix(in srgb, var(--background), transparent 25%)}}.ProjectsView-module__sEi6UG__mediaBadge{border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-md,.375rem);padding-inline:calc(var(--spacing,.25rem) * 2.5);padding-block:calc(var(--spacing,.25rem) * 1);--tw-font-weight:var(--font-weight-semibold,600);font-size:.68rem;font-weight:var(--font-weight-semibold,600)}.ProjectsView-module__sEi6UG__body{z-index:1;flex-direction:column;gap:.85rem;padding:1.35rem 1.45rem 1.55rem;display:flex;position:relative}@media (min-width:900px){.ProjectsView-module__sEi6UG__body{justify-content:center;padding:1.75rem 1.85rem 1.85rem .5rem}}.ProjectsView-module__sEi6UG__tags{flex-wrap:wrap;gap:.4rem;display:flex}.ProjectsView-module__sEi6UG__tag{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__tag{color:color-mix(in srgb, var(--accent), white 8%)}}.ProjectsView-module__sEi6UG__tag{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__tag{background-color:color-mix(in srgb, var(--accent), transparent 88%)}}.ProjectsView-module__sEi6UG__tag{border-radius:var(--radius-md,.375rem);padding-inline:calc(var(--spacing,.25rem) * 2.5);padding-block:calc(var(--spacing,.25rem) * 1);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.ProjectsView-module__sEi6UG__cardTitle{color:var(--foreground);letter-spacing:-.02em;font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)));--tw-leading:var(--leading-snug,1.375);line-height:var(--leading-snug,1.375);--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.ProjectsView-module__sEi6UG__cardTitle{font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height,calc(2.25 / 1.875)))}}.ProjectsView-module__sEi6UG__summary{color:var(--text-muted);max-width:var(--container-2xl,42rem);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}.ProjectsView-module__sEi6UG__highlights{margin-top:.35rem}.ProjectsView-module__sEi6UG__highlightsLabel{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__highlightsLabel{color:color-mix(in srgb, var(--accent), white 10%)}}.ProjectsView-module__sEi6UG__highlightsLabel{letter-spacing:.08em;text-transform:uppercase;margin-bottom:calc(var(--spacing,.25rem) * 2.5);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.ProjectsView-module__sEi6UG__bullets{margin:calc(var(--spacing,.25rem) * 0);gap:calc(var(--spacing,.25rem) * 2);padding-left:calc(var(--spacing,.25rem) * 5);color:var(--text-muted);flex-direction:column;display:flex}.ProjectsView-module__sEi6UG__bullets li{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}@media (min-width:40rem){.ProjectsView-module__sEi6UG__bullets li{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)))}}.ProjectsView-module__sEi6UG__ctaSection{padding-block:calc(var(--spacing,.25rem) * 16)}@media (min-width:64rem){.ProjectsView-module__sEi6UG__ctaSection{padding-block:calc(var(--spacing,.25rem) * 24)}}.ProjectsView-module__sEi6UG__ctaSection{border-top:1px solid var(--border-subtle)}.ProjectsView-module__sEi6UG__ctaBox{text-align:center}.ProjectsView-module__sEi6UG__ctaTitle{color:var(--foreground);letter-spacing:-.02em;margin-bottom:calc(var(--spacing,.25rem) * 4);font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height,calc(2.25 / 1.875)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.ProjectsView-module__sEi6UG__ctaTitle{font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)))}}.ProjectsView-module__sEi6UG__ctaSupport{color:var(--text-muted);margin-bottom:calc(var(--spacing,.25rem) * 8);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:calc(var(--spacing,.25rem) * 8);line-height:calc(var(--spacing,.25rem) * 8)}.ProjectsView-module__sEi6UG__ctaActions{justify-content:center;gap:calc(var(--spacing,.25rem) * 3);flex-direction:column;display:flex}@media (min-width:40rem){.ProjectsView-module__sEi6UG__ctaActions{flex-direction:row}}.ProjectsView-module__sEi6UG__primaryCta{background-color:var(--accent);color:var(--cta-on-accent);border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;transition-duration:.2s;display:inline-flex}.ProjectsView-module__sEi6UG__primaryCta:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__primaryCta:hover{background-color:color-mix(in srgb, var(--accent), white 12%)}}.ProjectsView-module__sEi6UG__secondaryCta{color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__secondaryCta{background-color:color-mix(in srgb, var(--surface), transparent 40%)}}.ProjectsView-module__sEi6UG__secondaryCta{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;transition-duration:.2s;display:inline-flex}.ProjectsView-module__sEi6UG__secondaryCta:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__secondaryCta:hover{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.ProjectsView-module__sEi6UG__secondaryCta:hover{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectsView-module__sEi6UG__secondaryCta:hover{color:color-mix(in srgb, var(--accent), white 18%)}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
.ProjectGallery-module__3VYB5q__section{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:1.1rem;padding:1.35rem 1.4rem}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__section{background-color:color-mix(in srgb, var(--surface), transparent 25%)}}.ProjectGallery-module__3VYB5q__section h2{color:var(--foreground);margin-bottom:calc(var(--spacing,.25rem) * 4);font-size:var(--text-xl,1.25rem);line-height:var(--tw-leading,var(--text-xl--line-height,calc(1.75 / 1.25)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.ProjectGallery-module__3VYB5q__gallery{gap:calc(var(--spacing,.25rem) * 3.5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:40rem){.ProjectGallery-module__3VYB5q__gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.ProjectGallery-module__3VYB5q__gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}.ProjectGallery-module__3VYB5q__galleryItem{aspect-ratio:1;border:1px solid var(--border-subtle);cursor:zoom-in;background-color:var(--background);border-radius:.85rem;padding:0;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__galleryItem{background-color:color-mix(in srgb, var(--background), transparent 20%)}}.ProjectGallery-module__3VYB5q__galleryItem{transition:border-color .2s,transform .2s}.ProjectGallery-module__3VYB5q__galleryItem:hover,.ProjectGallery-module__3VYB5q__galleryItem:focus-visible{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__galleryItem:hover,.ProjectGallery-module__3VYB5q__galleryItem:focus-visible{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.ProjectGallery-module__3VYB5q__galleryItem:hover,.ProjectGallery-module__3VYB5q__galleryItem:focus-visible{outline:none;transform:translateY(-2px)}.ProjectGallery-module__3VYB5q__galleryImage{object-fit:cover;object-position:top center;transition:transform .35s}.ProjectGallery-module__3VYB5q__galleryItem:hover .ProjectGallery-module__3VYB5q__galleryImage,.ProjectGallery-module__3VYB5q__galleryItem:focus-visible .ProjectGallery-module__3VYB5q__galleryImage{transform:scale(1.05)}.ProjectGallery-module__3VYB5q__overlay{background:linear-gradient(to top, var(--foreground) 0%, var(--foreground) 38%, var(--foreground) 100%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__overlay{background:linear-gradient(to top, color-mix(in srgb, var(--foreground), transparent 12%) 0%, color-mix(in srgb, var(--foreground), transparent 55%) 38%, color-mix(in srgb, var(--foreground), transparent 78%) 100%)}}.ProjectGallery-module__3VYB5q__overlay{opacity:0;transition:opacity .25s}.ProjectGallery-module__3VYB5q__galleryItem:hover .ProjectGallery-module__3VYB5q__overlay,.ProjectGallery-module__3VYB5q__galleryItem:focus-visible .ProjectGallery-module__3VYB5q__overlay{opacity:1}.ProjectGallery-module__3VYB5q__magnifier{width:2.5rem;height:2.5rem;color:var(--foreground);background-color:var(--surface);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__magnifier{background-color:color-mix(in srgb, var(--surface), transparent 8%)}}.ProjectGallery-module__3VYB5q__magnifier{border:1px solid var(--surface)}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__magnifier{border:1px solid color-mix(in srgb, var(--surface), transparent 30%)}}.ProjectGallery-module__3VYB5q__magnifier svg{width:1.2rem;height:1.2rem}.ProjectGallery-module__3VYB5q__caption{text-align:center;color:#111;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:var(--leading-snug,1.375);line-height:var(--leading-snug,1.375);--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);background-color:#fff;border:1px solid #1111111f;border-radius:.45rem;padding:.45rem .55rem;position:absolute;bottom:.55rem;left:.55rem;right:.55rem;box-shadow:0 6px 16px #00000038}.ProjectGallery-module__3VYB5q__lightbox{z-index:120;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.ProjectGallery-module__3VYB5q__backdrop{cursor:pointer;background-color:#0b0d10d1;border:none;padding:0;position:absolute;inset:0}.ProjectGallery-module__3VYB5q__lightboxInner{z-index:1;flex-direction:column;gap:.75rem;width:min(100%,52rem);max-height:calc(100dvh - 2rem);margin:auto;display:flex;position:relative}.ProjectGallery-module__3VYB5q__closeBtn{z-index:2;border:1px solid var(--border-subtle);background-color:var(--surface);width:2.75rem;height:2.75rem;color:var(--foreground);cursor:pointer;border-radius:.7rem;justify-content:center;align-items:center;transition:background-color .2s,border-color .2s;display:inline-flex;position:absolute;top:1rem;right:1rem;box-shadow:0 8px 20px #00000059}.ProjectGallery-module__3VYB5q__closeBtn:hover{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__closeBtn:hover{background-color:color-mix(in srgb, var(--surface), var(--foreground) 8%)}}.ProjectGallery-module__3VYB5q__closeBtn:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectGallery-module__3VYB5q__closeBtn:hover{border-color:color-mix(in srgb, var(--accent), transparent 50%)}}.ProjectGallery-module__3VYB5q__navBtn{color:#fff;cursor:pointer;background-color:#1a1e26bf;border:1px solid #ffffff40;justify-content:center;align-items:center;transition:background-color .2s,border-color .2s;display:inline-flex}.ProjectGallery-module__3VYB5q__closeBtn:hover,.ProjectGallery-module__3VYB5q__navBtn:hover{border-color:#ffffff8c}.ProjectGallery-module__3VYB5q__navBtn:hover{background-color:#1a1e26}.ProjectGallery-module__3VYB5q__closeBtn svg,.ProjectGallery-module__3VYB5q__navBtn svg{width:1.3rem;height:1.3rem}.ProjectGallery-module__3VYB5q__lightboxStage{flex:1;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;min-height:0;display:grid;position:relative}.ProjectGallery-module__3VYB5q__lightboxFrame{aspect-ratio:9/17;background-color:#111;border:1px solid #ffffff26;border-radius:1rem;width:100%;max-height:min(72dvh,680px);margin-inline:auto;position:relative;overflow:hidden}.ProjectGallery-module__3VYB5q__lightboxImage{object-fit:contain;object-position:center}.ProjectGallery-module__3VYB5q__navBtn{border-radius:999px;flex-shrink:0;width:2.6rem;height:2.6rem}.ProjectGallery-module__3VYB5q__lightboxCounter{color:#ffffffb3;text-align:center;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));flex-shrink:0;margin:0}@media (max-width:700px){.ProjectGallery-module__3VYB5q__closeBtn{top:.75rem;right:.75rem}.ProjectGallery-module__3VYB5q__lightboxStage{grid-template-columns:1fr;gap:.75rem}.ProjectGallery-module__3VYB5q__navPrev,.ProjectGallery-module__3VYB5q__navNext{z-index:2;position:absolute;top:50%;transform:translateY(-50%)}.ProjectGallery-module__3VYB5q__navPrev{left:.4rem}.ProjectGallery-module__3VYB5q__navNext{right:.4rem}.ProjectGallery-module__3VYB5q__lightboxFrame{max-height:65dvh}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}
.BlogView-module__14mJ7W__page{isolation:isolate;position:relative}.BlogView-module__14mJ7W__page:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg, var(--surface) 0%, transparent 55%);height:34rem;position:absolute;inset:0 0 auto}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__page:before{background:linear-gradient(180deg, color-mix(in srgb, var(--surface), transparent 55%) 0%, transparent 55%)}}.BlogView-module__14mJ7W__inner,.BlogView-module__14mJ7W__innerNarrow{width:100%;padding-inline:calc(var(--spacing,.25rem) * 6);margin-inline:auto}.BlogView-module__14mJ7W__inner{max-width:var(--container-7xl,80rem)}.BlogView-module__14mJ7W__innerNarrow{max-width:var(--container-3xl,48rem)}.BlogView-module__14mJ7W__intro{padding-top:calc(var(--spacing,.25rem) * 16);padding-bottom:calc(var(--spacing,.25rem) * 8)}@media (min-width:64rem){.BlogView-module__14mJ7W__intro{padding-top:calc(var(--spacing,.25rem) * 24);padding-bottom:calc(var(--spacing,.25rem) * 10)}}.BlogView-module__14mJ7W__eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:calc(var(--spacing,.25rem) * 3);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.BlogView-module__14mJ7W__title{color:var(--foreground);letter-spacing:-.03em;margin-bottom:calc(var(--spacing,.25rem) * 8);font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)));--tw-leading:1.08;--tw-font-weight:var(--font-weight-semibold,600);line-height:1.08;font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.BlogView-module__14mJ7W__title{font-size:var(--text-5xl,3rem);line-height:var(--tw-leading,var(--text-5xl--line-height,1))}}@media (min-width:64rem){.BlogView-module__14mJ7W__title{font-size:var(--text-6xl,3.75rem);line-height:var(--tw-leading,var(--text-6xl--line-height,1))}}.BlogView-module__14mJ7W__note{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:1rem;max-width:48rem;margin-bottom:1.5rem;padding:1.15rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__note{background-color:color-mix(in srgb, var(--surface), transparent 25%)}}.BlogView-module__14mJ7W__noteTitle{color:var(--foreground);margin-bottom:calc(var(--spacing,.25rem) * 2);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.BlogView-module__14mJ7W__noteBody{color:var(--text-muted);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}@media (min-width:40rem){.BlogView-module__14mJ7W__noteBody{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)))}}.BlogView-module__14mJ7W__filters{max-width:64rem}.BlogView-module__14mJ7W__listSection{padding-bottom:calc(var(--spacing,.25rem) * 12)}@media (min-width:64rem){.BlogView-module__14mJ7W__listSection{padding-bottom:calc(var(--spacing,.25rem) * 20)}}.BlogView-module__14mJ7W__list{flex-direction:column;gap:1.15rem;display:flex}.BlogView-module__14mJ7W__empty{color:var(--text-muted);padding-block:calc(var(--spacing,.25rem) * 10);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)))}.BlogView-module__14mJ7W__card{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:1.2rem;padding:1.4rem 1.45rem 1.5rem;scroll-margin-top:7rem}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__card{background-color:color-mix(in srgb, var(--surface), transparent 22%)}}.BlogView-module__14mJ7W__cardTop{margin-bottom:calc(var(--spacing,.25rem) * 4);gap:calc(var(--spacing,.25rem) * 3);flex-direction:column;display:flex}@media (min-width:40rem){.BlogView-module__14mJ7W__cardTop{flex-direction:row;justify-content:space-between;align-items:center}}.BlogView-module__14mJ7W__meta{color:var(--text-muted);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-tracking:var(--tracking-wide,.025em);letter-spacing:var(--tracking-wide,.025em);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.BlogView-module__14mJ7W__category{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__category{color:color-mix(in srgb, var(--accent), white 10%)}}.BlogView-module__14mJ7W__category{letter-spacing:.08em;text-transform:uppercase;--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.BlogView-module__14mJ7W__metaSep{opacity:.55}.BlogView-module__14mJ7W__readTime{align-items:center;gap:.3rem;display:inline-flex}.BlogView-module__14mJ7W__readTime svg{width:.9rem;height:.9rem}.BlogView-module__14mJ7W__draftBadge{width:fit-content;color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__draftBadge{background-color:color-mix(in srgb, var(--accent), transparent 88%)}}.BlogView-module__14mJ7W__draftBadge{border-radius:var(--radius-md,.375rem);padding-inline:calc(var(--spacing,.25rem) * 2.5);padding-block:calc(var(--spacing,.25rem) * 1);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.BlogView-module__14mJ7W__cardTitle{color:var(--foreground);letter-spacing:-.02em;margin-bottom:calc(var(--spacing,.25rem) * 3);font-size:var(--text-xl,1.25rem);line-height:var(--tw-leading,var(--text-xl--line-height,calc(1.75 / 1.25)));--tw-leading:var(--leading-snug,1.375);line-height:var(--leading-snug,1.375);--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.BlogView-module__14mJ7W__cardTitle{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)))}}.BlogView-module__14mJ7W__excerpt{color:var(--text-muted);margin-bottom:calc(var(--spacing,.25rem) * 5);max-width:var(--container-3xl,48rem);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}.BlogView-module__14mJ7W__outlineLabel{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__outlineLabel{color:color-mix(in srgb, var(--accent), white 10%)}}.BlogView-module__14mJ7W__outlineLabel{letter-spacing:.08em;text-transform:uppercase;margin-bottom:calc(var(--spacing,.25rem) * 2.5);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.BlogView-module__14mJ7W__bullets{margin:calc(var(--spacing,.25rem) * 0);gap:calc(var(--spacing,.25rem) * 2);padding-left:calc(var(--spacing,.25rem) * 5);color:var(--text-muted);flex-direction:column;display:flex}.BlogView-module__14mJ7W__bullets li{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}@media (min-width:40rem){.BlogView-module__14mJ7W__bullets li{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)))}}.BlogView-module__14mJ7W__ctaSection{padding-block:calc(var(--spacing,.25rem) * 16)}@media (min-width:64rem){.BlogView-module__14mJ7W__ctaSection{padding-block:calc(var(--spacing,.25rem) * 24)}}.BlogView-module__14mJ7W__ctaSection{border-top:1px solid var(--border-subtle)}.BlogView-module__14mJ7W__ctaBox{text-align:center}.BlogView-module__14mJ7W__ctaTitle{color:var(--foreground);letter-spacing:-.02em;margin-bottom:calc(var(--spacing,.25rem) * 4);font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height,calc(2.25 / 1.875)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.BlogView-module__14mJ7W__ctaTitle{font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)))}}.BlogView-module__14mJ7W__ctaSupport{color:var(--text-muted);margin-bottom:calc(var(--spacing,.25rem) * 8);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:calc(var(--spacing,.25rem) * 8);line-height:calc(var(--spacing,.25rem) * 8)}.BlogView-module__14mJ7W__ctaActions{justify-content:center;gap:calc(var(--spacing,.25rem) * 3);flex-direction:column;display:flex}@media (min-width:40rem){.BlogView-module__14mJ7W__ctaActions{flex-direction:row}}.BlogView-module__14mJ7W__primaryCta{background-color:var(--accent);color:var(--cta-on-accent);border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;transition-duration:.2s;display:inline-flex}.BlogView-module__14mJ7W__primaryCta:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__primaryCta:hover{background-color:color-mix(in srgb, var(--accent), white 12%)}}.BlogView-module__14mJ7W__secondaryCta{color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__secondaryCta{background-color:color-mix(in srgb, var(--surface), transparent 40%)}}.BlogView-module__14mJ7W__secondaryCta{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;transition-duration:.2s;display:inline-flex}.BlogView-module__14mJ7W__secondaryCta:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__secondaryCta:hover{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.BlogView-module__14mJ7W__secondaryCta:hover{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.BlogView-module__14mJ7W__secondaryCta:hover{color:color-mix(in srgb, var(--accent), white 18%)}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
.ProjectDetailView-module__ugRg5W__page{isolation:isolate;padding-bottom:calc(var(--spacing,.25rem) * 20);position:relative}@media (min-width:64rem){.ProjectDetailView-module__ugRg5W__page{padding-bottom:calc(var(--spacing,.25rem) * 28)}}.ProjectDetailView-module__ugRg5W__page:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg, var(--surface) 0%, transparent 55%);height:28rem;position:absolute;inset:0 0 auto}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__page:before{background:linear-gradient(180deg, color-mix(in srgb, var(--surface), transparent 55%) 0%, transparent 55%)}}.ProjectDetailView-module__ugRg5W__inner{width:100%;max-width:var(--container-6xl,72rem);padding-inline:calc(var(--spacing,.25rem) * 6);padding-top:calc(var(--spacing,.25rem) * 10);margin-inline:auto}@media (min-width:64rem){.ProjectDetailView-module__ugRg5W__inner{padding-top:calc(var(--spacing,.25rem) * 14)}}.ProjectDetailView-module__ugRg5W__backLink{color:var(--text-muted);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);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,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));align-items:center;gap:.45rem;margin-bottom:1.75rem;text-decoration:none;display:inline-flex}.ProjectDetailView-module__ugRg5W__backLink svg{width:1rem;height:1rem}.ProjectDetailView-module__ugRg5W__backLink:hover{color:var(--foreground)}.ProjectDetailView-module__ugRg5W__hero{margin-bottom:calc(var(--spacing,.25rem) * 12);align-items:center;gap:calc(var(--spacing,.25rem) * 8);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:64rem){.ProjectDetailView-module__ugRg5W__hero{margin-bottom:calc(var(--spacing,.25rem) * 16);gap:calc(var(--spacing,.25rem) * 10);grid-template-columns:1.15fr .85fr}}.ProjectDetailView-module__ugRg5W__metaRow{color:var(--text-muted);margin-bottom:calc(var(--spacing,.25rem) * 4);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.ProjectDetailView-module__ugRg5W__status{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__status{color:color-mix(in srgb, var(--accent), white 10%)}}.ProjectDetailView-module__ugRg5W__status{--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.ProjectDetailView-module__ugRg5W__metaSep{opacity:.5}.ProjectDetailView-module__ugRg5W__title{color:var(--foreground);letter-spacing:-.03em;margin-bottom:calc(var(--spacing,.25rem) * 4);font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)));--tw-leading:1.08;--tw-font-weight:var(--font-weight-semibold,600);line-height:1.08;font-weight:var(--font-weight-semibold,600)}@media (min-width:40rem){.ProjectDetailView-module__ugRg5W__title{font-size:var(--text-5xl,3rem);line-height:var(--tw-leading,var(--text-5xl--line-height,1))}}.ProjectDetailView-module__ugRg5W__summary{color:var(--text-muted);margin-bottom:calc(var(--spacing,.25rem) * 3);max-width:var(--container-2xl,42rem);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:calc(var(--spacing,.25rem) * 8);line-height:calc(var(--spacing,.25rem) * 8)}.ProjectDetailView-module__ugRg5W__role{color:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__role{color:color-mix(in srgb, var(--text-muted), var(--foreground) 35%)}}.ProjectDetailView-module__ugRg5W__role{margin-bottom:calc(var(--spacing,.25rem) * 5);max-width:var(--container-2xl,42rem);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 6);line-height:calc(var(--spacing,.25rem) * 6)}.ProjectDetailView-module__ugRg5W__tags{flex-wrap:wrap;gap:.4rem;display:flex}.ProjectDetailView-module__ugRg5W__tag{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__tag{color:color-mix(in srgb, var(--accent), white 8%)}}.ProjectDetailView-module__ugRg5W__tag{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__tag{background-color:color-mix(in srgb, var(--accent), transparent 88%)}}.ProjectDetailView-module__ugRg5W__tag{border-radius:var(--radius-md,.375rem);padding-inline:calc(var(--spacing,.25rem) * 2.5);padding-block:calc(var(--spacing,.25rem) * 1);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.ProjectDetailView-module__ugRg5W__heroVisual{aspect-ratio:1;border:1px solid var(--border-subtle);background:var(--surface);border-radius:50%;width:min(100%,22rem);min-height:0;margin-inline:auto;position:relative;overflow:hidden}.ProjectDetailView-module__ugRg5W__heroImage{object-fit:cover;object-position:center}.ProjectDetailView-module__ugRg5W__sections{flex-direction:column;gap:1.75rem;display:flex}.ProjectDetailView-module__ugRg5W__section{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:1.1rem;padding:1.35rem 1.4rem}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__section{background-color:color-mix(in srgb, var(--surface), transparent 25%)}}.ProjectDetailView-module__ugRg5W__section h2{color:var(--foreground);margin-bottom:calc(var(--spacing,.25rem) * 3);font-size:var(--text-xl,1.25rem);line-height:var(--tw-leading,var(--text-xl--line-height,calc(1.75 / 1.25)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.ProjectDetailView-module__ugRg5W__section p{color:var(--text-muted);margin:calc(var(--spacing,.25rem) * 0);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-leading:calc(var(--spacing,.25rem) * 8);line-height:calc(var(--spacing,.25rem) * 8)}.ProjectDetailView-module__ugRg5W__section p+p{margin-top:.85rem}.ProjectDetailView-module__ugRg5W__bullets{margin:calc(var(--spacing,.25rem) * 0);gap:calc(var(--spacing,.25rem) * 2);padding-left:calc(var(--spacing,.25rem) * 5);color:var(--text-muted);flex-direction:column;display:flex}.ProjectDetailView-module__ugRg5W__bullets li{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}.ProjectDetailView-module__ugRg5W__techList{margin:calc(var(--spacing,.25rem) * 0);gap:calc(var(--spacing,.25rem) * 2.5);padding:calc(var(--spacing,.25rem) * 0);flex-wrap:wrap;list-style-type:none;display:flex}.ProjectDetailView-module__ugRg5W__techChip{color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__techChip{background-color:color-mix(in srgb, var(--background), transparent 30%)}}.ProjectDetailView-module__ugRg5W__techChip{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 3.5);padding-block:calc(var(--spacing,.25rem) * 2);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}.ProjectDetailView-module__ugRg5W__links{flex-wrap:wrap;gap:.75rem;display:flex}.ProjectDetailView-module__ugRg5W__externalLink{color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--background);align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__externalLink{background-color:color-mix(in srgb, var(--background), transparent 30%)}}.ProjectDetailView-module__ugRg5W__externalLink{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 2.5);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);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,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}.ProjectDetailView-module__ugRg5W__externalLink svg{width:1rem;height:1rem}.ProjectDetailView-module__ugRg5W__externalLink:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__externalLink:hover{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.ProjectDetailView-module__ugRg5W__externalLink:hover{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__externalLink:hover{color:color-mix(in srgb, var(--accent), white 15%)}}.ProjectDetailView-module__ugRg5W__bottomNav{border-top:1px solid var(--border-subtle);margin-top:2.5rem;padding-top:1.75rem}.ProjectDetailView-module__ugRg5W__adjacent{margin-bottom:calc(var(--spacing,.25rem) * 8);gap:calc(var(--spacing,.25rem) * 4);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:40rem){.ProjectDetailView-module__ugRg5W__adjacent{grid-template-columns:repeat(2,minmax(0,1fr))}}.ProjectDetailView-module__ugRg5W__adjacentLink{border:1px solid var(--border-subtle);background-color:var(--surface);border-radius:1rem;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__adjacentLink{background-color:color-mix(in srgb, var(--surface), transparent 25%)}}.ProjectDetailView-module__ugRg5W__adjacentLink{text-decoration:none;transition:border-color .2s}.ProjectDetailView-module__ugRg5W__adjacentLink:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__adjacentLink:hover{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}.ProjectDetailView-module__ugRg5W__adjacentNext{text-align:right;align-items:flex-end}.ProjectDetailView-module__ugRg5W__adjacentLabel{color:var(--text-muted);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);--tw-tracking:.08em;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.35rem;display:inline-flex}.ProjectDetailView-module__ugRg5W__adjacentLabel svg{width:.9rem;height:.9rem}.ProjectDetailView-module__ugRg5W__adjacentLink strong{color:var(--foreground);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.ProjectDetailView-module__ugRg5W__ctaRow{justify-content:center;gap:calc(var(--spacing,.25rem) * 3);flex-direction:column;display:flex}@media (min-width:40rem){.ProjectDetailView-module__ugRg5W__ctaRow{flex-direction:row}}.ProjectDetailView-module__ugRg5W__primaryCta{background-color:var(--accent);color:var(--cta-on-accent);border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;text-decoration:none;transition-duration:.2s;display:inline-flex}.ProjectDetailView-module__ugRg5W__primaryCta:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__primaryCta:hover{background-color:color-mix(in srgb, var(--accent), white 12%)}}.ProjectDetailView-module__ugRg5W__secondaryCta{color:var(--foreground);border:1px solid var(--border-subtle);background-color:var(--surface);text-decoration:none}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__secondaryCta{background-color:color-mix(in srgb, var(--surface), transparent 40%)}}.ProjectDetailView-module__ugRg5W__secondaryCta{border-radius:var(--radius-xl,.75rem);padding-inline:calc(var(--spacing,.25rem) * 7);padding-block:calc(var(--spacing,.25rem) * 3.5);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height,calc(1.5 / 1)));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.2s;justify-content:center;align-items:center;transition-duration:.2s;display:inline-flex}.ProjectDetailView-module__ugRg5W__secondaryCta:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ProjectDetailView-module__ugRg5W__secondaryCta:hover{border-color:color-mix(in srgb, var(--accent), transparent 45%)}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
