/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/*Main font typography responsive*/
	/* Tablet (fino a 1024px) */
	@media (max-width: 1024px) {
	.elementor-kit-12 {
		--e-global-typography-2cb5f51-font-size: 2.488rem;
		--e-global-typography-e0b92b2-font-size: 2.074rem;
		--e-global-typography-279b6ea-font-size: 1.728rem;
		--e-global-typography-17e1cba-font-size: 1.44rem;
		--e-global-typography-9b4cdb5-font-size: 1.2rem;
		--e-global-typography-66d9e7d-font-size: 1.05rem;

	}
	}

	/* Mobile (fino a 768px) */
	@media (max-width: 768px) {
	.elementor-kit-12 {
		--e-global-typography-2cb5f51-font-size: 2.074rem;
		--e-global-typography-e0b92b2-font-size: 1.728rem;
		--e-global-typography-279b6ea-font-size: 1.44rem;
		--e-global-typography-17e1cba-font-size: 1.2rem;
		--e-global-typography-9b4cdb5-font-size: 1.05rem;
		--e-global-typography-66d9e7d-font-size: 0.9rem;
	}
	}

	.elementor-kit-12 a:hover{
		font-size: var(--icon-size, --e-global-typography-66d9e7d-font-size);
	}

/*End font typography*/

/*Top video section*/
	.hero {
		min-height: calc(100svh - var(--header-h, 0px)) !important;
	}

	.video-top{
		min-height: calc(50svh - (var(--header-h, 0px)/2)) !important;	
	}

	@media (max-height: 700px) {
	.video-top {
		min-height: calc(70svh - var(--header-h, 0px)) !important;
	}
	}

	@media (max-height: 400px) {
	.video-top {
		min-height: calc(100svh - var(--header-h, 0px)) !important;
	}
	}

/*End top video section*/

/*Utility CSS*/
	.hide-responsive {
		display: none !important;
	}

	.text-uppercase {
		text-transform: uppercase;
	}

	.text-bold, .text-bold h1, .text-bold h2, .text-bold h3,
	.text-bold h4, .text-bold h5, .text-bold h6, .text-bold p{
		font-weight: 600 !important;
	}

	.obj-cover, .obj-cover .elementor-image{
		height: 100%;
	}

	.obj-cover img{
		height: 100%;
		width: 100%;
		object-fit: cover;
		object-position: center;
	} 

	.i-text-color svg, .i-text-color path{
		fill: var(--e-global-color-text) !important;
	}

	.i-primary-color svg, .i-primary-color path{
		fill: var(--e-global-color-primary) !important;
	}

	.elementor-form .elementor-field-group {
		flex-grow: 1;
	}

/*End utility*/

/*Service card*/
	.service-card:hover .elementor-icon{
		color: var(--e-global-color-primary) !important;
		border-color: var(--e-global-color-primary)!important;
		background-color: var(--e-global-color-662fbd3)!important;
		fill: var(--e-global-color-primary) !important;
		transition: all .3s;
	}

	.service-card-fold .elementor-widget-icon{
		opacity: 0;
	}

	.service-card-fold:hover .elementor-widget-icon{
		transition: opacity 0.3s ease;
		transition-delay: 0.13s;
		opacity: 1;
		z-index: 99;
	}

	.service-card-fold .elementor-icon{
		color: var(--e-global-color-primary) !important;
		border-color: var(--e-global-color-primary)!important;
		background-color: var(--e-global-color-662fbd3)!important;
		fill: var(--e-global-color-primary) !important;
	}

	.service-card-fold {
		position: relative;
		perspective: 800px; /* Aggiunge profondità */
		overflow: hidden;
	}
	
	/* Angolo piegato */
	.fold {
		position: absolute;
		bottom: 0;
		right: 0;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0;
		border-color: var(--e-global-color-accent) #fff transparent transparent;
		transform-origin: bottom right;
		transition:
			border-width 0.4s ease-out,
			transform 0.5s ease-out,
			box-shadow 0.5s ease-out;
	}

	/* Hover: piega e solleva il lembo */
	.service-card-fold:hover .fold {
		border-width: 100px 160px 0 0;
		transform: rotateY(-25deg) rotateX(20deg);
		box-shadow: -15px 15px 20px rgba(0, 0, 0, 0.3);
	}

/*End service card*/

/*Client SVG map*/
	.scale svg{
		scale: 2;
		transform-origin: center bottom;
	}

	.scale .map_render > div{
		border-radius: 10px;
	}

/*FAQ*/
	.faq details{
		box-shadow: var(--e-global-color-primary) 0px 10px 30px -25px;
    	border-radius: 10px;
		border: solid 1px var(--e-global-color-accent);
	}

	.faq .e-n-accordion-item-title-text{
		font-weight: 600;
	}

/*End FAQ*/

/*Service Tab*/
	.service-tab .e-n-tab-title{
		background-color: var(--e-global-color-662fbd3) !important;
	}

	.service-tab .e-n-tab-title:hover{
		background-color: var(--e-global-color-662fbd3) !important;
	}
	
	.service-tab .e-n-tab-title[aria-selected="true"]{
		background-color: var(--e-global-color-primary) !important;
	}
	
	
/*End service tab*/