/* shop builder */
.shop-loop-before.elementor-section { display: block }
.shop-loop-before > .elementor-container { margin-left: auto; margin-right: auto }
.shop-loop-before .elementor-widget-wrap { align-items: center }
.shop-loop-before .elementor-widget-wrap > .elementor-widget {
	width: auto;
	margin-#{$right}: 10px;
	margin-bottom: 0;
	max-width: 100%
}

.elementor-section {
	display: flex;
	justify-content: center
}
.elementor-section .elementor-container {
	width: 100%;
	margin-left: 0;
	margin-right: 0
}
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: var(--porto-container-width);
	--porto-flick-carousel-width: var(--porto-container-width);
}
.container-fluid .elementor-top-section {
	margin-left: calc( var(--porto-fluid-spacing) * -1 );
	margin-right: calc( var(--porto-fluid-spacing) * -1 );
	padding-left: var(--porto-fluid-spacing);
	padding-right: var(--porto-fluid-spacing)
}
.container-fluid .elementor-top-section.elementor-section-full_width > .elementor-column-gap-no {
	margin-left: calc( var(--porto-fluid-spacing) * -1 );
	margin-right: calc( var(--porto-fluid-spacing) * -1 );
	width: calc(100% + 2 * var(--porto-fluid-spacing))
}
@media ( max-width: 991px ) {
	.container-fluid .porto-full-no-gap .elementor-section-boxed {
		padding-left: var(--porto-fluid-spacing);
		padding-right: var(--porto-fluid-spacing);
	}
}
.elementor .pricing-table {
	padding-left: 0; padding-right: 0
}

.elementor-container > .porto-carousel {
	width: 100%
}
.elementor-container > .porto-carousel.has-ccols-spacing {
	width: calc( 100% + var(--porto-el-spacing, var(--porto-grid-gutter-width)) );
}
// .porto-carousel .elementor-section.elementor-section-boxed > .elementor-container {
// 	margin: 0; max-width: 100%
// }

.elementor-section > .elementor-column-gap-default {
	margin-left: calc( var(--porto-column-spacing) * -1 );
	margin-right: calc( var(--porto-column-spacing) * -1 );
	width: calc( 100% + var(--porto-grid-gutter-width) );
}
.elementor-section > .elementor-column-gap-narrow {
	margin-left: -5px;
	margin-right: -5px;
	width: calc(100% + 10px)
}
.elementor-section > .elementor-column-gap-extended {
	margin-left: -15px;
	margin-right: -15px;
	width: calc(100% + 30px)
}
.elementor-section > .elementor-column-gap-wide {
	margin-left: -20px;
	margin-right: -20px;
	width: calc(100% + 40px)
}
.elementor-section > .elementor-column-gap-wider {
	margin-left: -30px;
	margin-right: -30px;
	width: calc(100% + 60px)
}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated > .elementor-widget-wrap,
.elementor-column-gap-default > .elementor-column > .elementor-element-populated,
.elementor-column-gap-default > .elementor-row > .porto-ibanner,
.porto-gap-default {
	padding: var(--porto-column-spacing)
}
.elementor-column-gap-narrow > .elementor-row > .porto-ibanner,
.porto-gap-narrow {
	padding: 5px
}
.elementor-column-gap-extended > .elementor-row > .porto-ibanner,
.porto-gap-extended {
	padding: 15px
}
.elementor-column-gap-wide > .elementor-row > .porto-ibanner,
.porto-gap-wide {
	padding: 20px
}
.elementor-column-gap-wider > .elementor-row > .porto-ibanner,
.porto-gap-wider {
	padding: 30px
}
.elementor-section.elementor-section-boxed > .elementor-column-gap-no {
	max-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) );
	--porto-flick-carousel-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) );
	--porto-flick-carousel-space: 0px;
}
.elementor-section.elementor-section-boxed > .elementor-column-gap-narrow {
	max-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 10px );
	--porto-flick-carousel-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 10px );
	--porto-flick-carousel-space: 5px;
}
.elementor-section.elementor-section-boxed > .elementor-column-gap-extended {
	max-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 30px );
	--porto-flick-carousel-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 30px );
	--porto-flick-carousel-space: 15px;
}
.elementor-section.elementor-section-boxed > .elementor-column-gap-wide {
	max-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 40px );
	--porto-flick-carousel-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 40px );
	--porto-flick-carousel-space: 20px;
}
.elementor-section.elementor-section-boxed > .elementor-column-gap-wider {
	max-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 60px );
	--porto-flick-carousel-width: calc( var(--porto-container-width) - var(--porto-grid-gutter-width) + 60px );
	--porto-flick-carousel-space: 30px;
}
@media ( min-width: 992px ) {
	.elementor-section-boxed [class*='elementor-column-gap-']>.elementor-row>.elementor-column>.elementor-element-populated>.elementor-widget-wrap.flick-carousel,
	.elementor-section-boxed [class*='elementor-column-gap-']>.elementor-column>.elementor-element-populated.flick-carousel {
		width: 100% !important;
	}
}

