/*

┏━━━┓ ┏┓ ┏┓ ┏━━━┓ ┏━━━━┓ ┏━━━┓ ┏━┓┏━┓   ┏━━━┓ ┏━━━┓ ┏━━━┓
┃┏━┓┃ ┃┃ ┃┃ ┃┏━┓┃ ┃┏┓┏┓┃ ┃┏━┓┃ ┃ ┗┛ ┃   ┃┏━┓┃ ┃┏━┓┃ ┃┏━┓┃
┃┃ ┗┛ ┃┃ ┃┃ ┃┗━━┓ ┗┛┃┃┗┛ ┃┃ ┃┃ ┃┏┓┏┓┃   ┃┃ ┗┛ ┃┗━━┓ ┃┗━━┓
┃┃ ┏┓ ┃┃ ┃┃ ┗━━┓┃   ┃┃   ┃┃ ┃┃ ┃┃┃┃┃┃   ┃┃ ┏┓ ┗━━┓┃ ┗━━┓┃
┃┗━┛┃ ┃┗━┛┃ ┃┗━┛┃   ┃┃   ┃┗━┛┃ ┃┃┃┃┃┃   ┃┗━┛┃ ┃┗━┛┃ ┃┗━┛┃
┗━━━┛ ┗━━━┛ ┗━━━┛   ┗┛   ┗━━━┛ ┗┛┗┛┗┛ ▀ ┗━━━┛ ┗━━━┛ ┗━━━┛ - "CUSTOM STYLESHEET"

DESIGN BY © LO STUDIO

CUSTOM.CSS STYLESHEET FOR => " Gi.Mec "

BASE (MOBILE) SIZE

/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/**
 *
 *  █  █  █▀▀  ▄▀▀▄  █▀▀▄  █▀▀  █▀▀▄
 *  █▀▀█  █▀▀  █▀▀█  █  █  █▀▀  █▐█▀
 *  ▀  ▀  ▀▀▀  ▀  ▀  ▀▀▀   ▀▀▀  ▀ ▀▀ - HEADER
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


.header { z-index: 4; position: fixed; top: 0; }
.head_wrapper { z-index: 2; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ LOGO ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.head_logo { 
	display: inline-block; 
	--head-logo-width: 100px; --head-logo-min: 100; --head-logo-max: 200; max-width: 200px;
	padding: clamp(.75rem, 2vw, 1.25rem); background-color: var(--blue); border-radius: 0 0 1rem 0;
}
.head_logo :where(img, svg) { width: 100%; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ HEAD CONTENT ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.head_inn { background-color: var(--blue); padding: .5rem; }


.lang { margin-left: 1rem; gap: .25rem; }
.lang svg { min-width: 1rem; width: 1rem; height: auto; }
.wpml-ls-legacy-list-horizontal > ul { display: flex; align-items: center; justify-content: center; gap: .5rem; } 
.wpml-ls-legacy-list-horizontal a { font-size: 16px; font-weight: 700; color: var(--white); text-transform: uppercase; padding: 0; }
.wpml-ls-legacy-list-horizontal a:hover { color: var(--yellow); }

.wpml-ls-legacy-list-horizontal li { opacity: .5; }
.wpml-ls-legacy-list-horizontal li.wpml-ls-current-language { opacity: 1; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ HAMBURGER / MENU ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#hamburger { 
	padding: .5em .5em;  font-size: var(--rem); line-height: 0;
	overflow: visible; cursor: pointer; transition: .25s ease;
}
#hamburger .wrap { width: 2.5em; height: 1.5em; }
#hamburger span {
	display: block; position: absolute; left: 50%; transform: translateX(-50%);
	width: 2.5em; height: 4px; background-color: var(--white);
	transform-origin: center; will-change: transform; transition: .25s ease;
}
#hamburger .top_bun { top: 0; }
#hamburger .burger { top: calc(50% - 2px); }
#hamburger .bottom_bun { bottom: 0; }

/* Tapped / Clicked animation */
#hamburger.tapped span { transition: .25s ease; }
#hamburger.tapped .burger { opacity: 0; }
#hamburger.tapped .top_bun { top: 50%; transform: translate(-50%,-50%) rotate(45deg); }
#hamburger.tapped .bottom_bun { top: 50%; transform: translate(-50%,-50%) rotate(-45deg); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ NAV MENU ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#main_nav { 
	display: none; 
	position: absolute; top: 0; left: 0;
	z-index: 1;
}
#main_nav .menu_wrapper { top: 0; left: 0; background-color: var(--blue); }

