:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;.swiper-cube-shadow,.swiper-slide{transform-style:preserve-3d}}.swiper-css-mode{>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none}}>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{>.swiper-wrapper{scroll-snap-type:x mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{>.swiper-wrapper{scroll-snap-type:y mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{>.swiper-wrapper{scroll-snap-type:none}>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}}}.swiper-3d{.swiper-slide-shadow,.swiper-slide-shadow-bottom,.swiper-slide-shadow-left,.swiper-slide-shadow-right,.swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-slide-shadow-left{background-image:linear-gradient(270deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-right{background-image:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-top{background-image:linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,0))}}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border-radius:50%;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top:4px solid transparent}.swiper-watch-progress .swiper-slide-visible,.swiper:not(.swiper-watch-progress){.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.MugCarousel_carousel__40XJp{position:relative;z-index:2;width:100%;height:100%;background:rgba(0,0,0,0);color:var(--ink);-webkit-user-select:none;user-select:none}.MugCarousel_swiper__E_izl{width:100%;height:calc(100% - 44px);padding-top:6px}.MugCarousel_slide__190i0{position:relative;width:160px;height:100%;overflow:hidden;background:rgba(0,0,0,0)}.MugCarousel_slide__190i0 img{object-fit:contain;object-position:center}.MugCarousel_slide__190i0 a{position:relative;display:block;width:100%;height:100%}.MugCarousel_slide__190i0 a:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.MugCarousel_arrow__xh2nb{position:absolute;z-index:2;bottom:0;width:44px;height:44px;padding:0;border:0;background:rgba(0,0,0,0);color:var(--ink);font-size:27px;line-height:20px;cursor:pointer}.MugCarousel_arrow__xh2nb:hover{color:var(--accent-ink)}.MugCarousel_arrow__xh2nb:focus-visible{outline:2px solid var(--accent)}.MugCarousel_previous__JxpqL{left:6px}.MugCarousel_next__9_0mI{right:6px}.MugCarousel_caption__iiKN7{position:absolute;z-index:2;right:50px;bottom:13px;left:50px;overflow:hidden;font-family:var(--mono);font-size:var(--text-label);text-align:center;text-overflow:ellipsis;white-space:nowrap}.MugCarousel_caption__iiKN7 span{color:var(--ink-soft)}.ProjectCard_project__GqJTz{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);background:var(--bg)}.ProjectCard_project__GqJTz:hover{border-color:var(--acc)}.ProjectCard_image__Wf8uw{position:relative;aspect-ratio:16/9;border-bottom:1px solid var(--line);overflow:hidden;background:var(--bg2)}.ProjectCard_image__Wf8uw>a{display:block;height:100%}.ProjectCard_image__Wf8uw>a img{object-fit:contain;padding:12px}.ProjectCard_content__r3dI0{flex:1 1;padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px}.ProjectCard_content__r3dI0 h2{margin:0;font:600 16px var(--mono)}.ProjectCard_content__r3dI0 p{margin:0;font:16px/1.5 var(--sans)}.ProjectCard_tags__XjsTw{font:12px/1.5 var(--mono);color:var(--soft)}.page_page__Dj0ZR>.psub{margin:0 0 28px}.page_projects__JGepY{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:20px}