/*

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

DESIGN BY © LO STUDIO

CUSTOM.CSS STYLESHEET FOR => " Almet Italia "

BASE (MOBILE) SIZE

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



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


.header { z-index: 4; }
.head_wrapper { padding: 1.5em 2.5%; z-index: 2; }

.head_wrapper .flex-el { position: fixed; top: 1.5rem; right: 2.5%; }




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

.head_logo { 
	display: inline-block; 
	--head-logo-width: 100px; /* <- in 'px' */
	--head-logo-min: 100;
	--head-logo-max: 190;
	max-width: 190px;
}
.head_logo :where(img, svg) { width: 100%; margin-top: .25rem; }




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

/* .btn_head.deac { opacity: .5; } */
.btn_head svg path { fill: var(--blue); transition: .25s ease; }
.btn_head svg g { transition: .125s ease; }

.btn_cerca { background-color: var(--white); padding: .75rem; border-radius: 4rem; color:  var(--blue); font-size: 1.25rem; }
.btn_cerca svg { width: 1.25rem; min-width: 1.25rem; overflow: visible; }
.btn_cerca svg path { fill: var(--blue); transition: .25s ease; }


.btn_prod { margin-left: clamp(.5rem, 2vw, 1rem); gap: .75rem; background-color: var(--white); padding: .625rem 1rem; border-radius: 4rem 0 0 4rem; color: var(--blue); font-size: clamp(16px, 2vw, 1.25rem); }
.btn_prod svg { width: clamp(18px, 2vw, 1.25rem); min-width: clamp(18px, 2vw, 1.25rem); margin-top: 2px; }
.btn_prod.active svg { transform: rotate(180deg); }


.btn_menu { background-color: var(--white); padding: .75rem 1rem; border-radius: 0 4rem 4rem 0; border-left: 1px solid var(--light); }
.btn_menu svg { width: 1.375rem; min-width: 1.375rem; overflow: visible; }
.btn_menu svg path { fill: var(--blue); transition: .25s ease; }

.btn_menu .close { opacity: 0; }
.btn_menu.active .close { opacity: 1; }
.btn_menu.active .init { opacity: 0; }



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

#main_nav { display: none; position: fixed; top: var(--hh); right: 2.5%; z-index: 1; padding: 1rem 2rem; background-color: var(--white); border-radius: 1rem; }

#main_nav .menu > div { width: 100%; }
#main_nav .menu li { font: inherit; line-height: 1; }
#main_nav .menu li a { display: block; width: 100%; color: var(--blue); font-family: var(--title-font); font-size: clamp(.85rem, 1.75vw, 1.125rem); line-height: 1; padding: 0.625em 0; border-bottom: 1px solid var(--grey); }
#main_nav .menu li:last-of-type a { border-bottom: 0; }
#main_nav .menu li a:hover { color: var(--light); }



.filter_close_menu { background-color: var(--black); opacity: .75; height: 100vh; pointer-events: initial; display: none; position: fixed; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ PROD NAV ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#prod_nav {
	width: 95%; position: fixed; top: var(--hh); right: 2.5%; background-color: var(--white); 
	z-index: 2; border-radius: 1rem; overflow: hidden; display: none;
}

	

#prod_nav .grid { display: grid; grid-template-columns: 1fr 1fr; }

.card_menu { overflow: hidden; border-right: 2px solid var(--grey); height: 100%; }
.card_menu picture { transform: translateX(-1rem); transition: .25s ease; height: 5rem; }
.card_menu picture img { object-fit: contain; object-position: left center; }
.card_menu .text { padding: .5rem; }
.card_menu .text h3 { font-size: clamp(.85rem, 1.75vw, 1.5rem); font-weight: 500; transition: .25s ease; }
.card_menu .text button { width: 1rem; margin-bottom: .5rem; }
.card_menu .text button path { fill: var(--blue); }


#prod_nav .menu_wrp { background-color: var(--blue); padding: 1rem; grid-column: 1 / 3; }
#prod_nav .menu_wrp > div { width: 100%; }
#prod_nav .menu_wrp li { font: inherit; line-height: 1; }
#prod_nav .menu_wrp li a { display: block; width: 100%; color: var(--white); font-size: clamp(1rem, 1.75vw, 1.25rem); line-height: 1; padding: 1em 0; border-bottom: 1px solid var(--light); }
#prod_nav .menu_wrp li:last-of-type a { border-bottom: 0; }
#prod_nav .menu_wrp li a:hover { color: var(--light); }













/*
.sub_menu_prodotti { background-color: var(--blue); }
.sub_menu_prodotti button { gap: 1rem; color: var(--white); font-size: 1.25em; padding: 1rem; }
.sub_menu_prodotti button svg { width: 1.25em; }
.sub_menu_prodotti.active > button svg { transform: rotate(180deg); }

.prod_menu_mobile { display: none; height: calc(100vh - var(--hh) - 3rem); overflow-y: scroll; }
.prod_menu_mobile .card_menu { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 2px solid var(--light); }
.prod_menu_mobile .card_menu h3 { color: var(--white); font-size: 1rem; font-weight: 500; width: calc(100% - 1.5rem); }
.prod_menu_mobile .card_menu svg { min-width: 1rem; }
.prod_menu_mobile .card_menu svg path { fill: var(--white); }



.prod_menu_mobile .menu_wrp { background-color: var(--blue); padding: 1rem; }
.prod_menu_mobile .menu_wrp > div { width: 100%; text-align: center; }
.prod_menu_mobile .menu_wrp li { font: inherit; line-height: 1; }
.prod_menu_mobile .menu_wrp li a { display: block; width: 100%; color: var(--white); font-size: 1.25rem; line-height: 1; padding: .25em 0; }
*/




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


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

