/* ===================================
	Portfolio List
====================================== */
.elementor-widget-crafto-portfolio {
	width: 100%;
}
.elementor-widget.elementor-widget-crafto-portfolio:has(.grid-loading),
.elementor-widget.elementor-widget-crafto-archive-portfolio:has(.grid-loading) {
	opacity: 1;
}
/* Filter */
.elementor-widget-crafto-portfolio .filter-wrap,
.elementor-widget-crafto-archive-portfolio .filter-wrap {
	margin-bottom: 4.4%;
}
.elementor-widget-crafto-portfolio .filter-wrap .grid-filter,
.elementor-widget-crafto-archive-portfolio .filter-wrap .grid-filter {
	margin: 0;
}
.filter-wrap .portfolio-heading {
	margin: 0 auto 0 0;
}
.filter-wrap .crafto-button-wrapper {
	margin: 0 0 0 auto;
}
.filter-wrap {
	flex-wrap: wrap;
	display: flex;
	align-items: center;
}
img.mfp-img {
	max-width: 100%;
	line-height: 0;
	padding: 40px 0;
}
.mfp-gallery button.mfp-arrow {
	border: 0;
	border-radius: 0;
}
.portfolio-grid [class^="col-"],
.portfolio-grid [class*=" col-"],
.portfolio-grid [class^="col"],
.portfolio-grid [class*=" col"] {
	padding-right: 15px;
	padding-left: 15px;
}
.default-portfolio-grid,
.portfolio-grid {
	margin: 0 -15px;
}
.default-portfolio-grid li{
	padding: 0 15px;
}
.default-portfolio-grid li figure {
	margin-bottom: 0;
}
.portfolio-wrap .grid-item > div {
	width: 100%;
}
.portfolio-wrap:not(.portfolio-parallax, .portfolio-transform, .portfolio-modern) .grid-item > div * {
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-wrap a {
	outline: none;
}
.portfolio-wrap .portfolio-box {
	overflow: hidden;
}
.portfolio-wrap .portfolio-box .portfolio-image {
	position: relative;
	overflow: hidden;
	will-change: transform;
}
.portfolio-wrap .portfolio-box .portfolio-image img,
.portfolio-wrap .portfolio-image img {
	width: 100%;
	display: block;
	will-change: transform;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-wrap .portfolio-hover {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	opacity: 0;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-wrap .portfolio-box:hover .portfolio-hover {
	opacity: 1;
}
.portfolio-wrap .portfolio-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	margin: 5px 0;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-wrap .portfolio-icon a {
	margin: 0 5px;
	position: relative;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
	height: 55px;
	width: 55px;
	color: var( --e-global-color-secondary, #232323 );
	border-radius: 50%;
	background-color: #fff;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-wrap .portfolio-icon a i {
	color: var( --e-global-color-secondary, #232323 );
	transition: all 0.2s linear;
}
.portfolio-wrap .portfolio-icon a svg {
	margin-left: auto;
	margin-right: auto;
}
.portfolio-wrap .portfolio-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden;
	transition: all 0.2s linear;
}

/* Portfolio Metro */
.portfolio-wrap.portfolio-metro {
	margin: 0;
}
.portfolio-wrap.portfolio-metro .grid-item {
	margin-bottom: 0;
	padding: 15px;
}
.portfolio-wrap:not(.portfolio-metro, .grid-masonry) .grid-sizer {
	display: none;
}

/* Portfolio Classic */
.portfolio-classic .portfolio-box {
	clip-path: inset(0 0 0 0);
}
.portfolio-classic .portfolio-box.disable-overlay:hover .portfolio-image img {
	opacity: 1;
}
.portfolio-classic .portfolio-box .portfolio-image {
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-classic .portfolio-box .portfolio-hover {
	padding: 35px;
	opacity: 0;
	transform: translate3d(0, 45px, 0) skewY(-15deg);
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.portfolio-classic .portfolio-box:hover .portfolio-hover {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}
.portfolio-classic .portfolio-box:hover {
	clip-path: inset(2% 2% 2% 2%);
}
.portfolio-classic .portfolio-box:hover .portfolio-image img {
	opacity: 0.15;
	filter: blur(4px);
}
.portfolio-classic .subtitle {
	line-height: initial;
	font-size: 14px;
	color: #fff;
	opacity: 0.7;
	margin-bottom: 7px;
}
.portfolio-classic .portfolio-hover {
	text-align: center;
}
.portfolio-classic .title {
	font-size: 18px;
	font-weight: 500;
	color: #fff;
}
.portfolio-wrap.portfolio-classic .portfolio-icon a {
	flex-direction: column;
}

/* Portfolio Boxed */
.portfolio-boxed .portfolio-box {
	will-change: transform;
	overflow: hidden;
	border-radius: 4px;
}
.portfolio-boxed .portfolio-box:hover {
	box-shadow: 10px 0 70px rgba(0, 0, 0, 0.15);
	transform: translateY(-5px);
}
.portfolio-boxed .portfolio-image .portfolio-overlay {
	z-index: -1;
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-boxed .portfolio-image {
	border-radius: 4px;
	z-index: 0;
}
.portfolio-boxed .portfolio-image > a {
	position: relative;
	z-index: 1;
}
.portfolio-boxed .portfolio-image .portfolio-hover {
	opacity: 0;
	visibility: hidden;
	display: flex;
	justify-content: center;
	flex-direction: column;
	transition: all 0.2s linear;
}
.portfolio-boxed .portfolio-caption-text {
	padding: 30px 20px;
	text-align: center;
}
.portfolio-boxed .portfolio-caption-text span {
	display: block;
}
.portfolio-boxed .portfolio-caption-text .subtitle {
	color: #828282;
}
.portfolio-boxed .portfolio-caption-text .title {
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-boxed .portfolio-box:hover .portfolio-image img {
	opacity: 0.3;
}
.portfolio-boxed .portfolio-box:hover .portfolio-overlay,
.portfolio-boxed .portfolio-box.disable-overlay .portfolio-image img {
	opacity: 1;
	visibility: visible;
}
.portfolio-boxed .portfolio-box:hover .portfolio-hover {
	opacity: 1;
	visibility: visible;
}
.portfolio-boxed .portfolio-box .portfolio-icon a {
	opacity: 0;
	margin: 0 4px;
	position: relative;
	transform: translateY(15px);
	box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.5);
}
.portfolio-boxed .portfolio-box:hover .portfolio-icon a {
	opacity: 1;
	transform: translateY(0);
}
.portfolio-boxed .subtitle {
	line-height: 20px;
	font-size: 14px;
}
.portfolio-boxed .title a {
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-boxed .portfolio-box .portfolio-icon {
	margin: 20px;
}
.portfolio-wrap.portfolio-boxed .portfolio-icon a {
	flex-direction: column;
}

/* Portfolio Transform */
.portfolio-transform .grid-item > div * {
	transition: inherit;
}
.portfolio-transform .portfolio-box {
	position: relative;
}
.portfolio-transform .portfolio-box .portfolio-image img {
	transition: all 0.6s linear;
}
.portfolio-transform .portfolio-box:hover .portfolio-image img {
	transform: scale(1.1);
}
.portfolio-transform .mousetip-wrapper {
	position: relative;
}
.portfolio-transform .portfolio-caption {
	border-radius: 4px;
	background-color: #fff;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 9;
	padding: 17px 28px 16px;
	line-height: normal;
	white-space: nowrap;
	margin: -15px 0 0 -15px;
	box-shadow: 0 0 25px rgba(0, 0, 0, 0.2);
	transition: all 0ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-transform .mousetip-wrapper:hover .portfolio-caption {
	opacity: 1;
	visibility: visible;
	display: block;
}
.portfolio-transform .title {
	line-height: 22px;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
	display: block;
}
.portfolio-transform .subtitle {
	font-size: 13px;
	line-height: initial;
	color: #828282;
}

/* Portfolio Creative */
.portfolio-creative .portfolio-box {
	will-change: transform;
}
.portfolio-creative .portfolio-image {
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-creative .portfolio-box:hover .portfolio-image img {
	opacity: 0;
}
.portfolio-creative .portfolio-hover {
	padding: 40px 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
}
.portfolio-creative .portfolio-hover .portfolio-title {
	transform: scale(2);
	display: block;
	width: 100%;
	font-size: 26px;
	line-height: 38px;
	font-weight: 700;
	color: #fff;
	margin-top: auto;
	margin-bottom: auto;
}
.portfolio-creative .portfolio-box:hover .portfolio-title {
	transform: scale(1);
}
.portfolio-creative .portfolio-hover .portfolio-title:before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
	transform: translateY(-50%);
}
.portfolio-creative .portfolio-hover .portfolio-title:after {
	content: attr(data-text);
	position: absolute;
	left: 0;
	right: 0;
	top: -20px;
	font-size: 110px;
	letter-spacing: -6px;
	color: rgba(0, 0, 0, 0.1);
	font-weight: 700;
	white-space: nowrap;
	text-align: center;
	display: inline-block;
	text-transform: uppercase;
	animation: glitch-skew 1s infinite linear alternate-reverse;
}
.portfolio-creative .portfolio-box .portfolio-hover .subtitle {
	transform: translateY(25px);
	line-height: 20px;
	font-size: 12px;
	font-weight: 500;
	padding: 5px 15px;
	border-radius: 2px;
	color: var( --e-global-color-secondary, #232323 );
	background-color: #fff;
}
.portfolio-creative .portfolio-box:hover .portfolio-hover .subtitle {
	transform: translateY(0);
}

/* Portfolio Attractive */
.portfolio-attractive .portfolio-caption {
	text-align: center;
}
.portfolio-attractive .portfolio-box {
	position: relative;
}
.portfolio-attractive .portfolio-box .portfolio-image{
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-attractive .portfolio-box .portfolio-image img {
	transition: all 500ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-attractive .atropos-scale:hover .portfolio-box .portfolio-image img {
	opacity: 0.5;
}
.portfolio-attractive .atropos-scale:hover .portfolio-box.disable-overlay .portfolio-image img {
	opacity: 1;
}
.portfolio-attractive .portfolio-box .portfolio-hover {
	transform: translateZ(15px);
	transform-style: preserve-3d;
	padding: 40px 15px;
	align-items: center;
	justify-content: flex-end;
	flex-direction: column;
	display: flex;
}
.portfolio-attractive .atropos-scale:hover .portfolio-box .portfolio-hover {
	opacity: 1;
}
.portfolio-attractive .portfolio-box .portfolio-hover .portfolio-icon {
	display: inherit;
	align-items: inherit;
	justify-content: inherit;
	flex-direction: inherit;
	z-index: 1;
	margin: 5px 15px auto auto;
	font-size: 28px;
	line-height: 22px;
	color: #fff;
	transform-style: inherit;
	position: absolute;
	right: 15px;
	top: 40px;
}
.portfolio-attractive .atropos-scale:hover .portfolio-box .portfolio-hover .portfolio-icon {
	margin-top: -10px;
}
.portfolio-attractive .portfolio-box .portfolio-caption .title {
	overflow: hidden;
	font-size: 19px;
	color: #fff;
	opacity: 0;
	display: block;
	will-change: transform;
	transform: translateY(-50%);
	transition: all 0.5s cubic-bezier(0.37, 0.31, 0.2, 0.85);
}
.portfolio-attractive .atropos-scale:hover .portfolio-box .portfolio-caption .title {
	opacity: 1;
	transform: translateY(0);
}
.portfolio-attractive .portfolio-box .portfolio-caption .subtitle {
	opacity: 0;
	display: block;
	will-change: transform;
	color: rgba(255, 255, 255, 0.6);
	line-height: 22px;
	font-size: 15px;
	transform: translateY(50%);
	transition: all 0.5s cubic-bezier(0.37, 0.31, 0.2, 0.85);
}
.portfolio-attractive .atropos-scale:hover .portfolio-box .portfolio-caption .subtitle {
	transform: translateY(0);
	opacity: 1;
}

/* Portfolio Clean */
.portfolio-clean .portfolio-box {
	position: relative;
}
.portfolio-clean .portfolio-box .portfolio-image {
	clip-path: inset(0 0 0 0);
	transition: all .6s cubic-bezier(.37,0,.63,1);
}
.portfolio-clean .portfolio-box .portfolio-hover {
	padding: 5px 35px 5px;
	transform: translateY(35px);
	align-items: flex-end;
	justify-content: flex-end;
	flex-direction: column;
	display: flex;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-clean .portfolio-box .portfolio-hover .portfolio-caption {
	width: 100%;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	display: flex;
}
.portfolio-clean .portfolio-box .portfolio-hover .title {
	flex: 1;
	font-size: 17px;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-clean .portfolio-box .portfolio-caption-text {
	margin-right: auto;
	text-align: left;
	flex: 1;
}
.portfolio-clean .portfolio-box .portfolio-caption-text .title {
	font-size: 17px;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
	display: block;
	line-height: normal;
}
.portfolio-clean .portfolio-box .portfolio-caption-text .subtitle {
	font-size: 15px;
	color: #828282;
	display: block;
	line-height: normal;
}
.portfolio-clean .portfolio-box .portfolio-caption i {
	margin-left: auto;
	font-size: 42px;
	color: var( --e-global-color-secondary, #232323 );
	vertical-align: middle;
}
.portfolio-clean .portfolio-box:hover .portfolio-image {
	clip-path: inset(0 0 70px 0);
}
.portfolio-clean .portfolio-box:hover .portfolio-image img {
	transform: translateY(-40px);
}
.portfolio-clean .portfolio-box:hover .portfolio-hover {
	transform: translateY(0);
	transition: all 600ms cubic-bezier(0.37, 0, 0.63, 1);
}

/* Portfolio Simple */
.portfolio-simple .portfolio-box .portfolio-image {
	border-radius: 4px;
	background-color: #828282;
}
.portfolio-simple .portfolio-box:hover .portfolio-image img {
	opacity: 0.5;
	transform: scale(1.1);
}
.portfolio-simple .portfolio-box.disable-overlay .portfolio-image img {
	opacity: 1;
}
.portfolio-simple .portfolio-box .portfolio-hover {
	padding: 35px 20px;
	justify-content: center;
	flex-direction: column;
	display: flex;
}
.portfolio-simple .portfolio-box .portfolio-hover .portfolio-icon a {
	transform: translateY(15px);
	opacity: 0;
	transition-delay: 0.1s;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}
.portfolio-simple .portfolio-box .portfolio-hover .portfolio-icon a:last-child {
	transition-delay: 0.2s;
}
.portfolio-simple .portfolio-box:hover .portfolio-hover .portfolio-icon a {
	transform: translateY(0);
	opacity: 1;
}
.portfolio-simple .portfolio-box .portfolio-caption {
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
	background-color: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
}
.portfolio-simple .portfolio-box .portfolio-caption a {
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-simple .portfolio-box .portfolio-caption .separator-line {
	margin: 0 10px;
	height: 1px;
	width: 10px;
	background-color: #a8a8a8;
	display: inline-block;
	vertical-align: middle;
}
.portfolio-simple .portfolio-box .portfolio-hover .portfolio-icon i {
	font-weight: 600;
}

/* Portfolio Modern */
.portfolio-modern .portfolio-box {
	position: relative;
	will-change: transform;
	border-radius: 4px;
}
.portfolio-modern .portfolio-box:hover {
	opacity: 1;
	filter: blur(0);
}
.portfolio-modern .portfolio-box:hover .portfolio-image img {
	transform: scale(1.1);
}
.portfolio-modern .portfolio-box:hover .portfolio-hover {
	transform: translateY(0) scale(1, 1);
	opacity: 1;
}
.portfolio-modern .portfolio-box .portfolio-hover {
	opacity: 0;
	left: 20px;
	bottom: 20px;
	width: calc(100% - 40px);
	height: auto;
	top: inherit;
	transform: translateY(0) scale(1, 0);
	transform-origin: bottom center;
} 
.portfolio-modern .portfolio-box:hover .portfolio-caption {
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}
.portfolio-modern .portfolio-box .portfolio-caption {
	padding: 20px 30px;
	border-radius: 4px;
	width: 100%;
	background-color: #fff;
	align-items: center;
	display: flex;
}
.portfolio-modern .portfolio-box .portfolio-caption .portfolio-caption-text {
	margin-right: auto;
}
.portfolio-modern .portfolio-box .portfolio-hover .subtitle {
	line-height: initial;
	font-size: 13px;
	color: #828282;
	margin-bottom: 2px;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-modern .portfolio-box .portfolio-hover .title {
	line-height: initial;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-modern .portfolio-box .portfolio-hover .portfolio-caption-text .subtitle,
.portfolio-modern .portfolio-box .portfolio-hover .title {
	opacity: 0;
	transition-delay: 0.25s;
	transform: translateY(15px);
	text-align: left;
	display: block;
}
.portfolio-modern .portfolio-box:hover .portfolio-hover .title {
	transition-delay: 0.35s;
}
.portfolio-modern .portfolio-box:hover .portfolio-hover .subtitle,
.portfolio-modern .portfolio-box:hover .portfolio-hover .title {
	opacity: 1;
	transform: translateY(0);
}
.portfolio-modern .portfolio-box .portfolio-caption .portfolio-icon {
	margin-left: auto;
}
.portfolio-modern .portfolio-box .portfolio-caption .portfolio-icon i {
	font-size: 24px;
	line-height: 2.25rem;
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-modern .portfolio-box .portfolio-hover>*>*+* {
	opacity: 0;
	transform: translateY(15px);
	transition-delay: 0.45s;
}
.portfolio-modern .portfolio-box:hover .portfolio-hover>*>*+* {
	opacity: 1;
	transform: translateY(0);
}

/* Portfolio slider */
/* Portfolio Slider Style 01 */
.portfolio-slider-style-1 .portfolio-item * {
	will-change: transform;
}
.portfolio-slider-style-1 .box-image {
	overflow: hidden;
	filter: grayscale(100%);
	opacity: .3;
	transition: .4s;
}
.portfolio-slider-style-1 .box-image img {
	width: 100%;
	transition: all .5s cubic-bezier(.5, 1, .89, 1);
}
.portfolio-slider-style-1 .box-image .box-link:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
}
.portfolio-slider-style-1 .icon-box {
	position: absolute;
	left: 50%;
	top: 50%;
	opacity: 0;
	z-index: 1;
	height: 90px;
	width: 90px;
	background-color: #FF2883;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .5s cubic-bezier(.5,1,.89,1);
}
.portfolio-slider-style-1 .swiper-slide.swiper-slide-next .icon-box,
.portfolio-slider-style-1.swiper-fade .swiper-slide .icon-box {
	opacity: 1;
}
.portfolio-slider-style-1 .icon-box i {
	font-size: 28px;
	color: #fff;
	transition: all .5s cubic-bezier(.5, 1, .89, 1);
}
.portfolio-slider-style-1 .portfolio-caption {
	padding-top: 5%;
	text-align: center;
	filter: grayscale(100%);
	opacity: .3;
	transition: .4s;
}
.portfolio-slider-style-1 .title {
	font-size: 19px;
	color: var( --e-global-color-secondary, #232323 );
	font-weight: 600;
	display: inline-block;
	transition: all .5s cubic-bezier(.5, 1, .89, 1);
}
.portfolio-slider-style-1 .subtitle {
	display: block;
	transition: all .5s cubic-bezier(.5, 1, .89, 1);
}
.portfolio-slider-style-1 .swiper-slide.swiper-slide-next .portfolio-caption,
.portfolio-slider-style-1 .swiper-slide.swiper-slide-next .box-image,
.portfolio-slider-style-1.swiper-fade .swiper-slide .portfolio-caption,
.portfolio-slider-style-1.swiper-fade .swiper-slide .box-image {
	filter: grayscale(0);
	opacity: 1;
	transition: all .5s cubic-bezier(.5, 1, .89, 1);
}

/* Portfolio Slider Style 02 */
.portfolio-slider-style-2 {
	height: 100%;
}
.portfolio-slider-style-2 .portfolio-item {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	overflow: hidden;
}
.portfolio-slider-style-2 .portfolio-item .box-link {
	display: flex;
	align-items: flex-end;
	height: 100%;
	position: relative;
	z-index: 1;
}
.portfolio-slider-style-2 .portfolio-item .portfolio-caption {
	transform: rotate(180deg);
	writing-mode: vertical-lr;
	padding: 60px 50px;
	height: 100%;
}
.portfolio-slider-style-2 .portfolio-caption .title {
	font-size: 1.75rem;
	line-height: 1.95rem;
	letter-spacing: -0.5px;
	color: #fff;
}
.portfolio-slider-style-2 .portfolio-caption .subtitle {
	font-size: 15px;
	color: #fff;
	display: block;
}
.portfolio-slider-style-2 .bg-overlay {
	background: -webkit-gradient(linear, left bottom, left top, color-stop(7%, #141622), to(transparent));
	background: linear-gradient(to top, #141622 7%, transparent 100%);
}

/* Portfolio Slider Style 03 */
.portfolio-slider-style-3 .hover-box-slide-text {
	overflow: hidden;
	background-color: var( --e-global-color-secondary, #232323 );
	transform: translateY(0);
	transition: all 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}
.portfolio-slider-style-3 .hover-box-slide-text:hover {
	transform: translateY(-5px);
}
.portfolio-slider-style-3 .portfolio-image {
	position: relative;
	overflow: hidden;
}
.portfolio-slider-style-3 .portfolio-image img {
	transition: all 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .portfolio-image img {
	opacity: 0.6;
	transform: scale(1.1);
}
.portfolio-slider-style-3 .portfolio-hover {
	padding: 25px;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	opacity: 1;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-slider-style-3 .portfolio-caption {
	background-color: #fff;
	z-index: 1;
	padding: 15px 30px;
	align-items: flex-start;
	position: relative;
	display: flex;
	align-items: center;
	overflow: hidden;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .portfolio-caption {
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-slider-style-3 .title {
	z-index: 1;
	margin-right: auto;
	position: relative;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
	transition: all 0ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-slider-style-3 .title span {
	margin-right: auto;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .title {
	color: #fff;
}
.portfolio-slider-style-3 .subtitle {
	position: relative;
	z-index: 1;
	margin-left: auto;
	overflow: hidden;
	flex-shrink: 0;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-slider-style-3 .subtitle span {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
	font-size: 14px;
	font-weight: 500;
	color: #828282;
	display: inline-block;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .subtitle span {
	transform: translateY(-20px);
	opacity: 0;
	visibility: hidden;
}
.portfolio-slider-style-3 .portfolio-icon i{
	transition: 0s;
}
.portfolio-slider-style-3 .disable-overlay.hover-box-slide-text {
	background-color: transparent;
}
.portfolio-slider-style-3 .disable-overlay.hover-box-slide-text:hover .portfolio-image img {
	opacity: 1;
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .portfolio-icon {
	color: #fff;
}
.portfolio-slider-style-3 .subtitle .portfolio-icon {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 24px;
	color: var( --e-global-color-secondary, #232323 );
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	transition: all .4s cubic-bezier(.37,0,.63,1);
}
.portfolio-slider-style-3 .subtitle span + .portfolio-icon {
	position: absolute;
	right: 0;
	will-change: transform;
	transform: translateY(0);
	opacity: 0;
	font-size: 24px;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
	margin: 0;
	line-height: 0;
}
.portfolio-slider-style-3 .subtitle span + .portfolio-icon svg {
	width: 18px;
}
.portfolio-slider-style-3 .subtitle span + .portfolio-icon i {
	transition: none;
}
.portfolio-slider-style-3 .hover-box-slide-text:hover .subtitle span + .portfolio-icon {
	color: #fff; 
	transform: translateY(-28px);
	opacity: 1;
}

/* Portfolio Justified Gallery */
.portfolio-justified-gallery.justified-gallery {
	width: inherit;
}
.portfolio-justified-gallery .portfolio-box {
	overflow: hidden;
	position: relative;
}
.portfolio-justified-gallery .portfolio-box .portfolio-image img {
	transition: all 0.4s linear;
}
.portfolio-justified-gallery .portfolio-box:hover .portfolio-image img {
	opacity: .2;
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}
.portfolio-justified-gallery .portfolio-box.disable-overlay .portfolio-image img {
	opacity: 1;
}
.portfolio-justified-gallery .portfolio-box {
	will-change: transform;
}
.portfolio-justified-gallery .portfolio-image {
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-justified-gallery .portfolio-hover {
	padding: 45px 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
}
.portfolio-justified-gallery .portfolio-hover .title {
	transform: scale(1.5);
	display: block;
	width: 100%;
	font-size: 18px;
	color: #fff;
	margin-top: auto;
	transition: all 0.4s linear;
}
.portfolio-justified-gallery .portfolio-box:hover .title {
	transform: scale(1);
}
.portfolio-justified-gallery .portfolio-box .portfolio-hover i {
	left: 50%;
	top: 50%;
	position: absolute;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	line-height: 1;
	font-size: 28px;
	padding: 5px 15px;
	color: #fff;
}

/* Portfolio Parallax */
.portfolio-parallax {
	flex-direction: column;
}
.portfolio-parallax .grid-item {
	height: 100vh;
	transition: none;
}
.portfolio-parallax .grid-item .portfolio-caption {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	z-index: 1;
	height: 100%;
	padding: 30px;
}
.portfolio-parallax .grid-item .subtitle {
	color: #fff;
	font-size: 14px;
	letter-spacing: 1px;
	text-shadow: 0 0 100px rgba(0,0,0,.9);
	margin-bottom: 15px;
}
.portfolio-parallax .grid-item .title {
	color: #fff;
	font-size: 9.375rem;
	line-height: 9.375rem;
	letter-spacing: -7px;
	text-shadow: 0 0 100px rgba(0,0,0,.9);
	margin-bottom: 20px;
	text-align: center;
}
.portfolio-parallax .portfolio-overlay {
	opacity: .2;
	background-color: #000000;
	visibility: visible;
	z-index: 0;
}
.portfolio-parallax .portfolio-overlay.disable-overlay {
	display: none;
}
.portfolio-parallax .elementor-button.btn-border {
	border-color: #fff;
	border-radius: 50px;
	font-weight: 600;
}
.portfolio-parallax .elementor-button.btn-border .elementor-button-content-wrapper,
.portfolio-parallax .elementor-button.btn-border .elementor-button-content-wrapper i {
	color: #fff;
}
.portfolio-parallax .elementor-button.btn-border:hover {
	background-color: #fff;
}
.portfolio-parallax .elementor-button.btn-border:hover .elementor-button-content-wrapper,
.portfolio-parallax .elementor-button.btn-border:hover .elementor-button-content-wrapper i {
	color: var( --e-global-color-secondary, #232323 );
}

/* Portfolio Contemporary */
.portfolio-contemporary.portfolio-wrap .portfolio-box {
	position: relative;
}
.portfolio-contemporary.portfolio-wrap .portfolio-hover {
	padding: 25px; 
	opacity: 1;
	display: flex; 
	justify-content: flex-end;
	flex-direction: column;
}
.portfolio-contemporary .portfolio-caption {
	background-color: #fff;
	z-index: 1;
	padding: 15px 30px;
	align-items: flex-start;
	position: relative;
	display: flex;
	align-items: center;
	overflow: hidden;
	border-radius: 5px;
	width: 100%;
}
.portfolio-contemporary .portfolio-box { 
	overflow: hidden;
	background-color: var( --e-global-color-secondary, #232323 );
	transform: translateY(0);
	transition: all 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}
.portfolio-contemporary .portfolio-box:hover {
	transform: translateY(-5px);
}
.portfolio-contemporary .portfolio-image {
	position: relative;
	overflow: hidden;
}
.portfolio-contemporary .portfolio-image img {
	transition: all 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}
.portfolio-contemporary .portfolio-box:hover .portfolio-image img {
	opacity: 0.6;
	transform: scale(1.1);
}
.portfolio-contemporary .disable-overlay.portfolio-box {
	background-color: transparent;
}
.portfolio-contemporary .disable-overlay.portfolio-box:hover .portfolio-image img {
	opacity: 1;
}
.portfolio-contemporary .portfolio-box:hover .portfolio-caption {
	background-color: var( --e-global-color-secondary, #232323 );
}
.portfolio-contemporary .portfolio-box:hover .portfolio-caption-text .title {
	color: #fff;
}
.portfolio-contemporary .portfolio-caption-text {
	margin-right: auto;
}
.portfolio-contemporary .portfolio-caption-text .title {
	z-index: 1;
	margin-right: auto;
	position: relative;
	font-weight: 500;
	color: var( --e-global-color-secondary, #232323 );
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
	display: inline-block;
}
.portfolio-contemporary .portfolio-icon-wrap .subtitle {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
	font-size: 14px;
	font-weight: 500;
	display: inline-block;
	color: #828282;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}
.portfolio-contemporary .portfolio-box:hover .portfolio-icon-wrap .subtitle { 
	transform: translateY(-20px);
	opacity: 0;
	visibility: hidden;
}
.portfolio-contemporary .portfolio-icon-wrap {
	position: relative;
	z-index: 1;
	margin-left: auto;
	overflow: hidden;
	flex-shrink: 0;
}
.portfolio-contemporary .portfolio-icon-wrap .portfolio-icon {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 24px;
	color: var( --e-global-color-secondary, #232323 );
}
.portfolio-contemporary .portfolio-icon-wrap .portfolio-icon i {
	transition: 0s;
}
.portfolio-contemporary .portfolio-box:hover .portfolio-icon-wrap .portfolio-icon {
	color: #fff;
}
.portfolio-contemporary .portfolio-icon-wrap .subtitle + .portfolio-icon {
	position: absolute;
	right: 0;
	will-change: transform;
	transform: translateY(0);
	opacity: 0;
	font-size: 24px;
	transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
	margin: 0;
	line-height: 0;
}
.portfolio-contemporary .portfolio-icon-wrap .subtitle + .portfolio-icon svg {
	width: 18px;
}
.portfolio-contemporary .portfolio-icon-wrap .subtitle + .portfolio-icon i {
	transition: none;
}
.portfolio-contemporary .portfolio-box:hover .portfolio-icon-wrap .subtitle + .portfolio-icon {
	color: #fff; 
	transform: translateY(-28px);
	opacity: 1;
}

/* Pagination */
.portfolio-grid ~ .crafto-pagination {
	clear: both;
	margin-top: 3rem;
}

/* Responsive CSS Here */
@media (max-width: 1199px) {
	.portfolio-boxed .portfolio-caption-text {
		padding: 20px;
	}
}

@media (max-width: 1024px) {
	.full-screen-slide.swiper.portfolio-slider-style-2 {
		height: 100vh !important;
	}
}

@media (max-width: 767px) {
	.portfolio-clean .portfolio-box .portfolio-hover {
		padding: 5px 15px;
	}
	.portfolio-simple .portfolio-box .portfolio-caption {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.portfolio-modern .portfolio-box .portfolio-caption {
		padding: 20px;
	}
	.portfolio-slider-style-1 .icon-box {
		opacity: 1;
	}
	.portfolio-slider-style-1 .swiper-slide,
	.portfolio-slider-style-1 .box-image {
		filter: grayscale(0);
		opacity: 1;
	}
	.portfolio-grid ~ .crafto-pagination {
		margin-top: 30px;
	} 	
	.portfolio-contemporary.portfolio-wrap .portfolio-hover {
		padding: 20px; 
	}
	.elementor-widget-crafto-portfolio .filter-wrap,
	.elementor-widget-crafto-archive-portfolio .filter-wrap {
		flex-direction: column;
		margin-bottom: 35px;
	}
	.filter-wrap .crafto-button-wrapper {
		margin: 15px 0 0 0;
	}
	.filter-wrap .portfolio-heading {
		margin: 0;
	}
}