#main_nav .head_menu {}
#main_nav .head_menu li { font: inherit; line-height: 1; text-align: center; }
#main_nav .head_menu li.current-menu-item { color: var(--yellow); }
#main_nav .head_menu li a { display: inline-block; font-size: 1.5em; line-height: 1; padding: .25em; color: var(--white); text-transform: uppercase; font-weight: 700; }
#main_nav .head_menu li a:hover {}

#main_nav img { position: absolute; top: 50%; right: 0; transform: translate(50%, -50%); width: auto; height: 80%; max-width: unset; pointer-events: none; }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ DARKMODE SWITCHER ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  ▄▀▀▄  ▄▀▀  ▄▀▀  █▀▀  ▀▀█▀▀  ▄▀▀
 *  █▀▀█   ▀▄   ▀▄  █▀▀    █     ▀▄
 *  ▀  ▀  ▀▀   ▀▀   ▀▀▀    ▀    ▀▀  - ASSETS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ LINKs / BTNs STYLE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.link {
	display: inline-flex; position: relative; width: fit-content; gap: .75rem;
    padding: .5em 1em; border: 2px solid var(--blue); border-radius: 0 0 .5rem .5rem;
	font: inherit; font-size: var(--rem); color: var(--blue); font-weight: 700; text-transform: uppercase;

	padding-top: 0; border-top-color: transparent;
}
.link:hover, .link:focus, .link:active { background-color: var(--blue); color: var(--white); padding-top: .5em; border-top-color: var(--blue); border-radius: .5rem; }