.link { display: inline-flex; position: relative; padding-right: .5rem; z-index: 1; }
.link svg { height: 1.5rem; }
.link svg path { fill: var(--blue); transition: .25s ease; }

.link span::before { content: ""; width: 0; height: 100%; position: absolute; left: 0; top: 0; background-color: var(--blue); transition: .25s ease; z-index: -1; }
.link span:nth-of-type(1) { display: block; padding: .75em 1.25em; position: relative; border: 2px solid var(--blue); color: var(--blue); line-height: 1; font-weight: 600; transition: .25s ease; }
.link span:nth-of-type(2) { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; width: auto; height: 100%; position: absolute; right: 0; transform: translateX(100%); border: 2px solid var(--blue); }

.link:hover span::before { width: 100%; }
.link:hover span:nth-of-type(2)::before { transition-delay: .125s; }
.link:hover span:nth-of-type(1) { color: var(--white); }
.link:hover span:nth-of-type(2) svg path { fill: var(--white); transition-delay: .25s; }



.link.white svg path { fill: var(--white); }
.link.white span::before { background-color: var(--white); }
.link.white span:nth-of-type(1) { color: var(--white); border-color: var(--white); }
.link.white span:nth-of-type(2) { border-color: var(--white); }

.link.white:hover span:nth-of-type(1) { color: var(--blue); }
.link.white:hover span:nth-of-type(2) svg path { fill: var(--blue); }


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

.filter_light { background-color: var(--light); mix-blend-mode: multiply; opacity: .5; }
.filter_blur { mask: linear-gradient(var(--white), var(--white), transparent); backdrop-filter: blur(2rem); height: 100%; }





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

.outline { -webkit-text-stroke: 1px var(--blue); color: transparent; }
.white .outline { -webkit-text-stroke-color: var(--white); color: transparent; }

.tt { text-transform: uppercase; }
.light { color: var(--light); }

.pretitle { font-size: 1rem; text-transform: uppercase; font-weight: 600; }
.text .pretitle + :where(h1, h2, h3, h4) { margin-top: .5rem; }


.contain > img { object-fit: contain; }





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

#scroll_btn {
	display: inline-block;
	position: absolute; left: 50%; bottom: 1.5em; 
	--scroll-px: 40px;
	--scroll-min: 40;
	--scroll-max: 60;
	max-width: 60px;
	transform: translateX(-50%);
	cursor: pointer; z-index: 1;
}
#scroll_btn svg { 
	width: 100%; 
	animation: hang_scroll 1.5s ease-in-out infinite forwards alternate;
	animation-play-state: running;
}
@keyframes hang_scroll {
	from { transform: translateY(0); }
	to { transform: translateY(.5em); }
}
#scroll_btn:hover svg, #scroll_btn:focus svg, #scroll_btn:active svg { animation-play-state: paused; }
#scroll_btn svg path { fill: var(--black); transition: .25s ease; }




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

.nav_btn { 
	width: 3.5em; padding: .25em; 
	z-index: 1; cursor: pointer; transition: .25s ease; 
}
.nav_btn.abs { top: 50%; transform: translateY(-50%); }
.nav_btn :where(img, svg) { width: 100%; }
.nav_btn svg path { fill: var(--black); transition: .25s ease; }

.nav_prev { left: 0; }
.nav_next { right: 0; }

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


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




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

