.IntroOverlay_overlay__GPuto{position:fixed;inset:0;z-index:10000;background:var(--bg);display:flex;align-items:center;justify-content:center}.IntroOverlay_content__Uwkz6{text-align:center;position:relative;z-index:2;display:flex;align-items:center;justify-content:center}.IntroOverlay_logo__0Yotk{display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.9);pointer-events:none;transition:opacity .4s var(--ease-out,cubic-bezier(.16,1,.3,1)),transform .4s var(--ease-out,cubic-bezier(.16,1,.3,1))}.IntroOverlay_logoVisible__yOdaQ{opacity:1;transform:scale(1);pointer-events:auto}.IntroOverlay_logoImage__y1Lcs{height:140px;margin:0 auto;filter:brightness(0)}.PortfolioCanvas_canvas__d_UiS{position:fixed;inset:0;overflow:hidden;cursor:-webkit-grab;cursor:grab;z-index:1}.PortfolioCanvas_canvas__d_UiS.dragging{cursor:-webkit-grabbing;cursor:grabbing}.PortfolioCanvas_inner__SfwfL{position:absolute;transform-origin:0 0;will-change:transform}.PortfolioCanvas_grid__R1u9P{position:relative}.PortfolioCanvas_gridLocked__yTwZo .PortfolioCanvas_itemWrapper__sjbtv{pointer-events:none}.PortfolioCanvas_footerSlot__UWEyw{position:fixed;left:0;right:0;bottom:0;width:100%;z-index:7000}.PortfolioCanvas_itemWrapper__sjbtv{position:absolute;opacity:0;transform-origin:center center;will-change:transform,opacity}.PortfolioCanvas_item__INwcC{position:absolute;inset:0;overflow:hidden;cursor:pointer;box-shadow:0 3px 5px rgba(0,0,0,.28),0 12px 22px rgba(0,0,0,.46);transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(var(--s,1));transition:box-shadow .4s var(--ease-out),opacity .5s var(--ease-out),transform var(--transform-dur,.3s) ease;will-change:transform;display:block}.PortfolioCanvas_item__INwcC:hover{box-shadow:0 6px 10px rgba(0,0,0,.34),0 22px 36px rgba(0,0,0,.58)}.PortfolioCanvas_image__xlnxy{width:100%;height:100%;object-fit:cover;display:block}@media (prefers-reduced-motion:reduce){.PortfolioCanvas_item__INwcC{transform:none;transition:box-shadow .4s var(--ease-out),opacity .5s var(--ease-out)}}.PortfolioCanvas_item__INwcC:after{content:"";position:absolute;inset:0;background:rgba(49,49,49,0);transition:background .4s var(--ease-out);pointer-events:none}.PortfolioCanvas_item__INwcC:hover:after{background:rgba(49,49,49,.08)}.PortfolioCanvas_dimmed__9xVBn{box-shadow:none;transform:none;transition:box-shadow .25s ease}.PortfolioCanvas_dimmed__9xVBn:after{background:rgba(244,241,236,.82);transition:background .25s ease}.PortfolioCanvas_dimmed__9xVBn:hover:after{background:rgba(244,241,236,.6)}.ProjectLabel_label__aHhKQ{position:fixed;z-index:8000;pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s var(--ease-out);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(49,49,49,.08);box-shadow:0 6px 18px rgba(49,49,49,.06);color:var(--text);padding:14px 20px;white-space:nowrap}.ProjectLabel_visible__citBj{opacity:1;transform:translateY(0)}.ProjectLabel_body__xo0I1{display:flex;align-items:center;gap:14px}.ProjectLabel_text__p6SLc{display:flex;flex-direction:column;gap:5px}.ProjectLabel_title__DIvDb{font-size:.95rem;font-weight:500;letter-spacing:.03em}.ProjectLabel_metaText__pWUwI{font-size:.78rem;font-weight:400;opacity:.55;letter-spacing:.02em}.ProjectLabel_triangle__QpKTS{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:9px solid var(--accent);flex-shrink:0;opacity:.85}.CategoryFilters_filters__NzYIG{position:fixed;bottom:40px;left:50%;transform:translateX(-50%);z-index:8000;display:flex;align-items:center;gap:14px;background:rgba(248,245,239,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(49,49,49,.08);box-shadow:0 6px 18px rgba(49,49,49,.06);padding:8px 10px 8px 14px;opacity:0;transition:opacity .6s var(--ease-out)}.CategoryFilters_visible__wzUQr{opacity:1}.CategoryFilters_btn__16hck{position:relative;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:.9rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:rgba(49,49,49,.58);background:none;border:none;padding:7px 15px;cursor:pointer;transition:color .3s var(--ease-out)}.CategoryFilters_btn__16hck:after,.CategoryFilters_btn__16hck:before{content:"";position:absolute;left:50%;width:0;height:1px;background:rgba(49,49,49,.32);transform:translateX(-50%);transition:width .28s var(--ease-out),background-color .28s var(--ease-out)}.CategoryFilters_btn__16hck:before{top:-7px}.CategoryFilters_btn__16hck:after{bottom:-7px}.CategoryFilters_btn__16hck:focus-visible,.CategoryFilters_btn__16hck:hover{color:var(--accent);outline:none}.CategoryFilters_btn__16hck:focus-visible:after,.CategoryFilters_btn__16hck:focus-visible:before,.CategoryFilters_btn__16hck:hover:after,.CategoryFilters_btn__16hck:hover:before{width:100%;background:rgba(49,49,49,.48)}.CategoryFilters_active__1SAEf{color:var(--accent)}@media (max-width:900px){.CategoryFilters_filters__NzYIG{gap:6px;padding:6px 8px}.CategoryFilters_btn__16hck{font-size:.78rem;padding:5px 10px;letter-spacing:.03em}}@media (max-width:768px){.CategoryFilters_filters__NzYIG{bottom:24px;width:auto;max-width:calc(100vw - 20px);gap:2px;padding:5px 6px;justify-content:center}.CategoryFilters_btn__16hck{font-size:.72rem;padding:5px 8px;letter-spacing:.02em}}@media (max-width:480px){.CategoryFilters_filters__NzYIG{bottom:16px;padding:4px}.CategoryFilters_btn__16hck{font-size:.68rem;padding:4px 6px}}