.link.white { border-color: var(--white); color: var(--white); border-top-color: transparent; }
.link.white:hover, .link.white:focus, .link.white:active { background-color: var(--white); color: var(--blue); border-top-color: var(--white); }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ FILTERS STYLE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.filter_blue { mix-blend-mode: multiply; background: linear-gradient(73deg, var(--gradient)); opacity: .75; }
.filter_lr, .filter_rl { mix-blend-mode: multiply; opacity: .75; background-color: var(--black); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ VARS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SCROLL BUTTON ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SWIPER NAV ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.nav_btn { 
	top: 50%; filter: drop-shadow(0 0 1rem rgb(30 30 30 / 50%));
	width: 2.75em; z-index: 1; cursor: pointer; transition: .25s ease; 
}
.nav_btn :where(img, svg) { width: 100%; }
.nav_btn svg path { fill: var(--black); transition: .25s ease; }

.nav_prev { left: var(--c7o); transform: translate(-50%, -50%); }
.nav_next { right: var(--c7o); transform: translate(50%, -50%); }

.nav_btn.swiper-button-disabled { display: none; }


/* Dots */
.nav_dots { gap: .5em; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ COMPONENTS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Social */
.social {}
.social a { display: inline-block; width: 3.5em; padding: .25em; }
.social a :where(img,svg) { width: 100%; }
.social a svg path { transition: .25s ease; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SIDEBAR ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/
.sticky { top: 15vh; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ BREADCRUMBS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#breadcrumb { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .5em; }
#breadcrumb li { list-style: none; margin: 0; }
#breadcrumb .separator {}
#breadcrumb :where(a,span) { display: inline-block; min-width: fit-content; color: var(--white); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CTA CONTATTI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#cta_contatti { 
	background-color: var(--blue); padding: .75rem 2.125rem .75rem 1.125rem; border-radius: 5rem 0 0 5rem;
	bottom: 1rem; right: 0; gap: .5rem; z-index: 2; margin-right: -1rem;
}
#cta_contatti svg { height: 1.375rem; }
#cta_contatti:hover { margin-right: 0; }





/**
 *
 *  █▀▀  ▄▀▀▄  ▄▀▀▄  ▀▀█▀▀  █▀▀  █▀▀▄
 *  █▀▀  █  █  █  █    █    █▀▀  █▐█▀
 *  ▀     ▀▀    ▀▀     ▀    ▀▀▀  ▀ ▀▀ - FOOTER
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


footer { background: linear-gradient(-251deg, #0A2F66 45.96%, #145ECC 119.75%); overflow: clip; }
footer .ingranaggio { position: absolute; bottom: 0; left: 50%; transform: translate(-50%, 50%); width: 80%; opacity: .5; }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ STRUCTURE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/


/* Foot Logo */
.foot_logo { 
	display: block; 
	--foot-logo-width: 240px;
	--foot-logo-min: 240;
	--foot-logo-max: 360;
	max-width: 360px;
}
.foot_logo :where(img, svg) { width: 100%; }


/* Foot Block */
.foot_block.text p { font-weight: 700; color: var(--white); margin-top: 1rem; }
.foot_block.text p a { font: inherit; }
.foot_block.text p a:hover { color: var(--yellow); }


/* Foot Loghi */
.logo_foot { padding: .75rem; width: fit-content; }
.logo_foot img { height: 3.5rem; object-fit: contain; }


.logo_foot.cert { min-width: 8rem; width: 8rem; }
.logo_foot.cert img { height: 100%; }


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CREDITS ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#credits p {
	font-size: .825em; line-height: 1.5;
	margin: 0 auto; z-index: 1; color:  var(--white);
}
#credits .resp_sep { display: none; }
#credits a { display: inline-block; font: inherit; color: inherit; }







/**
 *
 *  ▄▀▀  █▀▀  ▄▀▀  ▀▀█▀▀  ▀  ▄▀▀▄  █▄ █  ▄▀▀ 
 *   ▀▄  █▀▀  █      █    █  █  █  █ ▀█   ▀▄ 
 *  ▀▀   ▀▀▀   ▀▀    ▀    ▀   ▀▀   ▀  ▀  ▀▀  - SECTIONS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.s1 { overflow: hidden; border-radius: 0 0 1.5rem 0; width: 97.5%; }
.s1 .s1_title h1 { text-shadow: 0 0 35px rgba(0, 0, 0, 0.25); }
.s1 .s1_title p { font-size: 2em; line-height: 1.125; margin-top: 1.5rem; text-shadow: 0 0 35px rgba(0, 0, 0, 0.25); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION ____ ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  ▄▀▀  ▄▀▀▄  █▀▀▄  █▀▀▄  ▄▀▀ 
 *  █    █▀▀█  █▐█▀  █  █   ▀▄ 
 *   ▀▀  ▀  ▀  ▀ ▀▀  ▀▀▀   ▀▀  - CARDS
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CARD ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CARD ____ ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  █  █  ▄▀▀▄  █▄ ▄█  █▀▀
 *  █▀▀█  █  █  █ █ █  █▀▀
 *  ▀  ▀   ▀▀   ▀   ▀  ▀▀▀ - HOMEPAGE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 1 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 2 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s2_home .ingranaggio { position: absolute; left: 50%; top: 40%; transform: translate(-50%, -50%); width: 30%; pointer-events: none; opacity: .5; z-index: -1; animation: rot 20s linear infinite; }

@keyframes rot {
	from { transform: translate(-50%, -50%) rotate(0deg); }
	to { transform: translate(-50%, -50%) rotate(260deg); }
}

#s2_home .text h2 { text-transform: inherit; }

.sec_img picture { border-radius: 1.5rem; overflow: hidden; }
.play { filter: drop-shadow(0 0 2rem white); width: clamp(7rem, 10vw, 10rem); }
.play:hover { transform: translate(-50%, -50%) scale(1.125); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 3 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.elenco_servizi { gap: 2rem; }

.box_servizio picture { border-radius: 1rem; }
.box_servizio .text { padding-top: 1.5rem; margin-top: 1.5rem; border-top: 2px solid var(--blue); }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 4 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.wrapper_why { background: linear-gradient(110deg, #145ECC, var(--blue) 45%); border-radius: 0 1.5rem 1.5rem 0; }


.elenco_motivi { display: grid; gap: 2rem; margin-top: var(--c7v); }

.box_mot { padding: 1rem; padding-right: 2.5rem; border: 2px solid var(--white); }
.box_mot h3 { font-size: 1.25rem; font-weight: 500; color: var(--white); margin-bottom: .75rem; }
.box_mot p { font-size: 1rem; color: var(--white); line-height: 1.125; }

.box_mot img { position: absolute; top: 0; right: 0; transform: translate(50%, -50%); width: 2.5rem; animation: rot_2 10s linear infinite; }

@keyframes rot_2 {
	from { transform: translate(50%, -50%) rotate(0deg); }
	to { transform: translate(50%, -50%) rotate(260deg); }
}



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 5 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.wrapper_icon { grid-template-columns: 1fr 1fr; gap: .75rem; }
.box_ico { background-color: #B1C2E0; border-radius: 1rem; padding: .75rem; }
.box_ico img { width: 4rem; height: 4rem; }
.box_ico p { font-weight: 700; color: var(--blue); line-height: 1.125; margin-top: 1rem; }


.box_link { padding: 1.5rem; border-radius: 1rem; background-color: var(--white); overflow: hidden; }
.box_link p { font-size: 1.125rem; line-height: 1.125; color: var(--blue); }
.box_link button { font-size: 1.5rem; font-weight: 700; color: var(--blue); margin-top: .25rem; }
.box_link img { position: absolute; bottom: .5rem; left: .5rem; transform: translate(-50%, 50%); width: 7rem; filter: grayscale(1); opacity: .75; }

a.box_link:hover button { color: var(--yellow); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 6 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.slider_wrp .swiper { padding: 0 var(--c7o); }
.slider_wrp .swiper-slide { border-radius: 1.5rem; overflow: hidden; }
#slider_settore .swiper-slide .text { background-color: var(--blue); padding: 1rem; text-align: center; position: absolute; bottom: 0; left: 0; }
#slider_settore .swiper-slide .text p { color: var(--white); font-weight: 700; }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 7 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.parco_macchine { border-bottom: 1px solid var(--blue); }

.box_macchina { border-top: 1px solid var(--blue); padding: 2rem var(--c5o); }
.box_macchina .text { margin-bottom: 1.5rem; }






/**
 *
 *  █▀▀▄  ▄▀▀▄  ▄▀▀▀   █▀▀  ▄▀▀
 *  █  █  █▀▀█  █  ▀▌  █▀▀   ▀▄
 *  █▀▀   ▀  ▀   ▀▀▀   ▀▀▀  ▀▀  - TEMPLATES _ PAGINE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE SERVIZI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.elenco_competenze { margin-top: var(--c7v); }

.comp { gap: 1rem; margin-bottom: 2rem; }
.comp .sec_img {  }
.comp .sec_txt { background-color: var(--light); border-radius: 1.5rem; padding: 2rem; }
.comp .text p, .comp .text ul { margin-top: 1rem; }
.comp .text p:first-of-type { margin-top: 0; }
.comp .text li { margin-top: .125rem; font-size: 1rem; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE AZIENDA ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.timeline.mobile { padding-left: 2rem; border-left: 2px solid var(--yellow); }
.timeline.mobile .gear { position: absolute; left: 0; top: 0; width: 2rem; height: 2rem; transform: translate(calc(-50% - 1px), 0%); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE GREEN ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.bkg_gallery { background: #0A2F66; border-radius: 0 1.5rem 1.5rem 0; width: calc(100% - var(--c2o)); height: calc(100% - var(--c5v)); }

.luogo { gap: 1rem; }
.luogo svg { width: 1.25rem; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CONTATTI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s3_contatti { z-index: 2; }
#s4_contatti { margin-top: -2rem; }

/* Mappa */
#map_frame .leaflet-control-attribution { display: none; }
#map_frame { position: absolute; top: 0; left: 0; z-index: 0; }


/* Contatti */
.sec_cont { padding: 3rem 2rem; border-radius: 1.5rem; border: 2px solid #B1C2E0; }

.sec_cont p { font-weight: 700; color: var(--blue); font-size: 1.125rem; margin-top: .5rem; }
.sec_cont p a { font: inherit; }
.sec_cont p a:hover { color: var(--yellow); }

.sec_cont .flex-v + .flex-v { margin-top: 3rem; }


/* Form */
.sec_form { background-color: var(--blue); border-radius: 0 1.5rem 1.5rem 0; }









/**
 *
 *  ▄▀▀▄  █▀▀▄  ▄▀▀▀  █  █  ▀  ▐▌ ▐▌  █▀▀
 *  █▀▀█  █▐█▀  █     █▀▀█  █   ▀▄▀   █▀▀
 *  ▀  ▀  ▀ ▀▀   ▀▀▀  ▀  ▀  ▀    ▀    ▀▀▀ - TEMPLATES _ ARCHIVIO
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/**
 *
 *  ▄▀▀  ▀  █▄ █  ▄▀▀▀   █     █▀▀
 *   ▀▄  █  █ ▀█  █  ▀▌  █  ▄  █▀▀
 *  ▀▀   ▀  ▀  ▀   ▀▀▀   ▀▀▀▀  ▀▀▀ - SINGLE
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */




/**
 *
 *  █▀▀  ▄▀▀▄  █▀▀▄  █▄ ▄█
 *  █▀▀  █  █  █▐█▀  █ █ █
 *  ▀     ▀▀   ▀ ▀▀  ▀   ▀ - FORM
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/* WP-Form - Custom */
#form .wpforms-field label { color: var(--white); }

#form .wpforms-field :where(input, textarea, select) {
	background-color: transparent; border: 0; border-bottom: 1px solid rgb(var(--white-rgb) / 50%); border-radius: 0;
	padding: 0 0 .5rem 0; font-size: 1rem; color: var(--white);
}

#form .wpforms-field:not(.wpforms-field-checkbox) label { font-size: 1rem; font-weight: 400; transform: translateY(1rem); transition: .125s ease }
#form .wpforms-field:not(.wpforms-field-checkbox).up label { transform: translateY(0); opacity: .75; }


#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"] { border-color: var(--whiote); }
#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"]:checked { background-color: var(--yellow); }
#form .wpforms-field.wpforms-field-checkbox li label { color: var(--white); }
#form .wpforms-field.wpforms-field-checkbox li label a:hover { color: var(--yellow); }

#form button[type=submit] {
	background-color: transparent;
	display: inline-flex; position: relative; width: fit-content; gap: .75rem;
    padding: .5em 1em; border: 2px solid var(--white); border-radius: 0 0 .5rem .5rem;
	font: inherit; font-size: 1.125rem; color: var(--white); font-weight: 700; text-transform: uppercase;
	padding-top: 0; border-top-color: transparent;
}
#form button[type=submit] span { font: inherit; font-size: var(--rem); font-weight: 700; text-transform: uppercase; }

#form button[type=submit]:hover, 
#form button[type=submit]:focus, 
#form button[type=submit]:active { background-color: var(--white); color: var(--blue); padding-top: .5em; border-top-color: var(--white); border-radius: .5rem; }











/**
 *
 *  █▀▀  █  █  ▀▀█▀▀  █▀▀▄  ▄▀▀▄
 *  █▀▀  ▄▀▀▄    █    █▐█▀  █▀▀█
 *  ▀▀▀  ▀  ▀    ▀    ▀ ▀▀  ▀  ▀ - EXTRA
 *
 * ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
 */


/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ PAGE GRAZIE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s1_grazie {}




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ PAGE 404 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ CSS EXTRA O MOD ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/












/**
 * ██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
 *
 * RESPONSIVE
 *
 * Settare se necessario regole fluid per minmax di elementi specifici basandosi sulle seguenti regole:
 *	=>	ORIGINAL CALC			->	calc( 12px + (24 - 12) * ( (100vw - 360px) / (1920 - 360) ) )
 *	=>	CALC 1920px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 1560 ) )
 *	=>	CALC 1280px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 920 ) )
 *	=>	CALC 1024px -> 360px	->	calc( 12px + (24 - 12) * ( (100vw - 360px) / 664 ) )
 *
 * Da creare fluid dinamico con 2 step per i calc iniziali =   1920 -> 1024   1024 -> 360
 *
 * __________________________________________________________________________________________________________________________________________________________________________
 */




.head_logo { width: calc( var(--head-logo-width) + ( var(--head-logo-max) - var(--head-logo-min) ) * ( (100vw - 360px) / 1560 ) ); }

#scroll_btn { width: calc( var(--scroll-px) + ( var(--scroll-max) - var(--scroll-min) ) * ( (100vw - 360px) / 1560 ) ); }

.foot_logo { width: calc( var(--foot-logo-width) + ( var(--foot-logo-max) - var(--foot-logo-min) ) * ( (100vw - 360px) / 1560 ) ); }
#back_top { width: calc( var(--back-top-px) + ( var(--back-top-max) - var(--back-top-min) ) * ( (100vw - 360px) / 1560 ) ); }




/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
/* Logo */
/* Head Content */
/* Hamburger */
/* Nav Menu */
/* Darkmode Switch */


/*∞∞∞∞∞∞ ASSETS ∞∞∞∞∞∞*/
/* Buttons */
/* Links */
/* Filters */
/* Sections 1 */
/* Breadcrumbs */
/* Scroll */
/* Components */
/* Cards */
/* Sidebar */
/* ... */


/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
/* Structure */
/* Credits */
/* Back Top */


/*∞∞∞∞∞∞ SECTIONS ∞∞∞∞∞∞*/
/* Section 1 */


/*∞∞∞∞∞∞ CARDS ∞∞∞∞∞∞*/
/* Card */
/* Card Empty */


/*∞∞∞∞∞∞ HOMEPAGE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec [...] */


/*∞∞∞∞∞∞ PAGE ∞∞∞∞∞∞*/
/* Template ... */
/* Template ... */
/* Template ... */


/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec ... */


/*∞∞∞∞∞∞ SINGLE ∞∞∞∞∞∞*/
/* Sec 1 */
/* Sec 2 */
/* Sec ... */


/*∞∞∞∞∞∞ FORM ∞∞∞∞∞∞*/


/*∞∞∞∞∞∞ EXTRA ∞∞∞∞∞∞*/




/**
 *
 *  █▄ ▄█  ▄▀▀▄  █▀▀▄  ▀  █     █▀▀
 *  █ █ █  █  █  █▀▀█  █  █  ▄  █▀▀
 *  ▀   ▀   ▀▀   ▀▀▀   ▀  ▀▀▀▀  ▀▀▀ - MOBILE PORT | 601 -> 767
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 601px) {

	
	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/

	/* Logo */

	/* Head Content */
	.head_wrapper { z-index: 2; }

	/* Hamburger */
	/* Nav Menu */


}