/* Social */
.social { gap: .5rem }
.social a { display: inline-block; width: 2.375em; }
.social a :where(img,svg) { width: 100%; }
.social a svg path, .social a svg circle { transition: .25s ease; fill: var(--blue); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SIDEBAR ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.sticky { top: 15vh; }




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

#breadcrumb { gap: 5px .5em; flex-wrap: nowrap; }
#breadcrumb li { list-style: none; margin: 0; }
#breadcrumb .separator {}
#breadcrumb :where(a,span) { display: inline-block; min-width: fit-content; font-size: clamp(14px, 2vw, var(--rem)); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ ANIMAZIONI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.textAnim h1, .textAnim h2, .textAnim h3 { opacity: 0; transform: translateY(25%); transition: 1s ease; }
.textAnim.active h1, .textAnim.active h2, .textAnim.active h3 { opacity: 1; transform: translateY(0); }

.textAnim p, .textAnim li, .textAnim p a, .textAnim li a { opacity: 0; transform: translateY(25%); transition: 1s ease .25s; }
.textAnim.active p, .textAnim.active li, .textAnim.active p a, .textAnim.active li a { opacity: 1; transform: translateY(0); }






.sec_img.trigger picture { max-height: 90vh; transform: translateY(50%) scale(.75); opacity: 0; overflow: hidden; transition: all .25s ease-in-out, box-shadow .5s ease .75s; }
.sec_img.trigger picture::after {
    display: block; content: '';
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background-color: var(--light); transform: translateY(100%);
    transition: 1s ease-in-out .25s;
}
.sec_img.trigger picture > img { opacity: 0; transition: transform 2.5s ease-out .75s, opacity 0s linear .75s; }

.trigger.active.sec_img picture { transform: translateY(0) scale(1); opacity: 1; }
.trigger.active.sec_img picture::after { transform: translateY(-100%); }
.trigger.active.sec_img picture > img { opacity: 1; transform: scale(1.05); }







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


footer {  }


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


/* Foot Logo */
/*.foot_logo { width: 20rem; max-width: 100%; margin: 0 auto; }*/

.foot_logo { width: 20rem; }
.foot_logo :where(img, svg) { width: 100%; }




/* Foot Block */
.wrapper_sedi { gap: 3rem; }
.foot_block:nth-of-type(1) { /* margin-bottom: 4rem;*/ padding-bottom: 2rem; border-bottom: 1px solid var(--blue); }


.foot_block p { color: var(--black); font-size: 1rem; margin-top: 1rem; }
.foot_block p a { font: inherit; }
.foot_block p a:hover { color: var(--blue); }



.slogan { font-size: clamp(2em, 4vw, 3em); line-height: 1; font-family: var(--title-font); }
.slogan .outline { -webkit-text-stroke: unset; color: var(--black); font-weight: 700; }



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

#credits p { font-size: 16px; line-height: 1.5; color: var(--black); z-index: 1; margin: 1rem auto; }
#credits .resp_sep { display: none; }
#credits a { display: inline-block; font: inherit; color: inherit; }
#credits a:hover { color: var(--blue); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ BACK TO TOP ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#back_top {
	display: none; z-index: 2; 
	bottom: .5em; right: .5em;
	--back-top-px: 40px;
	--back-top-min: 40;
	--back-top-max: 60;
	max-width: 60px; 
	padding: .25em; background-color: rgb(255 255 255 / 25%);
	cursor: pointer; transition: .25s ease;
}
#back_top :where(img, svg) { width: 100%; }
#back_top svg path { fill: var(--black); }








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


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

.s1 { padding-top: var(--hh); }
.s1_title p { font-size: 1.25rem; }




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






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SEARCH ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.search_wrapper { top: 0; left: 0; z-index: 4; backdrop-filter: blur(.5rem); -webkit-backdrop-filter: blur(.5rem); background-color: rgb(var(--blue-rgb) / 90%); display: none; }
.filter.close { pointer-events: initial; }

button.close { position: absolute; top: 1rem; right: 1rem; width: clamp(2rem, 4vw, 4rem); z-index: 1; }


