/*

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

DESIGN BY © LO STUDIO

CUSTOM.CSS STYLESHEET FOR => " Lombarda nastri "

BASE (MOBILE) SIZE

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




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


header { z-index: 4; background: linear-gradient(to bottom, rgb(var(--dark-rgb) / 90%) 60%, transparent); }
.head_wrapper { padding: 1em 1.5em; z-index: 2; }


/*.blur { mask: linear-gradient(var(--white), var(--white), transparent); backdrop-filter: blur(2rem); }*/



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

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




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




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

#hamburger { 
	display: inline-block; font-size: var(--rem); line-height: 0;
	padding: .5em .5em; margin-right: -.5em; 
	overflow: visible; cursor: pointer; transition: .25s ease;
}
#hamburger .wrap { width: 2.5em; height: 1.5em; }
#hamburger span {
	display: block; position: absolute; left: 0;
	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; }

#hamburger:hover .burger { background-color: var(--blue); width: 80%; }


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

#main_nav .head_menu { text-align: center; }
#main_nav .head_menu li { font: inherit; line-height: 1; }
#main_nav .head_menu li.current-menu-item { color: ; }
#main_nav .head_menu li a { display: inline-block; font-size: 1.5em; font-weight: 600; line-height: 1; padding: 1rem; }
#main_nav .head_menu li a:hover {}










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


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

.link { position: relative; display: inline-block; padding: .375rem 1.25rem; font-size: 1.25rem; font-weight: 700; text-transform: uppercase; color: var(--blue); }
.link span { position: relative; }
.link::before, .link::after { content: ""; width: .75rem; height: .75rem; border-radius: 5rem; background-color: var(--white); position: absolute; left: 0; top: 50%; transform: translate(0, -50%); transition: .25s ease; }

.link:hover::before { width: 100%; height: 100%; top: 50%; left: -.5rem; }
.link:hover::after { background-color: var(--blue); }

.link.white { color: var(--white); }
.link.white:hover { color: var(--blue); }



.btn { 
	position: relative; display: inline-flex; gap: .75rem; 
	background-color: #9A9A9A; padding: .625rem 1.25rem; border-radius: 4rem;
	color: var(--black); font-size: 1.25rem;
}
.btn:hover { background-color: var(--white); }





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

.filter_dark { background-color: var(--dark); opacity: .875 }
.filter_bt { background: linear-gradient(to top, var(--black), transparent); }
.filter_dark_tb { background: linear-gradient(to bottom, var(--dark), rgb(var(--dark-rgb) / 90%), var(--dark)); }



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

.blue { color: var(--blue); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ 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 { 
	top: 50%; transform: translateY(-50%); 
	width: 3.5em; padding: .25em; 
	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; }

.wrapper_slider .abs.nav_prev { left: 25%; transform: translate(-50%, -50%);  }
.wrapper_slider .abs.nav_next { right: 25%; transform: translate(50%, -50%);  }

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


.wrapper_slider { padding: 0 1rem; }
.wrapper_slider .nav_btn { display: none; }



/* Dots */
#nav_dots .swiper-pagination-bullet { background-color: var(--white); opacity: 1; width: 10px; height: 10px; }
#nav_dots .swiper-pagination-bullet-active { background-color: var(--blue); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ 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 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/*
 * Se presenti position sticky, ricordarsi di disattivare nel foundation l' "overflow: hidden;" del "main" - riga 360
 * Il valore "top" è indispensabile ed è l'offset dal top dello schermo se impostato
 */
.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); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ [...] ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








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


footer { overflow: hidden; }
footer .foot_img { width: 120%; max-width: unset; margin-left: -10%; margin-bottom: -20%; opacity: .25; pointer-events: none; }
footer .foot_img svg path { --dash: 660; stroke-dasharray: var(--dash); stroke-dashoffset: var(--dash); }




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

.foot_block svg { width: auto; height: 2rem; margin-bottom: 1rem; }
.foot_block p a { font-size: 1.375rem; font-weight: 600; }
.foot_block p a:hover { color: var(--blue); }



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

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




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

.scroll_form {
    z-index: 2; bottom: .75em; right: 1.5rem;
	width: 3.75em; height: 3.75em; padding: .75rem;
    background-color: var(--blue); border-radius: 50%;
	cursor: pointer; transition: .25s ease;
}
.scroll_form :where(img, svg) { width: 100%; }
.scroll_form svg path { fill: var(--white); }
.scroll_form:hover { background-color: rgb(var(--blue-rgb) / 50%); }






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


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