.elementor-section {
	> .elementor-column-gap-no {
		--porto-el-section-space: 0px;
	}
	> .elementor-column-gap-narrow {
		--porto-el-section-space: 5px;
	}
	> .elementor-column-gap-extended {
		--porto-el-section-space: 15px;
	}
	> .elementor-column-gap-wide {
		--porto-el-section-space: 20px;
	} 
	> .elementor-column-gap-wider {
		--porto-el-section-space: 30px;
	}
} 
.porto-carousel.elementor-row,
.elementor-section > .porto-ibanner,
.porto-carousel,
.elementor-widget-wrap .porto-sicon-box,
.elementor-widget-wrap .porto-u-heading,
.porto-u-heading p:last-child,
.elementor-widget-wrap .circular-bar,
.elementor-widget .porto-sicon-box,
.elementor-widget .porto-u-heading,
.elementor-widget .circular-bar {
	margin-bottom: 0
}
.elementor-widget-text-editor p {
	font-family: inherit !important;
    font-weight: inherit !important;
    font-size: inherit !important;
    color: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit;
}
.elementor-column-wrap > .porto-carousel,
.elementor-column > .porto-carousel,
.elementor-editor-active .elementor-widget-wrap > .owl-stage-outer {
	width: 100%
}

.elementor-column-wrap > .porto-carousel.has-ccols-spacing,
.elementor-column > .porto-carousel.has-ccols-spacing {
	width: calc( 100% + var(--porto-el-spacing, var(--porto-grid-gutter-width)) );
}

.porto-ibanner > .elementor-row {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%
}
.porto-ibanner-layer {
	width: auto
}
.elementor-editor-active .elementor-element-empty > .porto-ibanner-layer {
	width: calc(100% - 20px)
}
.porto-ibanner > .elementor-row > .elementor-column,
.porto-ibanner > .elementor-column,
.porto-ibanner.elementor-column > .container {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%
}
.porto-ibanner.elementor-column > .container > .elementor-column-wrap,
.porto-ibanner.elementor-column > .elementor-column-wrap,
.porto-ibanner .container > .elementor-column-wrap {
	position: static
}
.container > .porto-ibanner-layer,
.container > .elementor-column-wrap > .porto-ibanner-layer {
	margin-left: var(--porto-res-spacing);
	margin-right: var(--porto-res-spacing)
}
.porto-ibanner .porto-ibanner-layer.elementor-widget-wrap {
	display: block
}
@media (max-width: 991px) {
	.elementor-section.elementor-section-stretched > .elementor-container {
		padding-left: var(--porto-res-spacing);
		padding-right: var(--porto-res-spacing)
	}
}

.elementor-row[data-plugin-masonry], .elementor-container[data-plugin-masonry],
.elementor-widget-wrap.owl-carousel.owl-loaded {
	display: block
}
.elementor-row[data-plugin-masonry] > .elementor-column,
.elementor-container[data-plugin-masonry] > .elementor-column {
	float: $left
}

.elementor-widget-container > .btn,
.elementor-widget > .btn { position: relative }
.elementor-widget-container > .btn .dir-arrow,
.elementor-widget > .btn .dir-arrow {
	position: absolute; top: -35px;
	#{$left}: 85%
}

.fullscreen-carousel .elementor-section,
.fullscreen-carousel .elementor-section > * {
	height: 100%
}