.search_wrapper .searchInput { margin-top: var(--c7v); overflow: hidden; max-width: 40rem; width: 90%; }
.search_wrapper .searchInput .input_wrapper { background-color: transparent; width: 100%; margin: 0 auto; }
.search_wrapper .searchInput input { padding: 1rem; width: 100%; font-size: 1rem; background-color: transparent; color: var(--white); font-weight: 500; border: 1px solid #ccc; outline: unset; }
.search_wrapper .searchInput input::placeholder { font-size: 1rem; color: var(--white); }

.search_wrapper .searchInput .ajax_search { position: absolute; top: 50%; right: 1rem; transform: translateY(-55%); width: auto; height: calc(95% - 1.75rem); }
.search_wrapper .searchInput .ajax_spinner { display: none; padding: 1rem; margin-top: 1rem; background-color: rgb(var(--white-rgb) / 100%); z-index: 1; position: relative; }
.search_wrapper .searchInput .ajax_spinner img { width: 1.5rem; }


.search_wrapper .wrapper_datafetch { margin-top: .5rem; z-index: 1; position: relative; }
.search_wrapper .search_result { overflow-y: scroll; height: 45vh; z-index: 1; position: relative; }
.search_wrapper .search_result ul { background-color: var(--white); padding: 1rem 0; }
.search_wrapper .search_result ul + ul { border-top: 1px solid var(--blue); }
.search_wrapper .search_result p { padding: .25rem 1rem; color: var(--black); opacity: .5; text-transform: uppercase; font-size: 18px; }
.search_wrapper .search_result::-webkit-scrollbar { width: 0px; background-color: var(--grey); }
.search_wrapper .search_result::-webkit-scrollbar-thumb { width: 0px; background-color: var(--light); }




.box_search { display: flex; align-items: center; justify-content: flex-start; gap: .5rem; font-weight: 500; padding: .25rem 1rem; color: var(--black); }
.box_search:hover { opacity: .75; color: var(--light); }





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


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

.card a { height: 100%; background-color: var(--white); border-radius: 1rem; overflow: hidden; }
.card picture { transform: translateX(-1rem); transition: .25s ease; height: 12rem; }
.card picture img { object-fit: contain; object-position: left center; transform: translateX(-1rem); }
.card .text { padding: 1rem; padding-bottom: 2rem; }
.card .text h3 { font-size: clamp(1rem, 1.75vw, 1.25rem); font-weight: 500; transition: .25s ease; }
.card .text button { width: 1.5rem; margin-bottom: 1rem; }
.card .text button path { fill: var(--white); }

.card a:hover { background-color: var(--blue); }
.card a:hover picture { transform: translateX(0) !important; }
.card a:hover h3 { color: var(--white); }



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

.card_empty { padding: 2em 1.5em; }
.card_empty svg { width: 6em; }
.card_empty .text { margin-top: 1em; }




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








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


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

#s1_home { padding-top: 0; }
#s1_home .clip { clip-path: polygon(0 0, 100% 0, 100% calc(100% - clamp(2rem, 12vw, 11rem)), 0% 100%); }
#s1_home .container { min-height: 80vh; }

.s1 .play { left: 50%; bottom: 0; transform: translate(-50%, 20%); min-width: 6rem } 



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

.wrapper_prodotti { display: grid; gap: 1rem; }



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

.wrapper_servizi { grid-template-columns: 1fr; gap: 3rem 1rem; }

.card_servizio { height: 100%; overflow: clip; aspect-ratio: 4 / 5; border-radius: 1rem }
.card_servizio picture > img { object-position: top; }
.card_servizio picture.blu { opacity: 0; transition: .25s ease; }

.card_servizio .text { padding: 3rem 1rem; gap: .75rem; }
.card_servizio .text h3 { font-size: clamp(1rem, 1.75vw, 1.25rem); font-weight: 500; transition: .25s ease; color: var(--white); }
.card_servizio .text button { width: 0; }
.card_servizio .text button path { fill: var(--white); }


.card_servizio:hover .text::before { background-color: var(--white); }
.card_servizio:hover h3 {  }
.card_servizio:hover picture.blu { opacity: 1; }
.card_servizio:hover button { width: 1.25rem; }




.card_servizio:nth-of-type(2):hover .text h3 { color: var(--blue); }
.card_servizio:nth-of-type(2):hover .text svg path { fill: var(--blue); }

.card_servizio:nth-of-type(3):hover .text h3 { color: var(--blue); }
.card_servizio:nth-of-type(3):hover .text svg path { fill: var(--blue); }


/*
.card_serv { height: 100%; background: linear-gradient(to top, #D3D3D3, #F3F3F3); overflow-x: clip; }
.card_serv .filter { background-color: var(--blue); opacity: 0; transition: .25s ease; }

.card_serv picture { transform: translateX(1rem) scale(1.25); transition: .25s ease; height: 15rem; margin-top: 8rem; }
.card_serv picture img { object-fit: contain; object-position: right center; position: relative; }

.card_serv .text { padding: 2rem 1rem; gap: .75rem; }
.card_serv .text::before { content: ""; width: 1px; height: 12rem; background-color: var(--blue); position: absolute; bottom: 0rem; left: 50%; transform: translateY(100%); transition: .25s ease; }
.card_serv .text h3 { font-size: clamp(1rem, 1.75vw, 1.25rem); font-weight: 500; transition: .25s ease; }
.card_serv .text button { width: 0; }
.card_serv .text button path { fill: var(--white); }

.card_serv:hover .filter { opacity: 1; }
.card_serv:hover picture { transform: translateX(0) scale(1.25); }
.card_serv:hover .text::before { background-color: var(--white); }
.card_serv:hover h3 { color: var(--white); }
.card_serv:hover button { width: 1.25rem; }
*/







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

#s4_home { overflow: hidden; }
/*#s4_home .filter { height: 55%; background: rgba(10, 71, 146, 0.125); backdrop-filter: blur(1rem); }*/




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

.sec_maps { margin-bottom: -7.5%; }
.sec_maps .mondo { position: absolute; top: 5vh; left: calc(var(--c7o) * -1); width: 120%; max-width: unset; opacity: .25; }
.sec_maps svg { width: 100%; position: relative; }

.sec_maps .testo { filter: drop-shadow(0 0 1rem rgb(30 30 30 / 30%)); }

.sec_maps .filiale .hover { opacity: 0; transition: .25s ease; }
.sec_maps .filiale:hover .hover { opacity: 1; }



/* Targhetta inverita */
.sec_maps .testo .st0 { fill: var(--blue); transition: .25s ease; }
.sec_maps .testo .st2 { fill: var(--white); transition: .25s ease; }

.sec_maps .filiale:hover .testo .st0 { fill: rgb(var(--white-rgb) / 75%); }
.sec_maps .filiale:hover .testo .st2 { fill: var(--blue); }






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

.wrapper_bkg { clip-path: polygon(0 clamp(2rem, 12vw, 11rem), 100% 0, 100% calc(100% - clamp(2rem, 12vw, 11rem)), 0% 100%); margin-top: var(--c7v); }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CHI SIAMO ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Section 2 */
.big_par p:first-of-type { font-size: 1.425rem; font-weight: 600; }
.big_par p:first-of-type * { font-weight: 600 !important; }


/* Section 3 */
.wrapper_tl { border-top: 1px solid #ccc; padding: 2rem 0; }
.wrapper_tl:last-of-type { border-bottom: 1px solid #ccc; }
.wrapper_tl .anno { font-size: clamp(5rem, 15vw, 15rem); font-weight: 500; line-height: 1; white-space: nowrap; color: var(--light); transition: .25s ease; }

.wrapper_tl::before {
	content: ""; width: 100vw; height: 100%; position: absolute; left: calc(var(--c5o) * -1); top: 0;
	background-color: var(--light); opacity: 0; transition: .25s ease; z-index: -1;
}

.wrapper_tl:hover .anno { color: var(--blue); }
.wrapper_tl:hover::before { opacity: .125; }


/* Section 4 */
.wrapper_numeri { grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--blue); text-align: center; }

.wrapper_numeri .numero { border-top: 1px solid var(--blue); padding: 1rem; }
.wrapper_numeri .numero:nth-of-type(odd) { border-right: 1px solid var(--blue); }
.wrapper_numeri .numero .num { font-size: clamp(2rem, 10vw, 7rem); font-weight: 600; }


/* Section 5 */
.wrapper_box { display: grid; gap: 1rem; }
.box_info { padding: 2rem; border: 1px solid var(--blue); border-radius: 1rem; }
.box_info img { width: 2rem; }
.box_info h3 { font-size: 1.5rem; margin-top: 1rem; }
.box_info p { font-size: 1rem; margin-top: 1rem; }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE QUALIÀ ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Section 3 */
.punti_sicurezza { gap: 1rem; padding: 1.5rem 0; border-top: 1px solid #ccc; }
.punti_sicurezza:last-of-type { border-bottom: 1px solid #ccc; }
.punti_sicurezza svg { min-width: 2rem; width: 2rem; }

/* Section 4 */
.sec_img picture { border-radius: 1rem; }

/* Section 5 */
.wrapper_cert { gap: 1rem; }
.cert { background-color: var(--white); border-radius: 1rem; overflow: hidden; box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.07); padding: 1rem; text-align: center; }
.cert img { width: 100%; margin-bottom: 1rem; mix-blend-mode: multiply; }
.cert p { font-size: 1.25rem; font-weight: 700; transition: .25s ease; }
.cert button { width: 100%; color: var(--black); gap: .75rem; margin-top: 1rem; }
.cert button path { fill: var(--black); }







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

/* Sec 3 */
/* .sec_serv .sec_img picture { transform: translateX(calc(var(--c5o) * -1)); } */



#s2_servizi { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE SEDI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.sede { padding-top: var(--c15v); }
.play { width: clamp(4rem, 10vw, 6rem); filter: drop-shadow(0 0 1rem rgb(30 30 30 / 10%)); }
.play img { transition: .25s ease; position: relative; }
.play::before {
	content: ""; width: 100%; height: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) scale(1.75); 
	border: 1px solid var(--white); border-radius: 50%; opacity: .5; transition: .25s ease;
}

.play:hover::before { background-color: rgb(var(--light-rgb) / 25%); }
.play:hover img { transform: scale(1.1); }




.sec_mappa { position: sticky; top: 25vh; opacity: .125; }
.sec_mappa svg { transform-origin: top; transform: scale(1.25); }

.sec_mappa .filiale { opacity: 0; transition: .25s ease; }
.sec_mappa .filiale.active { opacity: 1; }

.sec_mappa .testo { filter: drop-shadow(0 0 1rem rgb(30 30 30 / 30%)); }
.sec_mappa .testo .st0 { fill: rgb(var(--white-rgb) / 75%); }

.sec_mappa .mondo { position: absolute; top: 5vh; left: calc(var(--c7o) * -1); width: 120%; max-width: unset; opacity: .25; }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE PARCO MACCHINE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Section 3 */
.wrapper_mac { padding: 2rem 0; border-bottom: 1px solid var(--blue); overflow: hidden; }

.wrapper_mac .num p { font-size: clamp(5rem, 10vw, 10rem); line-height: 1; font-weight: 500; color: var(--light); text-align: center; }
.wrapper_mac .name p { font-size: .85rem; line-height: 1.375; }
.wrapper_mac .marchio { padding: 0 2rem; text-align: center; margin-top: 2rem; }
.wrapper_mac .marchio p { font-size: 1rem; }

.wrapper_mac .img { margin-top: 2rem; }
.wrapper_mac .img img { max-width: unset; height: 13rem; width: auto; mix-blend-mode: multiply; }






/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE LAVORA CON NOI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#s3_lavora .card a { padding-top: 0; }
#s3_lavora .card a picture, #s3_lavora .card picture img { width: 100%; object-position: center; transform: translateX(0) !important; }









/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE DONWLOAD ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.download .card_accordion { border-color: var(--blue); }
.download .card_accordion + .card_accordion { margin-top: 2rem; }

.download .accordion_head { padding-bottom: 2rem; }
.download .accordion_head h3 { color: var(--blue); }
.download .accordion_head svg path { fill: var(--blue); }
.download .accordion_head .link { margin-right: .75rem; }
.download .accordion_head .link svg { transform: rotate(90deg); }

.card_accordion.noacc .accordion_head { cursor: initial; }

.download .accordion_text { padding-bottom: 2rem; }
.accordion_text .dl_wrapper { gap: 2rem; display: grid; grid-template-columns: 1fr; }
.accordion_text .dl { text-align: center; gap: .5rem; }
.accordion_text .dl :where(img, svg) { width: 1.5rem; }
.accordion_text .dl svg path { fill: var(--light); transition: .25s ease; }
.accordion_text .dl p { font-size: clamp(16px, 2vw, 18px); line-height: 1.125; color: rgb(var(--blue-rgb) / 80%); transition: .25s ease; }

.accordion_text .dl:hover svg path { fill: var(--blue); }
.accordion_text .dl:hover p { color: var(--blue);  }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CONTATTI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/
/*
#s1_contatti { background-color: var(--blue); }
#s1_contatti .foot_block:nth-of-type(1) { border-bottom: 1px solid var(--white); }

#s1_contatti .foot_block h4 { color: var(--white); }
#s1_contatti .foot_block p { color: var(--white); }
#s1_contatti p a:hover { color: var(--light); }
*/

#s1_contatti .foot_block:nth-of-type(1) { border-bottom: 1px solid var(--light); }

#s2_contatti #map_frame { z-index: 1; }
#s2_contatti .leaflet-control-attribution { display: none; }






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


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

#s1_single_archivio .sec_img { transform: scaleX(-1); }



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

.sec_arch + .sec_arch { padding-top: var(--c15v); }

#post_grid { grid-template-columns: 1fr; gap: 1rem; }
/* #post_grid .card picture { transform: translateX(1rem); } */
#post_grid .card picture img { transform: translateX(-2rem); }














/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TAXONOMY LEGHE ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

.wrapper_left.tax .bottom { border-top: 1px solid var(--blue); }

.wrapper_left.tax p { font-size: 1rem; margin-top: .75rem; }
.wrapper_left.tax a {
	display: inline-flex; justify-content: center; align-items: center; gap: .5rem; margin-top: .75rem;
	padding: .5em 1.5em; border: 1px solid var(--blue); border-radius: 3rem; 
	color: var(--blue); font-weight: 600; font-size: 16px;
}
.wrapper_left.tax a:hover { background-color: rgb(var(--light-rgb) / 25%); }
.wrapper_left.tax a.active { background-color: var(--blue); color: var(--white); }









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

.leghe_disp::after { content: ", "; }
.leghe_disp:last-of-type::after { content: ""; }

.leghe_disp span { font-weight: 700; text-decoration: underline; }




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

#s1_single_prod { background: linear-gradient(to bottom, rgb(var(--light-rgb) / 25%), transparent); }
#s1_single_prod picture { transform: scaleX(-1); }




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

.sec_tab .text { padding-bottom: 1rem; margin-bottom: var(--c5v); /* border-bottom: 1px solid #6d6d6d; */ }
/*.sec_tab .text::after { content: ""; width: 1px; height: 1rem; background-color: #6d6d6d; position: absolute; left: 0; bottom: -1rem; }
.sec_tab .text::before { content: ""; width: 1px; height: 1rem; background-color: #6d6d6d; position: absolute; right: 0; bottom: -1rem; }*/

.sec_tab picture { display: inline-block; margin-bottom: var(--c2v); width: auto; height: 8rem; max-width: 90%; }
.sec_tab picture img { mix-blend-mode: multiply; }


.sec_tab .tablepress { --padding: .4rem; }

.sec_tab .tablepress tr { position: relative; }
.sec_tab .tablepress tr::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--blue); opacity: 0; pointer-events: none; }
.sec_tab .tablepress tr:hover::after { opacity: .1 }