/**
 *
 *  ▀▀█▀▀  ▄▀▀▄  █▀▀▄  █     █▀▀  ▀▀█▀▀
 *    █    █▀▀█  █▀▀█  █  ▄  █▀▀    █
 *    ▀    ▀  ▀  ▀▀▀   ▀▀▀▀  ▀▀▀    ▀   - TABLET |  768 x 1024  ->  1023 x 1280
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 768px) {

	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	/* Contents */

	/* Credits */
	#credits br { display: none; }
	#credits .resp_sep { display: inline-block; }



	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 3 */
	.elenco_servizi { grid-template-columns: 1fr 1fr; gap: 3rem;  }



}



/**
 *
 *  █▀▀▄  █▀▀  ▄▀▀  █ ▄▀  ▀▀█▀▀  ▄▀▀▄  █▀▀▄      ▄▀▀  █▄ ▄█  ▄▀▀▄  █    █ 
 *  █  █  █▀▀   ▀▄  █▀▄     █    █  █  █  █       ▀▄  █ █ █  █▀▀█  █ ▄  █ ▄ 
 *  ▀▀▀   ▀▀▀  ▀▀   ▀ ▀▀    ▀     ▀▀   █▀▀       ▀▀   ▀   ▀  ▀  ▀  ▀▀▀  ▀▀▀  - LAPTOP |  1024 x 768  ->  1280 x 720
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1024px) {


	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
	/* Head Content */
	.menu_ext .flex { gap: 1em; }
	.menu_ext li a { font-size: 16px; font-weight: 700; color: var(--white); text-transform: uppercase; }
	.menu_ext li a:hover { color: var(--yellow); }
	

	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	/* Contents */

	/* Credits */
	#credits a:hover, #credits a:active, #credits a:focus { opacity: 1; color: var(--yellow); }
	#credits #credits_studio:hover { color: #e74e0f; }

	/* Back Top */
	#back_top { opacity: 1; }




	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 2 */
	#s2_home .text { text-align: right; }


	/* Sec 3 */
	.elenco_servizi { grid-template-columns: 1fr 1fr 1fr; }

	/* Sec 4 */
	.elenco_motivi { grid-template-columns: 1fr 1fr; }
	.wrapper_why .contain { padding: 0; position: absolute; left: 0; bottom: 0; height: 110%; transform: translate(0%, 15%); }

	/* Sec 5 */
	.wrapper_icon { grid-template-columns: 1fr 1fr 1fr 1fr; gap: 2rem; } 


	/* Sec 7 */
	.box_macchina .sec_img { position: absolute; top: 50%; right: var(--c5o); transform: translateY(-50%); z-index: 1; opacity: 0; transition: .25s ease; }
	.box_macchina .sec_img picture { width: 12rem; }
	.box_macchina .text { margin-bottom: 0; }

	.box_macchina:hover .sec_img { opacity: 1; }







	/*∞∞∞∞∞∞ SERVIZI ∞∞∞∞∞∞*/
	.comp { grid-template-columns: .375fr 1fr; }
	.comp.invert:nth-of-type(even) { grid-template-columns: 1fr .375fr; }
	.comp.invert:nth-of-type(even) .sec_img { order: 2; }
	.comp.invert:nth-of-type(even) .sec_txt { order: 1; }

	/* Filtri */
	.filter_lr { background: linear-gradient(92deg, #0A2F66 39.23%, rgba(10, 47, 102, 0.00) 98.18%); }
	.filter_rl { background: linear-gradient(to left, var(--black), rgb(var(--black-rgb) / 25%)); }






	/*∞∞∞∞∞∞ AZIENDA ∞∞∞∞∞∞*/
	.img_timeline .sec_img { transition: .25s ease; }

	.txt_timeline { margin-top: 15%; }
	.txt_timeline::before { content: ""; width: 5px; height: 100%; background-color: var(--yellow); position: absolute; left: calc(14.5vw - 2px); top: 0; opacity: .25; }
	.txt_timeline .gear { position: absolute; left: 14.5vw; top: 0; width: 4vw; height: 4vw; transform: translate(-50%, 0%); }

	.anno_wrapper + .anno_wrapper { margin-top: 4rem; }
	.anno_wrapper .anno { font-size: 4vw; line-height: 1; min-width: 10vw; font-weight: 700; color: var(--blue); white-space: nowrap; }
	.anno_wrapper .txt { padding-left: 10vw; flex: 1 1 auto; color: var(--blue); font-size: 1rem; }








	/*∞∞∞∞∞∞ PARCO MACCHINE ∞∞∞∞∞∞*/
	#s3_macchine .comp { grid-template-columns: 1fr .45fr; }
	#s3_macchine .comp .sec_img { order: 2; }
	#s3_macchine .comp .sec_txt { order: 1; }


}






/**
 *
 *  █     ▄▀▀▄  █▀▀▄  ▀█▀  ▄▀▀▄  █▀▀▄
 *  █  ▄  █▀▀█  █  █   █   █  █  █  █
 *  ▀▀▀▀  ▀  ▀  █▀▀    ▀    ▀▀   █▀▀  - LAPTOP |  1281 x 720  ->  1366 x 768
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1281px) {

	.menu_ext { flex: 1 1 auto; }
	.menu_ext .flex { justify-content: space-around; }

	.menu_ext li a, .wpml-ls-legacy-list-horizontal a { font-size: clamp(16px, 1.5vw, 24px); }

}






/**
 *
 *  █▀▀▄  █▀▀  ▄▀▀  █ ▄▀  ▀█▀  ▄▀▀▄  █▀▀▄
 *  █  █  █▀▀   ▀▄  █▀▄    █   █  █  █  █
 *  ▀▀▀   ▀▀▀  ▀▀   ▀ ▀▀   ▀    ▀▀   █▀▀  - LAPTOP |  1367 x 768  ->  1919 x 1080
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1367px) {

	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
	.head_inn { padding: 1rem; }


	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 5 */
	.box_ico { padding: 2.5rem; }
	.box_ico img { width: 7rem; height: 8rem; object-fit: contain; margin-bottom: 2rem; }

	/* Sec 7 */
	.box_macchina .sec_img picture { width: 14rem; }


}






/**
 *
 *  █  █  █▀▀▄  █▀▀  █▀▀▄
 *  █  █  █▀▀█  █▀▀  █▐█▀
 *   ▀▀   ▀▀▀   ▀▀▀  ▀ ▀▀ - ÜBER | 1921 -> ...
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and (min-width: 1921px) {}






/**
 *
 *   ▄▀█   █ ▄▀
 *  █▄▄█▄  █▀▄
 *     █   ▀ ▀▀ - DESKTOP 4K & UP | 2561px -> ...
 * __________________________________________________________________________________________________________________________________________________________________________
 */

@media screen and ( min-width: 2561px ) {}



