/* ----------------------------------------------------------------------------
	Elementor Style for Freyja Theme
---------------------------------------------------------------------------- */

/*
| ====================================================================
| ====================================================================
| = Parallax extension
| ====================================================================
| ====================================================================
*/

.paroller-background > .elementor-container {
	height: 85vh !important;
  }
  .elementor-element.paroller-background {
	  background-attachment: scroll;
  }

  
/*
| ====================================================================
| ====================================================================
| = Shortcode: Button
| ====================================================================
| ====================================================================
*/

.vc_sparrow__read-more {
	display: inline-block;
	text-align: center;
	font-weight: 400;
	font-style: normal;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 1.5px;
    padding: 6px 20px;
    line-height: 23px;
}
a.vc_sparrow__read-more {
    color: #dadada; /* default */
    background-color: #333333;  /* default */
    border-color: #dadada; /* default */
    border-width: 1px;
    border-style: solid;
}	
a.vc_sparrow__read-more:hover {
	color: #333; /* default */
	background-color:  #ffffff; /* default */
	border-color: #ef9781; /* default */
    border-width: 1px;
    border-style: solid;
}	    


/*
| ====================================================================
| ====================================================================
| = Shortcode: Section Title
| ====================================================================
| ====================================================================
*/


.vc_sparrow__cont_section_title {
	padding-top: 40px;
	padding-bottom: 40px;
}
.vc_sparrow__cont_section_title h2 {
	font-size: 60px;
    font-weight: normal;
    line-height: 65px;
    margin: 0;
}
.vc_sparrow__cont_section_title h3 {
	font-size: 13px;
    line-height: 14px;
    letter-spacing: 1px;
    margin-bottom: 20px;
    font-weight: normal; 
    text-transform: uppercase;  
}
.float_dot {
	text-align: center;
    font-size: 20px;
    line-height: 0px;
    margin-bottom: 25px;
}

img.decoration_image {
	margin: 0 auto;
	text-align: center;
	margin-bottom: 25px;
}

@media (max-width: 680px) {
	.vc_sparrow__cont_section_title {
		padding-top: 5px;
		padding-bottom: 5px;
	}
	.vc_sparrow__cont_section_title h2 {
		font-size: 38px;
	    line-height: 43px;
	}
	.vc_sparrow__cont_section_title h3 {
	    font-size: 15px;
	    line-height: 20px;
	}
}

.sas-line {
    position: relative;
    display: inline-block;
    padding-left: 66px;
    padding-right: 66px;
    margin-bottom: 20px !important;
}
.sas-line:before {
    left: 0;
}
.sas-line:after {
    right: 0;
}
.sas-line:before,
.sas-line:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 45px;
    top: 50%;
    height: 0;
    border-top-color: #000;
    border-top-style: solid;
    border-top-width: 1px;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-webkit-transform: translateZ(0);
}



/* Block Basic Style
   ========================================================== */
.sas_ani {
	 transition: all 3s cubic-bezier(0.26, 1.48, 0.47, 0.96) !important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}
.sas-textalignleft img.decoration_image {
	margin: 0 0 25px 0; 
	text-align: left;
}
.sas-textalignright img.decoration_image {
	margin: 0 0 25px 0; 
	display: inline;
	text-align: right;
}
.sas-textaligncenter img.decoration_image {
	margin: 0 auto 25px; 
	text-align: center;
}

/*
| ====================================================================
| ====================================================================
| =  Block 1
| ====================================================================
| ====================================================================
*/

.vc_sparrow_mod1__total_wrap {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 2.96875rem 0;
    align-items: center;
}
.vc_sparrow_mod1__total_wrap:before {
    content: " ";
    height: 100%;
    width: calc(50% + 5.9375rem);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 0;
    background-color: transparent;
}
.vc_sparrow_mod1__image-wrap {
    width: calc(50% + 5.1875rem);
    min-height: 21.875rem;
    z-index: 1;
}
.vc_sparrow_mod1__image-wrap {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.vc_sparrow_mod1__cont-wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 50%;
    z-index: 1;
    margin: 0 5.1875rem;
}
.vc_sparrow_mod1__cont-wrap p {
	margin-bottom: 20px;
}

@media (max-width: 900px) {
	
	.vc_sparrow_mod1__total_wrap {
	    display: block;
	}
	.vc_sparrow_mod1__total_wrap:before {
		display: none;
	}
	.vc_sparrow_mod1__image-wrap {
	    width: 100%;
	    margin-bottom: 30px;
	}
	.vc_sparrow_mod1__cont-wrap {
	    width: 100%;
	    margin: 0;
	}
}