.elementor-element[data-plugin-parallax], .elementor-element > [data-plugin-parallax] {
	background-attachment: scroll !important
}

/* header builder */
.elementor-section.header-main,
.e-con-full.header-main {
	flex-wrap: wrap
}
.header-builder-p .elementor-widget-wrap > .elementor-widget {
	width: auto;
	margin-#{$right}: .875rem;
	margin-bottom: 0;
	max-width: 100%
}
.header-builder-p .elementor-widget:last-child {
	margin-#{$right}: 0
}

.elementor-column>.elementor-element-empty {
	min-width: 100px
}
.elementor-column.elementor-col-flex-1,
.elementor-column[data-col="flex-1"],
.elementor-column.elementor-col-flex-auto,
.elementor-column[data-col="flex-auto"] {
	width: auto;
	align-content: center;
	align-items: center
}
.elementor-column.elementor-col-flex-1,
.elementor-column[data-col="flex-1"] {
	flex: 1
}
.elementor-column.elementor-col-flex-1:last-child .elementor-widget-wrap,
.elementor-column[data-col="flex-1"]:last-child .elementor-widget-wrap {
	justify-content: flex-end
}
.elementor-column.elementor-col-flex-1:nth-child(2):not(:last-child) .elementor-widget-wrap,
.elementor-column[data-col="flex-1"]:nth-child(2):not(:last-child) .elementor-widget-wrap {
	justify-content: center
}
/* other */
.elementor .sort-source {
	margin-bottom: 1.5rem
}

// Elementor hidden classes
@media(max-width: 767px) {
	.elementor .elementor-hidden-phone {
	  display: none;
	}
}

/* Flexbox Container */
.container-fluid .e-parent {
	margin-left: calc(var(--porto-fluid-spacing) * -1);
    margin-right: calc(var(--porto-fluid-spacing) * -1);
	max-width: calc( 100% + 2 * var(--porto-fluid-spacing) );
    width: calc( 100% + 2 * var(--porto-fluid-spacing) );
}
.container-fluid .e-parent.e-con {
	--padding-inline-start: calc(var(--porto-fluid-spacing) * 1);
    --padding-inline-end: calc(var(--porto-fluid-spacing) * 1);
}
.container-fluid .e-parent.e-con-full {
	--padding-inline-start: 0;
	--padding-inline-end: 0;
}
.container-fluid .e-parent.e-con-full .e-con-boxed {
	--padding-inline-start: calc(var(--porto-fluid-spacing) * 1);
    --padding-inline-end: calc(var(--porto-fluid-spacing) * 1);
}
.e-con {
	--content-width: calc( var(--container-max-width, 1140px) - var(--porto-grid-gutter-width) );
}

// Section, Container stretch with css
.elementor-section,
.e-con {
	&.porto_stretch_css {
		position: relative;
		#{$left}: calc( 50% - 50vw + var(--porto-scroll-w,0px) / 2 + var(--porto-side-header-width, 0px) / 2 );
		min-width: calc( 100vw - var(--porto-scroll-w, 0px) - var(--porto-side-header-width, 0px) );
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
.elementor-section {
	&.stretch_row_css {
		padding-left: calc( ( 100vw - 100% - var(--porto-scroll-w,0px) - var(--porto-side-header-width, 0px) ) / 2 ) !important;
		padding-right: calc( ( 100vw - 100% - var(--porto-scroll-w,0px) - var(--porto-side-header-width, 0px) ) / 2 ) !important;
	}
	&.stretch_row_content_css.elementor-section-boxed {
		padding-left: var(--porto-fluid-spacing, 0px);
		padding-right: var(--porto-fluid-spacing, 0px);
		> .elementor-container {
			max-width: none;
		}
	}
}
.e-con.e-con-boxed {
	&.porto_stretch_css {
		--padding-inline-start: var(--porto-fluid-spacing, 0px);
		--padding-inline-end: var(--porto-fluid-spacing, 0px);
	}
	&.stretch_row_content_css {
		--content-width: none;
	}
}

// Reveal Effect

.elementor-edit-area [class*="revealDir"].animated {
	animation-fill-mode: both !important;
}

// For Menu Block

#header .elementor-widget-heading .elementor-heading-title[class*=elementor-size-] > a {
	font: inherit;
}