/*
Theme Name: Euro Fisi Child Theme
Theme URI: https://refive.design
Description: Child theme for Euro Fisi Theme
Author: Refive
Textdomain: qi
Author URI: https://refive.design
Template: euro-fisi
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html 
*/

/* General */

#qodef-page-header .qodef-header-logo-link img,
#qodef-page-header .qodef-header-logo-link span {
	width: 100%;
	height: 100%;
}

.footer-icon svg {
    width: 100vw !important;
    height: auto !important;
    opacity: .1;
	max-width: 2000px !important;
}

.custom-btn .qodef-m-icon {
	background-color: #fff;
	border-radius: 100%;
	padding: 10px;
}


.custom-btn.white-bg .qodef-m-icon {
	background-color: #354F9A;
	border-radius: 100%;
	padding: 10px;
}

.custom-btn .qodef-m-icon svg {
	stroke: none;
	transition:
	fill 0.5s ease-in-out,
	transform 0.38s cubic-bezier(.37,.08,.02,.93),
	opacity 0.18s ease-in-out !important;
}

.custom-btn:hover .qodef-m-icon svg {
	fill: #000
}

.custom-btn.white-bg:hover .qodef-m-icon svg {
	fill: #fff;
}

.swiper-pagination-bullet {
	width: 40px !important;
	border-radius: 20px !important;
	background-color: var( --e-global-color-primary ) !important;
	opacity: 0.5 !important;
	transition: all .3s ease !important;
	transform: none !important;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination-bullet:hover {
	opacity: 1 !important;
}

/* .product_carousel > .e-n-carousel > .swiper-wrapper > .swiper-slide > a {
	transform: scale(0.98);
} */

.product_carousel > .e-n-carousel > .swiper-wrapper > .swiper-slide > a:hover {
	background-color: #354F9A;
/* 	transform: scale(1); */
}

.product_carousel > .e-n-carousel > .swiper-wrapper > .swiper-slide > a:hover div,
.product_carousel > .e-n-carousel > .swiper-wrapper > .swiper-slide > a:hover h6,
.product_carousel > .e-n-carousel > .swiper-wrapper > .swiper-slide > a:hover p {
	color: #fff;
}

.faq-border .qodef-qi-accordion > .qodef-e-title-holder:not(:nth-last-child(2)) {
	border-bottom: 1px solid #fff;
}

#qodef-page-header .qodef-header-logo-link:focus,
.qodef-mobile-header-opener:focus {
	outline: none !important;
}

.fslightbox-container > .fslightbox-full-dimension > div > div > img {
	max-width: calc(100% - 40px);
	margin-top: 15px;
	margin-right: 20px;
	margin-left: 20px;
	border-radius: 20px;
}

/* End of General */

/* Animations */
/* Improved Animations Stylesheet from https://element.how/elementor-improve-entrance-animations/ , works for the 'fade' animations */

@keyframes fadeDown {
	from {
		opacity: 0;
		transform: translate3d(0, -30px, 0)
	}

	to {
		opacity: 1;
		transform: none
	}
}

.elementor-element.fadeInDown {
	animation-name: fadeDown
}

@keyframes fadeLeft {
	from {
		opacity: 0;
		transform: translate3d(-30px, 0, 0)
	}

	to {
		opacity: 1;
		transform: none
	}
}

.elementor-element.fadeInLeft {
	animation-name: fadeLeft
}

@keyframes fadeRight {
	from {
		opacity: 0;
		transform: translate3d(30px, 0, 0)
	}

	to {
		opacity: 1;
		transform: none
	}
}

.elementor-element.fadeInRight {
	animation-name: fadeRight
}

@keyframes fadeUp {
	from {
		opacity: 0;
		transform: translate3d(0, 30px, 0)
	}

	to {
		opacity: 1;
		transform: none
	}
}

.elementor-element.fadeInUp {
	animation-name: fadeUp
}

.fadeInRight {
	animation: fadeInRight 1s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0s 1 normal forwards;
}

.fadeInLeft {
	animation: fadeInLeft 1s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0s 1 normal forwards;
}


.fadeInDown {
	animation: fadeInDown 1s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0s 1 normal forwards;
}

.fadeInUp {
	animation: fadeInUp 1s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0s 1 normal forwards;
}

@media (max-width: 1024px) {
	.qodef-content-grid-1400 div[data-element_type=container].qodef-elementor-content-grid.qodef-extended-grid--right {
		padding-left: 0 !important;
	}
	html div[data-element_type=container].qodef-elementor-content-grid.qodef-extended-grid:not([class*=qodef-extended-grid-disabled--]) {
		width: calc(100% - 60px) !important;
	}
}


/* Navigation */
@property --migl {
	/* menu item gradient line */
	syntax: '<percentage>';
	inherits: true;
	initial-value: 0%;
}

nav.qodef-header-navigation ul li ul {
	background-color: var(--e-global-color-primary);
	padding: 0;
	max-height: 0px;
	border-radius: 20px;
	overflow: hidden;
	transition: all .5s ease-in-out !important;
}

.qodef-header-navigation ul li:hover > ul {
	max-height: 300px;
}

nav.qodef-header-navigation ul li ul > li span {
	font-weight: 400;
	color: #fff;
}

nav.qodef-header-navigation ul li ul > li {
	padding: 0;
	margin: 0;
}

nav.qodef-header-navigation ul li ul > li > a {
	--migl: 0%;
	margin: 0;
	padding: 20px 30px;
	background: linear-gradient(to right,
			rgba(255, 255, 255, 1) 0%,
			rgba(255, 255, 255, 1) var(--migl),
			rgb(53, 79, 154) var(--migl),
			rgb(53, 79, 154) 100%);
	transition: --migl 0.6s cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

nav.qodef-header-navigation ul li ul > li > a > span {
	color: transparent;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(to right,
			#000 0%,
			#000 var(--migl),
			#fff var(--migl),
			#fff 100%);

	background-clip: text;
	-webkit-background-clip: text;
}

nav.qodef-header-navigation ul li ul > li > a:hover {
	--migl: 100%;
}

.qodef-header-navigation > ul > li.menu-item-has-children > a::after {
	content: "";
	width: 20px;
	height: 20px;
	display: block;
	position: relative;
	margin-left: 10px;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg fill='%23fff' xmlns='http://www.w3.org/2000/svg' id='Layer_1' data-name='Layer 1' viewBox='0 0 24 24'%3E%3Cpath d='m12,15c-.916,0-1.776-.356-2.424-1.004l-4.418-4.131c-.201-.188-.212-.505-.023-.707.188-.201.505-.212.707-.023l4.43,4.143c.941.939,2.527.928,3.445.012l4.441-4.154c.202-.188.519-.178.707.023.188.202.178.519-.023.707l-4.43,4.143c-.636.636-1.496.992-2.412.992Z'/%3E%3Cstyle id='stylish-1' class='stylish' type='text/css'%3E%23termly-code-snippet-support %7B display: none !important;%0A%7D%3C/style%3E%3C/svg%3E");
}

/* End of Navigation */


/* Home */

.box-blur {
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.custom-home-icons .elementor-icon-box-wrapper .elementor-icon {
	background-color: rgba(53, 79, 154, 0.1);
	padding: 15px;
	border-radius: 12px;
}


.custom-home-icons-col:hover .custom-home-icons .elementor-icon-box-wrapper .elementor-icon {
	background-color: rgba(255,255,255,0.2)
}

.custom-home-icons-col:hover .custom-home-icons .elementor-icon-box-wrapper .elementor-icon svg path{
	fill: #fff;
}

.custom-home-icons-col:hover .custom-home-icons .elementor-icon-box-content p,
.custom-home-icons-col:hover .custom-home-icons .elementor-icon-box-content h5{
	color: #fff !important;
}

.custom-home-icons-col:hover .custom-home-icons .elementor-icon-box-wrapper .elementor-icon svg path,
.custom-home-icons-col .custom-home-icons .elementor-icon-box-content p,
.custom-home-icons-col .custom-home-icons .elementor-icon-box-content h5,
.custom-home-icons-col .custom-home-icons .elementor-icon-box-wrapper .elementor-icon{
	transition: all 0.3s ease-in-out;
}

.custom-home-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>svg {
		transition: all 0.3s ease-in-out;
}

.custom-home-accordion .e-n-accordion-item-title-text {
	color: rgba(255,255,255,0.4);
	transition: all 0.3s ease-in-out;
}

.custom-home-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-text,
.custom-home-accordion .e-n-accordion-item:hover .e-n-accordion-item-title-text {
  color: #fff;
}

.custom-home-accordion .e-n-accordion-item {
	border-bottom: 1px solid rgba(255,255,255,0.1)
}

.custom-home-accordion .e-n-accordion-item:last-child {
	border-bottom: none;
}

.qodef-widget-holder.qodef--one .custom-btn .qodef-qi-button {
	font-size: 16px;
	line-height: 1.2em;
	color: #FFFFFF;
	border-radius: 100px 100px 100px 100px;
	padding: 5px 5px 5px 40px;
	background-color: #354F9A;
}

.qodef-widget-holder.qodef--one .custom-btn .qodef-qi-button:hover {
	background-color: #000;
}

.qodef-widget-holder.qodef--one .custom-btn .qodef-qi-button:hover  .qodef-m-icon svg {
	fill: #000
}

.qodef-widget-holder.qodef--one .custom-btn .qodef-qi-button .qodef-m-icon {
	margin: 0 0 0 20px;
	font-size: 20px;
	padding: 10px;
}

.qodef-widget-holder.qodef--one  .custom-btn .qodef-m-icon svg {
 height: 20px;
	width: 20px;
	fill: #354F9A;
}

/* END Home */

/* Fluent Forms */

.frm-fluent-form input,
.frm-fluent-form select,
.frm-fluent-form textarea {
    background-color: #fff !important;
    border: none !important;
    border-radius: 20px !important;
}

.frm-fluent-form button {
    border-radius: 100px !important;
    padding-right: 75px !important;
}

.ff-el-group.ff-text-left.ff_submit_btn_wrapper {
    width: fit-content;
    position: relative;
}

.ff-el-group.ff-text-left.ff_submit_btn_wrapper::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -12px;
    transform: translate(-50%, -50%);
    width: 42px;
    height: 42px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 42 42'%3E%3Csvg x='10' y='10' width='22' height='22' viewBox='0 0 512 422.38' preserveAspectRatio='xMidYMid meet'%3E%3Cpath fill='%23354f9a' d='M499.52,181.02L318.5,0l-30.17,30.17,159.69,159.69H0v42.66H448.02l-159.69,159.69,30.17,30.17,181.02-181.02c16.64-16.64,16.64-43.7,0-60.34Z'/%3E%3C/svg%3E%3C/svg%3E");
    background-size: 42px 42px;
    background-repeat: repeat-x;
    background-position: 0 50%;
    border-radius: 100%;
    animation: arrow-out .3s ease forwards;
}

.ff-el-group.ff-text-left.ff_submit_btn_wrapper:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 42 42'%3E%3Csvg x='10' y='10' width='22' height='22' viewBox='0 0 512 422.38' preserveAspectRatio='xMidYMid meet'%3E%3Cpath fill='%23000' d='M499.52,181.02L318.5,0l-30.17,30.17,159.69,159.69H0v42.66H448.02l-159.69,159.69,30.17,30.17,181.02-181.02c16.64-16.64,16.64-43.7,0-60.34Z'/%3E%3C/svg%3E%3C/svg%3E");
    animation: arrow-in .3s ease forwards;
}

@keyframes arrow-in {
    from {
        background-position: 0 50%;
    }

    to {
        background-position: 42px 50%;
    }
}

@keyframes arrow-out {
    from {
        background-position: 42px 50%;
    }

    99.9% {
        background-position: 84px 50%;
    }

    to {
        background-position: 0 50%;
    }
}

/* End of Fluent Forms */

/* Single Product */

.reveal-image-to-right,
.reveal-image-to-left {
	overflow: visible !important;
	clip-path: none;
}

.custom-home-icons-col {
	opacity: 0;
	visibility: hidden;
	transform: translate3d(0, 30px, 0);
	will-change: transform, opacity;
	backface-visibility: hidden;
	transition: all .3s ease-in-out !important;
}

.single-product-slider img {
    border-radius: 24px !important;
}

.single-product-slider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -20px !important;
    gap: 10px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* END Single Product */

/* About US */

@media (min-width: 768px) {
	:root {
		--timeline-element-pl: 100px;
		--timeline-wrapper-pt: 70px;
		--timeline-elements-hidden: 0;
		--timeline-elements-total: 3;
	}

	.timeline-elements::before {
		content: "" !important;
		position: absolute !important;
		left: 50% !important;
		transform: translateX(-50%);
		top: 70px !important;
		width: 2px !important;
		height: calc((100% - (var(--timeline-wrapper-pt) * 2)) * (var(--timeline-elements-hidden)) / var(--timeline-elements-total)) !important;
		background-color: var(--e-global-color-secondary);
		border-radius: 20px !important;
		transition: all .3s ease !important;
	}

	.timeline-elements > div {
		transition: all 1.2s ease-in-out;
		overflow: hidden;
	}

	.timeline-elements > div:nth-child(odd) > * {
		transform: translateX(calc(-100% - (var(--timeline-element-pl) * 2)));
	}

	.timeline-elements > div:nth-child(even) > * {
		transform: translateX(calc(100% + (var(--timeline-element-pl) * 2)));
	}


	.timeline-elements > div.timeline-revealed > * {
		transform: translateX(0%);
		transition-delay: .3s;
	}
}

/* End of About Us */

/* Gallery */

.custom-pinterest-gallery .qodef-qi-image-gallery-pinterest.qodef-image--hover-zoom .qodef-e-inner {
	border-radius: 16px;
}

.custom-pinterest-gallery .qodef-grid-item {
  	opacity: 0;
  	transform: scale(0.8);
  	transform-origin: center;
	will-change: opacity, transform;
}

.custom-pinterest-gallery .qodef-grid-item.is-revealed {
	pointer-events: auto;
}

/* End of Gallery */

/* Logistics */

.custom_counter {
	transition: all .3s ease-in-out !important;
}

.custom_counter:hover {
	box-shadow: 0px 12px 48px -30px rgba(0,0,0,0.5)
}

.custom_counter:hover * {
	color: #fff !important;
}

/* End of Logistics */

/* Cookie Banner */

.cky-consent-container .cky-consent-bar {
	border-radius: 12px !important;
}

.cky-notice-btn-wrapper .cky-btn {
	border-radius: 100px;
}

.cky-btn-accept {
	background-color: #354F9A !important;
	border: 1px solid #354F9A !important;
	transition: all 0.2s ease-in-out;
}

.cky-btn-accept:hover,
.cky-btn-reject:hover {
	background-color: #000 !important;
	border-color: #000 !important;
	color: #fff !important;
}

.cky-btn-reject {
	background-color: #fff !important;
	border: 1px solid #354F9A !important;
	color: #354F9A !important;
	transition: all 0.2s ease-in-out;
}

.cky-btn:hover {
	opacity: 1 !important;
}

/* End of Cookie Banner */


/* Mobile Header */

#qodef-page-mobile-header .qodef-mobile-header-logo-link {
	width: 120px;
}

#qodef-fullscreen-area {
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

/* End of Mobile Header */


/* GRID */

@media only screen and (min-width: 2001px) {
	#qodef-page-header-inner,
	.elementor-element.max-width-2k {
		max-width: 2000px !important;
    	margin-left: auto;
    	margin-right: auto;
	}
	
	#qodef-page-header-inner {
		padding-left: 60px !important;
		padding-right: 60px !important;
	}
	
	.max-width-2k.border-radius-top {
		border-radius: 20px 20px 0 0;
		overflow: hidden;
	}
	
	.max-width-2k.border-radius-bottom {
		border-radius: 0 0 20px 20px;
		overflow: hidden;
	}
	
	body.qodef-content-grid-1400 div[data-element_type="container"].qodef-elementor-content-grid.qodef-extended-grid--right {
		padding-left: 0px;
		max-width: 1400px !important;
	}
}

@media only screen and (max-width: 880px) {
	div[data-element_type=container].qodef-elementor-content-grid {
		width: calc(100% - 60px) !important;
		max-width: 100% !important;
	}
}

@media only screen and (max-width: 480px) {

	div[data-element_type=container].qodef-elementor-content-grid {
		width: calc(100% - 40px) !important;
		max-width: 100% !important;
	}
	
	.cky-consent-container {
		width: calc(100% - 40px) !important;
		left: 20px;
		bottom: 20px !important;
	}
}

/* END GRID */

/* Responsive */

@media only screen and (min-width : 1025px) {
	.footer-icon svg {
		padding-right: 15px;
	}
}

@media only screen and (max-width : 680px) {	
	.qodef-mobile-header--minimal #qodef-page-mobile-header-inner {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}	
	
	#qodef-fullscreen-area .qodef-fullscreen-menu-close {
		right: 20px !important;
	}
}

/* End of Responsive */