.sec_tab .sinistra .tablepress, .sec_tab .sinistra .tablepress>:where(tbody)>tr>* { text-align: left !important; }
.sec_tab .tablepress-table-description { font-size: 14px; }
.sec_tab .tablepress-table-description a { display: inline-block; font: inherit; text-decoration: underline; } 

.sec_tab .scroll_table { overflow-y: clip; overflow-x: scroll; padding-bottom: 1rem; }
.sec_tab .scroll_table::-webkit-scrollbar { height: 5px; background-color: var(--white); }
.sec_tab .scroll_table::-webkit-scrollbar-thumb { height: 5px; background-color: var(--light); }


.sec_tab .tablepress, .sec_tab .tablepress>:where(tbody)>tr>* { text-align: center; vertical-align: middle; }
.sec_tab .tablepress>:where(thead,tfoot)>tr>*, .sec_tab .tablepress>:not(caption)>*>* { background: transparent; padding: .375rem; text-align: center; font-size: 14px; font-weight: 400; line-height: 1.1; }
.sec_tab .tablepress>:not(caption)>*>* { border: 1px solid #d4d4d4; }





.”dot_1” { display: block; height: .5rem; background: url(../images/svg/dot_1.svg) no-repeat center; background-size: contain; }
.”dot_2” { display: block; height: .5rem; background: url(../images/svg/dot_2.svg) no-repeat center; background-size: contain; }
.”dot_3” { display: block; height: .5rem; background: url(../images/svg/dot_3.svg) no-repeat center; background-size: contain; }
.”dot_4” { display: block; height: .5rem; background: url(../images/svg/dot_4.svg) no-repeat center; background-size: contain; }
  
.”dot_1-5” { display: block; height: .5rem; background: url(../images/svg/dot_1-5.svg) no-repeat center; background-size: contain; }
.”dot_2-5” { display: block; height: .5rem; background: url(../images/svg/dot_2-5.svg) no-repeat center; background-size: contain; }
.”dot_3-5” { display: block; height: .5rem; background: url(../images/svg/dot_3-5.svg) no-repeat center; background-size: contain; }
.”dot_4-5” { display: block; height: .5rem; background: url(../images/svg/dot_4-5.svg) no-repeat center; background-size: contain; }


/* Sezioe box */
.wrapper_box_eb { display: grid; gap: 1.5rem; grid-template-columns: 1fr 1fr; margin-top: var(--c7v); }
.wrapper_box_eb .box { border-radius: 1rem; border: 2px solid var(--blue); text-align: center; background-color: var(--white); }
.wrapper_box_eb .box p { font-weight: 600; line-height: 1.1; padding: 1rem; padding-top: .25rem; }









/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SIDEBAR ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#sidebar { background-color: var(--blue); border-radius: 1rem; padding: 2rem 0 2rem 2rem; }
.card_accordion + .card_accordion { margin-top: 1rem; }
.card_accordion { border-bottom: 1px solid rgb(var(--white-rgb) / 50%); }

.accordion_head { padding-bottom: 1rem; padding-right: 2rem; cursor: pointer; gap: .5rem; }
.accordion_head h3 { color: var(--white); font-size: 1.25rem; }
.accordion_head svg { width: 1.5rem; }
.accordion_head svg path { fill: var(--white); }
.accordion_head.active svg .st0:first-of-type { transform: rotate(180deg); }
.accordion_head.deactive { opacity: .5; }

.accordion_text { display: none; padding-bottom: 1rem; }
.accordion_text p { color: var(--white); margin-top: .25rem; font-size: 1rem; }
.accordion_text p.bold a { font-weight: 600; }

.side_link a { color: var(--white); font-size: 1.25rem; margin-top: 1rem; }
.side_link { opacity: .5; }
.side_link.active { opacity: 1; }
.side_link + .side_link { border-top: 1px solid rgb(var(--white-rgb) / 50%); margin-top: 1rem; }



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


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

#form .wpforms-field :where(input, textarea, select) {
	background-color: var(--white) !important; border: 0; border-radius: .75rem;
	padding: .75rem 1rem; font-size: 1.125rem; color: var(--blue);
}
#form .wpforms-field input::placeholder, #form .wpforms-field textarea::placeholder { color: var(--blue); }


