.ProjectGallery-module__Zs4ZiG__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,26px);display:grid}.ProjectGallery-module__Zs4ZiG__item{position:relative}.ProjectGallery-module__Zs4ZiG__wide{grid-column:1/-1}.ProjectGallery-module__Zs4ZiG__thumb{aspect-ratio:4/3;border-radius:var(--radius);background:var(--mist);width:100%;display:block;position:relative;overflow:hidden}.ProjectGallery-module__Zs4ZiG__wide .ProjectGallery-module__Zs4ZiG__thumb{aspect-ratio:16/8}.ProjectGallery-module__Zs4ZiG__thumb img{transition:transform 1.2s var(--ease-out)!important}@media (hover:hover){.ProjectGallery-module__Zs4ZiG__thumb:hover img{transform:scale(1.04)}}.ProjectGallery-module__Zs4ZiG__viewer{z-index:180;color:var(--paper);animation:ProjectGallery-module__Zs4ZiG__fade-in .4s var(--ease-out);background:#0a0a0af5;grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}@keyframes ProjectGallery-module__Zs4ZiG__fade-in{0%{opacity:0}}.ProjectGallery-module__Zs4ZiG__bar{padding:18px var(--gutter);justify-content:space-between;align-items:center;display:flex}.ProjectGallery-module__Zs4ZiG__counter{font-family:var(--font-mono);font-size:14px}.ProjectGallery-module__Zs4ZiG__counter span{color:var(--stone-light)}.ProjectGallery-module__Zs4ZiG__close{background:var(--yellow);width:52px;height:52px;color:var(--ink);transition:transform .6s var(--ease-spring);border-radius:50%;place-items:center;display:grid}.ProjectGallery-module__Zs4ZiG__close svg{width:22px}@media (hover:hover){.ProjectGallery-module__Zs4ZiG__close:hover{transform:rotate(90deg)}}.ProjectGallery-module__Zs4ZiG__stageWrap{place-items:center;min-height:0;padding:0 clamp(12px,6vw,110px);display:grid;position:relative}.ProjectGallery-module__Zs4ZiG__stage{place-items:center;width:100%;height:100%;min-height:0;max-height:100%;display:grid}.ProjectGallery-module__Zs4ZiG__full{object-fit:contain;border-radius:14px;width:auto;max-width:100%;height:auto;max-height:calc(100svh - 220px)}.ProjectGallery-module__Zs4ZiG__arrow{width:56px;height:56px;color:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border-radius:50%;place-items:center;transition:background .3s,color .3s;display:grid;position:absolute;top:50%;translate:0 -50%}.ProjectGallery-module__Zs4ZiG__arrow svg{width:22px}@media (hover:hover){.ProjectGallery-module__Zs4ZiG__arrow:hover{background:var(--yellow);color:var(--ink)}}.ProjectGallery-module__Zs4ZiG__prev{left:clamp(8px,2vw,32px)}.ProjectGallery-module__Zs4ZiG__prev svg{transform:rotate(180deg)}.ProjectGallery-module__Zs4ZiG__nextBtn{right:clamp(8px,2vw,32px)}.ProjectGallery-module__Zs4ZiG__thumbs{padding:16px var(--gutter) 22px;scrollbar-width:none;justify-content:safe center;gap:8px;display:flex;overflow-x:auto}.ProjectGallery-module__Zs4ZiG__mini{opacity:.45;border-radius:10px;flex:none;width:84px;height:58px;transition:opacity .3s,box-shadow .3s;position:relative;overflow:hidden}.ProjectGallery-module__Zs4ZiG__miniOn{opacity:1;box-shadow:0 0 0 2px var(--yellow)}@media (hover:hover){.ProjectGallery-module__Zs4ZiG__mini:hover{opacity:1}}@media (max-width:800px){.ProjectGallery-module__Zs4ZiG__grid{grid-template-columns:1fr}.ProjectGallery-module__Zs4ZiG__wide .ProjectGallery-module__Zs4ZiG__thumb{aspect-ratio:4/3}.ProjectGallery-module__Zs4ZiG__arrow{display:none}}
.project-module__xN4ChG__head{padding-top:clamp(48px,6vw,120px);padding-bottom:clamp(40px,4vw,80px)}.project-module__xN4ChG__crumbs{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--stone);flex-wrap:wrap;gap:10px;margin-bottom:clamp(24px,3vw,56px);display:flex}.project-module__xN4ChG__crumbs [aria-current]{color:var(--ink)}.project-module__xN4ChG__headGrid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:clamp(28px,5vw,96px);display:grid}.project-module__xN4ChG__cat{background:var(--yellow);border-radius:999px;align-items:center;height:36px;margin-bottom:20px;padding:0 16px;font-weight:500;display:inline-flex}.project-module__xN4ChG__title{letter-spacing:-.05em;max-width:13ch;font-size:clamp(44px,6.4vw,128px);line-height:.95}.project-module__xN4ChG__aside{gap:24px;display:grid}.project-module__xN4ChG__summary{font-size:var(--text-lg);color:var(--stone)}.project-module__xN4ChG__facts{border-top:1px solid var(--line);display:grid}.project-module__xN4ChG__facts>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:14px 0;display:flex}.project-module__xN4ChG__facts dt{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--stone);padding-top:3px}.project-module__xN4ChG__facts dd{text-align:right;font-weight:500}.project-module__xN4ChG__cover{border-radius:var(--radius-lg);background:var(--mist);height:min(88vh,62vw);min-height:320px;margin-inline:clamp(0px,.6vw,12px);position:relative;overflow:hidden}.project-module__xN4ChG__nextWrap{padding-bottom:var(--section-y)}.project-module__xN4ChG__next{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px;padding:clamp(32px,4vw,72px) 0;display:grid;position:relative}.project-module__xN4ChG__nextLabel{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--stone)}.project-module__xN4ChG__nextTitle{letter-spacing:-.05em;z-index:1;transition:transform .8s var(--ease-out);align-items:center;gap:.3em;font-size:clamp(36px,6vw,116px);font-weight:500;line-height:1;display:flex;position:relative}.project-module__xN4ChG__nextTitle svg{width:.6em;height:.6em;transition:transform .8s var(--ease-out);flex:none}.project-module__xN4ChG__nextImg{aspect-ratio:4/3;border-radius:var(--radius);opacity:0;width:clamp(200px,26vw,460px);transition:opacity .5s, transform .9s var(--ease-out);pointer-events:none;position:absolute;top:50%;right:4%;overflow:hidden;transform:translateY(-50%)rotate(6deg)scale(.8)}@media (hover:hover){.project-module__xN4ChG__next:hover .project-module__xN4ChG__nextTitle{transform:translate(16px)}.project-module__xN4ChG__next:hover .project-module__xN4ChG__nextTitle svg{transform:rotate(45deg)}.project-module__xN4ChG__next:hover .project-module__xN4ChG__nextImg{opacity:1;transform:translateY(-50%)rotate(-3deg)scale(1)}}@media (max-width:900px){.project-module__xN4ChG__headGrid{grid-template-columns:1fr}.project-module__xN4ChG__nextImg{display:none}}