/*
| ====================================================================
| ====================================================================
| =  Block 2
| ====================================================================
| ====================================================================
*/

.vc_sparrow_mod2__total_wrap {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 2.96875rem 0;
    align-items: center;
}
.vc_sparrow_mod2__total_wrap:before {
   content: " ";
    height: 100%;
    width: calc(7.9375rem + 50%);
    position: absolute;
    left: 0;
    z-index: 2;
    max-height: 480px;
    background-color: #efefef;
}
.vc_sparrow_mod2__image-wrap {
    width: calc(50% + 5.1875rem);
    min-height: 48rem;
    z-index: 1;
        
}
.vc_sparrow_mod2__image-wrap {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.vc_sparrow_mod2__cont-wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 50%;
    z-index: 3;
    margin: 0 5rem 0 8rem;
}
.vc_sparrow_mod2__cont-wrap p {
	margin: 35px 0 30px 0;
}
.vc_sparrow_mod2__cont-wrap a.read-more {
	margin-bottom: 40px;
}
@media (max-width: 900px) {
	
	.vc_sparrow_mod2__total_wrap {
	    display: block;
	    padding: 2.96875rem;
	}
	.vc_sparrow_mod2__total_wrap:before {
		display: none;
	}
	.vc_sparrow_mod2__image-wrap {
	    width: 100%;
	    margin-bottom: 30px;
	    min-height: 26rem;
	}
	.vc_sparrow_mod2__cont-wrap {
	    width: 100%;
	    margin: 0;
	}
}
@media (max-width: 480px) {
	.vc_sparrow_mod2__total_wrap {
	    display: block;
	    padding: 1.25rem
	}  
}
/*
| ====================================================================
| ====================================================================
| =  Block 3
| ====================================================================
| ====================================================================
*/


.vc_sparrow_mod3__strec_wrap {
  width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    
}
.vc_sparrow_mod3__total_wrap {
      display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 2.96875rem 0;
    align-items: center;
    min-height: 720px;
    margin-bottom: 200px;
    
}
.vc_sparrow_mod3__image-wrap {
   width: 46%;
    min-height: 46rem;
    z-index: 1;
    position: absolute;
    right: 0;
    top: 80px;
}
.vc_sparrow_mod3__image-wrap {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.vc_sparrow_mod3__cont-wrap {
      -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 41%;
    z-index: 3;
    margin: 0 5.1875rem;
}
.vc_sparrow_mod3__cont-wrap p {
	margin-bottom: 20px;
}
.vc_sparrow_mod3__cont-wrap a.read-more {
	margin-bottom: 40px;
}

@media (max-width: 900px) {
	.vc_sparrow_mod3__total_wrap {
	    display: block;
	    min-height: 500px;
	    padding: 20px;
	    margin-bottom: 0px;
	}
	.vc_sparrow_mod3__image-wrap {
	    width: 100%;
	    margin-bottom: 30px;
	    position: relative;
		top: 0;
		min-height: 26rem;
	}
	.vc_sparrow_mod3__cont-wrap {
	    width: 100%;
	    margin: 0;
	}
}


/* CSS base - già esistente nel style.css */
button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}
ul.portfolio_grid {
	list-style: none;
	height: 100vh;
}
.portfolio_img img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}


/*
| ====================================================================
| ====================================================================
| =  Portfolio
| ====================================================================
| ====================================================================
*/


/* clear fix */
.isotope:after, .portfolio_grid {
  content: '';
  display: block;
  clear: both;
}
ul.portfolio_grid {
	margin: 0;
	padding: 0;
}
ul.portfolio_grid a {
	line-height: 0;
}
.anima__portfolio .portfolio_img {
	margin-bottom: 0;
}

/* === Filter Menu === */
#sas-filters {
	text-align: center;
	margin-bottom: 50px;
}
.p_filter_menu button {
	border: none;
	background: transparent;
	outline:none;
	padding: 10px 15px;
}
.p_filter_menu button.is-checked {
	color: red;
}
.p_filter_menu button.is-checked:focus{
	outline:none;
}

.filters-button-group button:first-child {
	padding-left: 0px;
}
.filters-button-group button:last-child {
	padding-right: 0px;
}