.s1 { overflow-x: clip; }
.s1_title p { font-size: 135%; font-weight: 700; }
.s1_title p :where(b, strong) { color: var(--blue); }


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








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


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

.card { padding: 1rem; background-color: #199ad5; border-radius: 1.5rem; }
.card a { height: 55vh; overflow: hidden; }

.card video { object-fit: contain; width: 100%; height: 100%; transform: translate(-50%, -60%); }
.card picture img { object-fit: contain; width: 100%; height: 80%; }

.card .card_filter { background: linear-gradient(to top, #199ad5, transparent 50%); }
.card .text { padding: 1.5rem; }



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

.card.profilo { background-color: var(--white); }
.card.profilo picture { width: auto; height: 100%; }
.card.profilo picture img { object-fit: contain; width: 100%; height: 80%; }

/*.card.profilo .text { position: absolute; bottom: 0; }*/
.card.profilo h3 { color: var(--blue); font-weight: 700; font-size: 1.5rem; }



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

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












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


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

:where(#s1_home, #s1_single_nastri) .container { align-items: center; }


.video_home { transform: translate(30%, 10%); }
.video_home img, .video_home video { object-fit: contain; }



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

.sec_img video, .sec_img picture > img { border-radius: 1rem; }
.sec_img video { height: 100%; width: 100%; }



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

.wrapper_prod { gap: 2rem; }
.card_home { border-radius: 1rem; overflow: hidden; }

.card_home .intro { background-color: rgb(var(--white-rgb) / 5%); backdrop-filter: blur(1rem); padding: 1.5rem .5rem; transition: .25s ease; }
.card_home .intro h3 { font-size: 1.5rem; font-weight: 700; }
.card_home .btn_wrp { opacity: 0; margin-top: 1rem }
.card_home .text { padding: 2rem; padding-top: 1rem; }
.card_home .text p { font-size: 1.125rem; }
.card_home .text strong { font-size: 1.5rem; line-height: 1.125; transition: .25s ease; }



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

.box_ico { gap: 1rem; }
.box_ico .ico { border-radius: 5rem; border: 1px solid var(--white); padding: .875rem; width: 4.5rem; }




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

.elenco_servizi { border-right: 1px solid rgb(var(--white-rgb) / 50%); }
.elenco_servizi p { padding-bottom: 1rem; margin-bottom: 3rem; border-bottom: 1px solid rgb(var(--white-rgb) / 50%); }
.elenco_servizi p span { display: inline-block; margin-right: 2rem; font-size: 75%; }


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

#swiper_settori { padding: 0 2rem; }

.card_settore picture { border-radius: 1rem; }
.card_settore h3 { font-size: 1.25rem; color: var(--blue); text-transform: uppercase; font-weight: 600; padding: 1rem 0; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION 8 ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

#sec_ct { border-top: 4px solid var(--blue); }

.text_scroll { white-space: nowrap; overflow: hidden; }
.text_scroll .ticker-items { white-space: nowrap; }
.text_scroll .ticker-items img {}





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


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

.sec_std + .sec_std .container { flex-direction: row; }


.wrapper_ico_comp { padding: 4rem 0; border-left: 1px solid rgb(var(--white-rgb) / 50%); }
.wrapper_ico_comp .box_ico:first-of-type { border-top: 1px solid rgb(var(--white-rgb) / 50%); }
.wrapper_ico_comp .box_ico { padding: 2rem; border-bottom: 1px solid rgb(var(--white-rgb) / 50%); }
.wrapper_ico_comp .box_ico .flex-l { gap: .75rem; }
.wrapper_ico_comp .box_ico .flex-l p { font-weight: 700; }
.wrapper_ico_comp .box_ico .text p { font-size: 1rem; }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE NASTRI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Sec 5 */
.wrapper_bottom { padding-top: var(--c2o); margin-top: var(--c2o); border-top: 1px solid rgb(var(--white-rgb) / 50%); }


/* Sec 3 */
.wrapper_applicazioni { display: grid; gap: 2rem; grid-template-columns: 1fr 1fr; }
.wrapper_applicazioni .app { text-align: center; }
.wrapper_applicazioni .app img { height: 4rem; width: 4rem; margin-bottom: 1rem; }
.wrapper_applicazioni .app p { font-size: 1rem; font-weight: 700; }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE PROFILI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/

/* Sec 4 */
.wrapper_processo { display: grid; gap: 2rem; grid-template-columns: 1fr 1fr; }
.box_proc .quadrato { background-color: var(--blue); padding: 2rem; border-radius: 1rem; margin-bottom: 1rem; }
.box_proc .quadrato img { width: auto; height: 6rem; }
.box_proc p { font-weight: 600; font-size: 1.125rem; }





/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ TEMPLATE CONTATTI ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/
/* Mappa */
#map_frame { min-height: 25rem; z-index: 1; }
#map_frame .leaflet-control-attribution { display: none; }

.wrapper_mappa { border-radius: 1rem; overflow: hidden; }

.info_wrapper { padding: 2rem; background-color: var(--blue); }

.box_ct { margin-bottom: 2.25rem; gap: .75rem; }
.box_ct a { font-size: 1.125rem; font-weight: 600; line-height: 1.125; }
.box_ct a:hover { opacity: .5; }
.box_ct svg { width: 1.5rem; height: 2rem; }
.box_ct svg path { fill: var(--white); }







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


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




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

/* Search & Filter */

/* Terms Loop */

/* Posts Loop */
.s2_archive .grid { grid-template-columns: 1fr; grid-gap: 2em 1em; }

/* Custom pagination */
.pagination {}

/* Load More */




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION [...] ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








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


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

#s1_single_nastri .video_home { transform: translate(30%, 10%) scale(.95); }



.wirframe { position: absolute; bottom: 0; right: 0; height: 80%; transform: translate(15%, -15%); opacity: .5 }
.wirframe img { object-fit: contain; }


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

#s2_single .sec_img { margin-top: var(--c5o); }



/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION RELATED ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ SECTION [...] ∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞*/








/**
 *
 *  █▀▀  ▄▀▀▄  █▀▀▄  █▄ ▄█
 *  █▀▀  █  █  █▐█▀  █ █ █
 *  ▀     ▀▀   ▀ ▀▀  ▀   ▀ - 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); line-height: 1;
}
#form .wpforms-field input::placeholder, #form .wpforms-field textarea::placeholder { color: var(--white); opacity: 0; }

#form .wpforms-field:not(.wpforms-field.wpforms-field-checkbox) label { cursor: pointer; font-size: 1rem; font-weight: 400; color: var(--white); opacity: 1; transform: translate(0, 1.5rem); transform-origin: left; transition: .25s ease; }
#form .wpforms-field:not(.wpforms-field.wpforms-field-checkbox).up label { transform: translateY(0) scale(.75); opacity: .75; }

#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"] { padding: 10px; border-color: var(--white); background: transparent no-repeat center / 18px; }
#form .wpforms-field.wpforms-field-checkbox li input[type="checkbox"]:checked { background-color: var(--white); }
#form .wpforms-field.wpforms-field-checkbox li label { color: var(--white); }
#form .wpforms-field.wpforms-field-checkbox li label a:hover { color: var(--grey); }

#form .wpforms-container .wpforms-required-label { color: #840000; }

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

#form button[type=submit] { background: transparent; border: unset; position: relative; display: inline-block; padding: .375rem 1.25rem; font-size: 1.25rem; font-weight: 700; color: var(--blue); }
#form button[type=submit] span { position: relative; }
#form button[type=submit]::before, #form button[type=submit]::after { content: ""; width: .75rem; height: .75rem; border-radius: 5rem; background-color: var(--white); position: absolute; left: 0; top: 50%; transform: translate(0, -50%); transition: .25s ease; }

#form button[type=submit]:hover::before { width: 100%; height: 100%; top: 50%; left: -.5rem; }
#form button[type=submit]:hover::after { background-color: var(--blue); }






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


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

#s1_grazie {}




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

#s1_404 { background-color: var(--bkg_color); }

#s1_404 .s1_title h1 { font-size: 2rem; }
#s1_404 .s1_title p { font-size: 1.1rem; }
#s1_404 .s1_title .link { display: inline-block; padding: 0.9rem 1.7rem; border: 2px solid var(--btn_color); border-radius: 0.6rem; font-size: 1rem; color: var(--btn_color); }
#s1_404 .s1_title .link:hover { background-color: var(--btn_color); color: var(--btn_color_hover); transform: scale(1.05); }




/*∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞ 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 { 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; }


	/*∞∞∞∞∞∞ NASTRI ∞∞∞∞∞∞*/
	/* Sec 3 */
	.wrapper_applicazioni { grid-template-columns: 1fr 1fr 1fr; }

}



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

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


	.card video { transform: translate(-50%, -60%) scale(1.25); }


	/*∞∞∞∞∞∞ HEADER ∞∞∞∞∞∞*/
	#main_nav .head_menu {
		display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
		position: absolute; top: calc( 72px + ( 120 - 72 ) * ( (100vw - 320px) / 1600 ) ); left: 0; width: 100%; height: 100%; border-top: 1px solid rgb(var(--white-rgb) / 50%); 
	}
	#main_nav .head_menu li { border-left: 1px solid rgb(var(--white-rgb) / 50%); position: relative; text-align: center; }
	#main_nav .head_menu li:first-of-type { border-left: 0; }
	#main_nav .head_menu li a {
		position: absolute; left: 50%; bottom: 0; padding-bottom: 22rem; transform: translate(-50%, 0); 
		width: 100%; height: 100%; display: flex; align-items: flex-end; justify-content: center; 
		transition: background-color .125s ease;
	}
	#main_nav .head_menu li a::before {
		content: ""; width: 100%; height: 20rem; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); background-color: var(--blue); transition: .25s ease; z-index: -1; 
		background-repeat: no-repeat; background-size: cover; background-position: center;
	}
	#main_nav .head_menu li a::after {
		content: ""; width: 3rem; height: 3rem; position: absolute; bottom: 18rem; left: 50%; transform: translateX(-50%); transition: .25s ease; z-index: -1; 
		background-image: url(../images/svg/arrow.svg); background-repeat: no-repeat; background-size: cover; background-position: center; opacity: 0;
	}




	#main_nav .head_menu li a:hover { background-color: var(--blue); transition: background-color .25s ease .05s; }
	#main_nav .head_menu li a:hover::before { height: 100vh; mix-blend-mode: multiply; }
	#main_nav .head_menu li a:hover::after { opacity: 1; }

	

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

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

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



	/*∞∞∞∞∞∞ HOME ∞∞∞∞∞∞*/
	/* Sec 1 */
	:where(#s1_home, #s1_single_nastri) .container { align-items: flex-end; } 

	/* Sec 3 */
	.wrapper_prod { grid-template-columns: 1fr 1fr; }
	.card_home:hover .intro { background-color: var(--blue); }
	.card_home:hover .btn_wrp { opacity: 1; }
	.card_home:hover strong { color: var(--blue); }

	/* Sec 7 */
	#swiper_settori { padding-left: var(--c5o); }
	#swiper_settori .swiper-wrapper { gap: 1rem; }
	#swiper_settori .card_settore { width: 28vw; }




	/*∞∞∞∞∞∞ CONTATTI ∞∞∞∞∞∞*/
	.wrapper_mappa { display: grid; grid-template-columns: .375fr 1fr; }




	/*∞∞∞∞∞∞ TEMPLATE PAGE ∞∞∞∞∞∞*/
	.elenco_cosa { display: grid; grid-template-columns: .9fr 1fr; gap: 0 var(--c5o); padding-top: 5vh; padding-bottom: 5vh; }
	.elenco_cosa .img_wrapper picture { position: absolute; top: 0; left: 10%; }
	.elenco_cosa .img_wrapper picture:nth-of-type(1) {}


	/*∞∞∞∞∞∞ TEMPLATE PROFILI ∞∞∞∞∞∞*/
	/* Sec 4 */
	.wrapper_processo { grid-template-columns: 1fr 1fr 1fr 1fr; }



	/*∞∞∞∞∞∞ SINGLE NASTRI ∞∞∞∞∞∞*/
	/* Sec 1 */
	#s1_single .h80 { min-height: 100vh; }

	/* Sec 3 */
	.wrapper_slider { padding: 0; }
	.wrapper_slider .nav_btn { display: block; }

	/* Sec 2 */
	#s2_single .sec_img { transform: scale(1.5); transform-origin: right; }
	#s2_single .text { padding-left: 0 }

}






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

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






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

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



	/*∞∞∞∞∞∞ NASTRI ∞∞∞∞∞∞*/
	/* Sec 3 */
	.wrapper_applicazioni { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }

}






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

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






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

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