#form .wpforms-field:not(.wpforms-field.wpforms-field-checkbox) label {
	cursor: pointer; font-size: 1rem; font-weight: 400; color: var(--blue); opacity: 1; 
	position: absolute; top: 0.75rem; left: 1rem; transform-origin: left; transition: .125s ease; 
}
#form .wpforms-field:not(.wpforms-field.wpforms-field-checkbox).up label { transform: scale(.5); top: 0; opacity: .75; }


#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"] { padding: .5em; border: 1px solid var(--blue); border-radius: 5px; background: transparent no-repeat center / 0.7em; }
#form .wpforms-field.wpforms-field-checkbox li label a:hover { color: var(--light); }

#form .wpforms-submit-container { display: flex; align-items: flex-start; justify-content: flex-start; }

#form button[type=submit] { width: auto; padding: 0; background: unset; border: unset; }
#form button[type=submit] { display: inline-flex; position: relative; padding-right: .5rem; z-index: 1; }
#form button[type=submit] svg { height: 1.5rem; }
#form button[type=submit] svg path { fill: var(--blue); transition: .25s ease; }

#form button[type=submit] span::before { content: ""; width: 0; height: 100%; position: absolute; left: 0; top: 0; background-color: var(--blue); transition: .25s ease; z-index: -1; }
#form button[type=submit] span:nth-of-type(1) { display: block; padding: .75em 1.25em; position: relative; border: 2px solid var(--blue); color: var(--blue); line-height: 1; font-weight: 600; transition: .25s ease; }
#form button[type=submit] span:nth-of-type(2) { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; width: auto; height: 100%; position: absolute; right: 0; transform: translateX(100%); border: 2px solid var(--blue); }