/* === Portfolio Animation === */
.anima__portfolio {
	overflow: hidden;
	-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
	transition: .4s cubic-bezier(.77, 0, .175, 1);
	-webkit-transform: translateZ(0);
}
.anima__portfolio .post-img img {
	width: 100% !important;
}
.mask_port {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	opacity: 0;
	-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
    transition: .4s cubic-bezier(.77, 0, .175, 1);
}
.title_portfolio__open {
	z-index: 999;
	text-align: center;
	color: #fff;
	line-height: 25px;
	padding: 10px;
	position: absolute;
	opacity: 0;
	-webkit-transform: translateY(100%);
	-ms-transform: translateY(100%);
	transform: translateY(100%);
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
    transition: .4s cubic-bezier(.77, 0, .175, 1);
}

.anima__portfolio:hover .title_portfolio__open {
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
	transition: .4s cubic-bezier(.77, 0, .175, 1);
}

.anima__portfolio:hover .mask_port {
	-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
	transition: .4s cubic-bezier(.77, 0, .175, 1);
	opacity: 0.2;
}


/* == Responsive Portfolio == */
.gutter-sizer { width: 3%; }

.portfolio_grid .cont_masonry_2,
.portfolio_grid .cont_masonry_3,
.portfolio_grid .cont_masonry_4 {
	padding-left: 0;
}

/* = All = */
.portfolio_grid .cont_masonry_2 {
	width: 50%;
}
.portfolio_grid .cont_masonry_3 {
	width: 33.33%;
}
.portfolio_grid .cont_masonry_4, .grid-sizer {
	width: 25%;
}
@media (min-width: 768px) {
	.portfolio_grid .cont_masonry_2,
	.portfolio_grid .cont_masonry_3,
	.portfolio_grid .cont_masonry_4, .grid-sizer {
		width: 50%;
	}
}

@media (min-width:992px) {
	.portfolio_grid .cont_masonry_2 {
		width: 50%;
	}
	.portfolio_grid .cont_masonry_3 {
		width: 33.33%;
	}
	.portfolio_grid .cont_masonry_4, .grid-sizer {
		width: 25%;
	}
}

.freyja-grid li{
	list-style-type: none;
	margin-bottom: 50px;
}

@media (max-width: 768px) { 
	.freyja-grid .blog-grid-item, .freyja-grid .woocommerce-grid-item {
		width: 48.5% ;
	}
	.freyja-grid .blog-gutter-sizer, .freyja-grid .woocommerce-gutter-sizer {
		width: 3% ;
	}
}

@media (max-width: 576px) {
	.freyja-grid .blog-grid-item, .freyja-grid .woocommerce-grid-sizer {
		width: 100% ;
	}
	.freyja-grid .blog-gutter-sizer, .freyja-grid .woocommerce-gutter-sizer {
		width: 0% ;
	}
}

.woocommerce ul.products.woocommerce-grid li.product, .woocommerce-page ul.products li.product {
	margin: 0;
}



/*
| ====================================================================
| ====================================================================
| =  Showcase Section 1
| ====================================================================
| ====================================================================
*/


/* ===== Loading Slick Slider  ===== */
.testimonial_slide_1 { 
	opacity: 0; 
}
.testimonial_slide_1.slick-initialized  { 
	opacity: 1;
	position: relative;
	transition: opacity 0.2s ease-in;	
}


.testimonial_slide_1 {
	margin-bottom: 5.625rem;
}
.testimonial_slide_1 div:focus{
	outline:none;
}
.testimonial_slide_1 .wrap_description {
	font-size: 0.875rem;
	line-height: 1.625rem;
	color: #272727;	
	padding: 3.75rem 1.25rem 0.625rem 1.25rem;
}
.testimonial_slide_1 .description {
	margin-bottom: 0.5625rem;
}


.testimonial_slide_1 .cont_meta_showcase {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
	padding: 1.25rem;
}
.testimonial_slide_1 .wrap_avatar {
	display: block;
	margin-right: 1.25rem;
	text-align: center;
	max-width: 4.6875rem;
}
.testimonial_slide_1 .wrap_avatar img {
	width: 75px;
	margin-bottom: 0.3125rem;
	max-width: 6.25rem;
	margin: 0 auto;
	border-radius: 100%;
	height: 75px;
}
.testimonial_slide_1 .meta_showcase  {
	
	
}
.testimonial_slide_1 .meta_showcase p {
	margin: 0rem;
	font-size: 0.875rem;
	line-height: 1.3125rem;
}
@media (max-width:1000px) {
	.testimonial_slide_1 .cont_meta_showcase {
		display: block;
	}
	.testimonial_slide_1 .wrap_avatar {
	    max-width: 100%;
	    width: 100%;
	}
	.testimonial_slide_1 .meta_showcase  {
		text-align: center;
		margin-top: 15px;
	}
}

