:root { --swiper-theme-color: #007aff }
:host { position: relative; display: block; margin-left: auto; margin-right: auto; z-index: 1 }
.portfolio-slider { background: #000000; position: relative; z-index: 2 }
.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-3d .swiper-slide, .swiper-3d .swiper-cube-shadow { transform-style: preserve-3d }
.swiper-css-mode > .swiper-wrapper { overflow: auto; scrollbar-width: none; -ms-overflow-style: none }
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar { display: none }
.swiper-css-mode > .swiper-wrapper > .swiper-slide { scroll-snap-align: start start }
.swiper-css-mode.swiper-horizontal > .swiper-wrapper { scroll-snap-type: x mandatory }
.swiper-css-mode.swiper-vertical > .swiper-wrapper { scroll-snap-type: y mandatory }
.swiper-css-mode.swiper-free-mode > .swiper-wrapper { scroll-snap-type: none }
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide { scroll-snap-align: none }
.swiper-css-mode.swiper-centered > .swiper-wrapper:before { content: ""; flex-shrink: 0; order: 9999 }
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide { scroll-snap-align: center center; scroll-snap-stop: always }
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child { margin-inline-start: var(--swiper-centered-offset-before) }
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper:before { height: 100%; min-height: 1px; width: var(--swiper-centered-offset-after) }
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child { margin-block-start: var(--swiper-centered-offset-before) }
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper:before { width: 100%; min-width: 1px; height: var(--swiper-centered-offset-after) }
.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-slide-shadow-bottom { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; z-index: 10 }
.swiper-3d .swiper-slide-shadow { background: #00000026 }
.swiper-3d .swiper-slide-shadow-left { background-image: linear-gradient(to left,#00000080,#0000) }
.swiper-3d .swiper-slide-shadow-right { background-image: linear-gradient(to right,#00000080,#0000) }
.swiper-3d .swiper-slide-shadow-top { background-image: linear-gradient(to top,#00000080,#0000) }
.swiper-3d .swiper-slide-shadow-bottom { background-image: linear-gradient(to bottom,#00000080,#0000) }
.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: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color)); border-radius: 50%; border-top-color: transparent }
:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader { animation: swiper-preloader-spin 1s infinite linear }
.swiper-lazy-preloader-white { --swiper-preloader-color: #fff }
.swiper-lazy-preloader-black { --swiper-preloader-color: #000 }

@keyframes swiper-preloader-spin {
	0% { transform: rotate(0) }
	to { transform: rotate(360deg) }
}

.swiper-pagination { position: absolute; text-align: center; transition: .3s opacity; transform: translateZ(0); z-index: 10 }
.swiper-pagination.swiper-pagination-hidden { opacity: 0 }
.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled { display: none !important }
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal { bottom: var(--swiper-pagination-bottom, 8px); top: var(--swiper-pagination-top, auto); left: 0; width: 100% }
.swiper-pagination-bullets-dynamic { overflow: hidden; font-size: 0 }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transform: scale(.33); position: relative }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main { transform: scale(1) }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev { transform: scale(.66) }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev { transform: scale(.33) }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next { transform: scale(.66) }
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next { transform: scale(.33) }
.swiper-pagination-bullet { width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px)); height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px)); display: inline-block; border-radius: var(--swiper-pagination-bullet-border-radius, 50%); background: var(--swiper-pagination-bullet-inactive-color, #000); opacity: var(--swiper-pagination-bullet-inactive-opacity, .2) }
button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; box-shadow: none; appearance: none }
.swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer }
.swiper-pagination-bullet:only-child { display: none !important }
.swiper-pagination-bullet-active { opacity: var(--swiper-pagination-bullet-opacity, 1); background: var(--swiper-pagination-color, var(--swiper-theme-color)) }
.swiper-vertical > .swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets { right: var(--swiper-pagination-right, 8px); left: var(--swiper-pagination-left, auto); top: 50%; transform: translate3d(0,-50%,0) }
:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet { margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0; display: block }
:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic { top: 50%; transform: translateY(-50%); width: 8px }
:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet { display: inline-block; transition: .2s transform,.2s top }
:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet { margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px) }
:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic { left: 50%; transform: translate(-50%); white-space: nowrap }
:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: .2s transform,.2s left }
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: .2s transform,.2s right }
.swiper-pagination-fraction { color: var(--swiper-pagination-fraction-color, inherit) }
.swiper-pagination-progressbar { background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25)); position: absolute }
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: var(--swiper-pagination-color, var(--swiper-theme-color)); position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform: scale(0); transform-origin: left top }
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { transform-origin: right top }
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite { width: 100%; height: var(--swiper-pagination-progressbar-size, 4px); left: 0; top: 0 }
.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite { width: var(--swiper-pagination-progressbar-size, 4px); height: 100%; left: 0; top: 0 }
.swiper-pagination-lock { display: none }
.swiper-panorama { overflow: visible }

.panorama-slider { padding: 48px 0; width: 100%; position: relative; overflow: hidden }
.panorama-slider .swiper { width: 100%; }
.panorama-slider .slide-image { width: 100%; height: 100%; object-fit: cover; pointer-events: none }
.panorama-slider .swiper-pagination { bottom: -10px; --swiper-pagination-bullet-inactive-color: #fff; --swiper-pagination-color: #fff }


.swiper-3d .swiper-slide img { border-radius: 20px; }