#form button[type=submit]:hover span::before { width: 100%; }
#form button[type=submit]:hover span:nth-of-type(2)::before { transition-delay: .125s; }
#form button[type=submit]:hover span:nth-of-type(1) { color: var(--white); }
#form button[type=submit]:hover span:nth-of-type(2) svg path { fill: var(--white); transition-delay: .25s; }





/**
 *
 *  █▀▀  █  █  ▀▀█▀▀  █▀▀▄  ▄▀▀▄
 *  █▀▀  ▄▀▀▄    █    █▐█▀  █▀▀█
 *  ▀▀▀  ▀  ▀    ▀    ▀ ▀▀  ▀  ▀ - 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 ) ); }

#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 { padding: 1.5em 2.5%; 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 2 */
	.wrapper_prodotti { grid-template-columns: 1fr 1fr; }



	/*∞∞∞∞∞∞ CHI SIAMO ∞∞∞∞∞∞*/
	/* Sec 5 */
	.wrapper_box { grid-template-columns: 1fr 1fr; }



	/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
	/* Sec 2 */
	#post_grid { grid-template-columns: 1fr 1fr; }


	/*∞∞∞∞∞∞ DONWLOAD ∞∞∞∞∞∞*/
	.accordion_text .dl_wrapper { grid-template-columns: 1fr 1fr; }


}



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

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

	.outline { -webkit-text-stroke: 2px var(--blue); color: transparent; }



	.sec_tab .scroll_table { overflow: visible; }
	.sec_tab .tablepress > thead { position: sticky; top: var(--hh); z-index: 1; }





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




	/* PROD NAV */
	#prod_nav .grid { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
	#prod_nav .menu_wrp { grid-column: unset; }

	.card_menu picture { height: 11rem; }
	.card_menu .text { padding: 1rem 2rem; }
	.card_menu .text button { width: 1.5rem; margin-bottom: 1rem; }
	.card_menu .text button path { fill: var(--white); }
	.card_menu:hover { background-color: var(--blue); }
	.card_menu:hover picture { transform: translateX(0); }
	.card_menu:hover h3 { color: var(--white); }







	

	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	/* Contents */
	.foot_logo { margin: 0; }
	.alluminio_footer { width: calc(87.5% - 20rem); }


	.wrapper_sedi { flex-direction: unset; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; gap: 3rem 1rem; }
	.foot_block { width: calc(50% - 1rem); }
	.foot_block:nth-of-type(1), #s1_contatti .foot_block:nth-of-type(1) { padding-bottom: 0; margin-bottom: 0; border-bottom: unset; }


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

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






	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 1 */
	#s1_home .container { min-height: 110vh; }
	#s1_home .play { transform: translate(-50%, -2.5rem); } 

	/* Sec 4 */
	/*#s4_home .container { display: flex; align-items: flex-start; justify-content: space-between; }*/
	.tar_desktop .link { margin-right: 2.5rem; }

	/* Sec 2 */
	.wrapper_prodotti { grid-template-columns: 1fr 1fr 1fr 1fr; }

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

	/* Sec 4 */
	.filter_blur { height: 55%; }

	/* FORM */
	#form .wpforms-field:last-of-type { margin-bottom: 0; }
	#form .wpforms-submit-container { justify-content: flex-end; }
	#form button[type=submit] { margin-right: 3.5rem; }








	/*∞∞∞∞∞∞ CHI SIAMO ∞∞∞∞∞∞*/
	/* Sec 1 */
	.wrapper_bkg { aspect-ratio: 16 / 7; margin-top: 1rem; }

	/* Sec 4 */
	.wrapper_numeri { grid-template-columns: 1fr 1fr 1fr 1fr; }
	.wrapper_numeri .numero { border-right: 1px solid var(--blue); aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; flex-direction: column; }
	.wrapper_numeri .numero:last-of-type { border-right: 0; }




	/*∞∞∞∞∞∞ TEMPLATE PARCO MACCHINE ∞∞∞∞∞∞*/
	.wrapper_macchine { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }
	.wrapper_mac { border-right: 1px solid var(--blue); border-top: 1px solid var(--blue); }
	.wrapper_mac:last-of-type { border-right: 0; }




	/*∞∞∞∞∞∞ DONWLOAD ∞∞∞∞∞∞*/
	.accordion_text .dl_wrapper { grid-template-columns: 1fr 1fr 1fr; }





	/*∞∞∞∞∞∞ TEMPLATE QUALIÀ ∞∞∞∞∞∞*/

	/* Section 5 */
	.wrapper_cert { grid-template-columns: 1fr 1fr 1fr; }
	.cert button { opacity: 0; color: var(--white); }
	.cert button path { fill: var(--white); }
	.cert:hover { background-color: #658DBE; }
	.cert:hover p { color: var(--white); }
	.cert:hover button { opacity: 1; }



	.fut_sticky { position: sticky; top: 5vh; } 





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

	/* Sec 3 */
	.sec_serv .text { padding-left: 0; }
	/*.sec_serv .sec_img picture { width: 120%; }*/



	/*∞∞∞∞∞∞ TEMPLATE SERVIZIO INTERNA ∞∞∞∞∞∞*/
	/* Sec 2 */
	#s2_servizio picture { position: absolute; left: 0; bottom: 0; transform: translate(calc(var(--c5o) * -1), 130%); width: calc(100% + var(--c5o)); }

	/* Sec 3 */
	#s3_servizio { margin-top: calc(var(--7v) * -1); }

	/* Sec 4 */
	#s4_servizio { margin-top: var(--c15v); }
	#s4_servizio .container { padding-top: var(--c25v); }




	/*∞∞∞∞∞∞ TEMPLATE SEDI ∞∞∞∞∞∞*/
	.sec_mappa { position: sticky; top: 5vh; opacity: 1; }
	.sec_mappa svg { transform-origin: top; transform: scale(1); }




	/*∞∞∞∞∞∞ ARCHIVE ∞∞∞∞∞∞*/
	/* Sec 2 */
	#post_grid { grid-template-columns: 1fr 1fr 1fr; }


	/*∞∞∞∞∞∞ SINGLE ∞∞∞∞∞∞*/
	.s2_single .container { padding-left: 0; }
	.wrapper_left { position: sticky; top: 5vh; }
	#sidebar { border-radius: 0 1rem 1rem 0; }



}






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

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

	/*∞∞∞∞∞∞ FOOTER ∞∞∞∞∞∞*/
	/* Contents */
	/*.foot_logo { margin-top: 8vw; }*/

	.wrapper_sedi { flex-wrap: nowrap; }
	.foot_block { width: inherit; }
	.foot_block:nth-of-type(1) { padding-right: 2rem; margin-right: 4rem; border-right: 1px solid var(--blue); }
	#s1_contatti .foot_block:nth-of-type(1) { padding-right: 2rem; margin-right: 4rem; border-right: 1px solid var(--light); }



	/*∞∞∞∞∞∞ SINGLE ∞∞∞∞∞∞*/
	/* Sezioe box */
	.wrapper_box_eb { grid-template-columns: 1fr 1fr 1fr; }



}






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

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


	/*∞∞∞∞∞∞ DONWLOAD ∞∞∞∞∞∞*/
	.accordion_text .dl_wrapper { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }

}






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

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






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

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