/* Fade & opacity external slide  */
.testimonial_slide_1 .slick-cloned,
.testimonial_slide_1 .slick-slide {
	opacity: 0.3;
	-webkit-transition: -webkit-transform 1s ease 0s, opacity .7s ease 0s;
    -moz-transition: -moz-transform 1s ease 0s, opacity .7s ease 0s;
    -ms-transition: -ms-transform 1s ease 0s, opacity .7s ease 0s;
    -o-transition: -o-transform 1s ease 0s, opacity .7s ease 0s;
    transition: transform 1s ease 0s, opacity .7s ease 0s
}
.testimonial_slide_1 .slick-active {
	opacity: 1;
	-webkit-transition: -webkit-transform 1s ease 0s, opacity .7s ease 0s;
    -moz-transition: -moz-transform 1s ease 0s, opacity .7s ease 0s;
    -ms-transition: -ms-transform 1s ease 0s, opacity .7s ease 0s;
    -o-transition: -o-transform 1s ease 0s, opacity .7s ease 0s;
    transition: transform 1s ease 0s, opacity .7s ease 0s
}

/* ===== Arrow navigation ===== */
.testimonial_slide_1 .slick-arrow {
    position: absolute;
    top: 0;
    height: 100%;
    padding: 0;
    background: none;
    border: none;
    font-size: 0;
    width: 50%;
    z-index: 10;
    outline: none;
    cursor: url(../../assets/img/left-arrow.svg),w-resize;
}
.testimonial_slide_1 .slick-next {
    right: 0;
    cursor: url(../../assets/img/right-arrow.svg),e-resize;
}
@media (max-width: 1200px) {
.testimonial_slide_1 .slick-arrow {
		height: 0%;
    }
}



/*
| ====================================================================
| ====================================================================
| =  Price box 1
| ====================================================================
| ====================================================================
*/


.ss-pricing-layout-1 {
	background-color: var(--bg-color-normal);
	padding: 2.5rem 3.9375rem 3.125rem 3.9375rem;
    position: relative;
    text-align: center;
    
    transition: background-color .5s,border-color .5s,transform .5s,background-size .5s;
    transition-timing-function: cubic-bezier(0.25,0.46,0.45,0.94);
}
.ss-pricing-layout-1:hover {
    background-color: var(--bg-color-hover);
}

img.ss-pricing-layout-1__image {
    position: relative;
    width: 8.75rem;
    height: auto;
    border-radius: 8.75rem;
    overflow: hidden;
    display: inline-block;
}

.ss-pricing-layout-1__title {
    font-size: 0.8125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}
.ss-pricing-layout-1__popular {
	margin: 30px 0;
    font-size: 0.8125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}

.ss-pricing-layout-1__description {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}

.ss-pricing-layout-1__price {
    font-size: 0.8125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}



/*
| ====================================================================
| ====================================================================
| =  Price box 2
| ====================================================================
| ====================================================================
*/


.ss-pricing-layout-2 {
	background-color: var(--bg-color-normal);
	padding: 2.5rem 3.9375rem 3.125rem 3.9375rem;
    position: relative;
    text-align: center;
    transition: background-color .5s,border-color .5s,transform .5s,background-size .5s;
    transition-timing-function: cubic-bezier(0.25,0.46,0.45,0.94);
}
.ss-pricing-layout-2:hover {
    background-color: var(--bg-color-hover);
}

.ss-pricing-layout-2__image {
    position: relative;
    width: 8.75rem;
    height: auto;
    border-radius: 8.75rem;
    overflow: hidden;
}

.ss-pricing-layout-2__title {
    font-size: 0.8125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}
.ss-pricing-layout-2__popular {
	margin: 30px 0;

    font-size: 0.8125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}
.ss-pricing-layout-2__description {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}

.ss-pricing-layout-2__price {
    font-size: 2.2125rem;
    letter-spacing: 0.316em;
    word-spacing: 0em;
    line-height: 2em;
    text-transform: none;
    font-weight: normal;
}

