@charset "UTF-8";

/* ==========================================================================
   Contenuto fluido semplice
   Nota: per i contenuti di tipo fluido è necessario rimuovere gli attributi di altezza e larghezza dal codice HTML
   http://www.alistapart.com/articles-images/ 
   ========================================================================== */
img, object, embed, video {
	max-width: 100%;
}
/* IE 6 non supporta max-width, quindi viene usata per impostazione predefinita la larghezza 100% */
.ie6 img {
	width:100%;
}

img {
	max-width:100%; 
	height:auto;
	width: auto;
	margin:0;
	padding:0;
}

.centrato {
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

.full {
	margin-left:auto;
	margin-right:auto;
}

.clear {
	clear:both;
}

a {
	text-decoration:none;
	color:inherit;
	transition: all 0.25s ease;
}
a:hover {
	color:#F28C28;
	text-decoration:none;
}

ul {
	margin:0;
	padding:0;
}

body {
	margin:0;
	padding:0;
	background: linear-gradient(to bottom, #FFFFFF, #1b1f23);
	font-family: 'Nunito Sans', sans-serif;
	color:#E5E7EB;
	line-height:1.6;
}

/* ==========================================================================
   Stili Slider
   ========================================================================== */
.rslides {
	position: relative;

	list-style: none;
	overflow: hidden;
	width: 100%;
	padding: 0;
	margin: 0;
}

.rslides li {
	-webkit-backface-visibility: hidden;
	position: relative;
	display: none;
	width: 100%;
	left: 0;
	top: 0;
}

.rslides li:first-child {
	position: relative;
	display: block;
	float: left;
}

.rslides img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
}

/* ==========================================================================
   Header & Menu Base (Mobile First)
   ========================================================================== */
	
.intestazione {
	z-index:12;
	padding:20px 0;
	position: relative; /* Fondamentale per ancorare il menu absolute */
}

#sfumatura {
	position: absolute;
	background: rgba(17,19,21,0.88);
	backdrop-filter: blur(8px);
	top:0;
	width:100%;
	z-index:9999;
	opacity:0.7;
}
#videox {
	margin-top:150px;
}

.logo {
	text-align:center;
}

.menu {
	color:#FFFFFF;
	text-transform:uppercase;
	font-size:0.9em;
	letter-spacing:0.08em;
	font-weight:600;
	padding-top:20px;
	text-align:right;
	
	/* Proprietà per l'effetto discendente mobile */
	display: none; 
	width: 100%;
	background: #1E2226; /* Sfondo scuro per garantire leggibilità immediata */
	position: absolute;
	top: 80px; 
	left: 0;
	padding: 20px;
	box-shadow: 0 0px 25px rgba(0,0,0,0.5);
	z-index: 999;
	border-radius: 0 0 16px 16px;
}

/* Classe attivata da JavaScript al click */
.menu.attivo {
	display: block; 
}


.menu li {
	font-weight:600;
	padding:10px 18px;
	list-style:none;
	text-align:right;
	border-bottom:1px solid rgba(255,255,255,0.08);
	transition: all 0.3s ease;
}

.menu li:hover {
	transition: all 0.3s ease;
	color:#F28C28;
}

/* ==========================================================================
   Gestione Sottomenù Universale (Inizialmente Nascosti - Mobile First)
   ========================================================================== */
.hidetoggle {
    display: none; /* Nasconde i sottomenù all'avvio */
    width: 100%;
}

/* Struttura del sottomenù specifico per il Mobile */
div.menu li .hidetoggle, 
.sottomenu {
    background-color: #111315; /* Grigio molto scuro per staccarsi dal blocco padre */
    padding: 10px 0;
    margin: 10px 0 0 0;
    list-style: none;
    border-radius: 8px;
    border-left: 3px solid #D97706; /* Linea decorativa arancione sul lato */
    position: static; /* Impedisce di fluttuare via o nascondersi su mobile */
    box-shadow: none;
    width: 100%;
}

/* Singole voci interne al sottomenù mobile */
div.menu li ul.hidetoggle li, 
.sottomenu li {
    display: block; 
    width: 100%;
    text-align: left;
    padding: 10px 20px;
    font-size: 0.9em;
    border-bottom: none; /* Rimuove la riga bianca del menù principale */
    background: none;
}

/* Link interni del sottomenù mobile */
div.menu li ul.hidetoggle li a, 
.sottomenu li a {
    color: #E5E7EB; /* Testo chiaro ad alta visibilità */
    display: block;
    width: 100%;
    text-transform: none; /* Evita il tutto maiuscolo per i dettagli */
}

/* Hover sui link interni del sottomenù mobile */
div.menu li ul.hidetoggle li a:hover, 
.sottomenu li a:hover,
div.menu li ul.hidetoggle li:hover a {
    color: #D97706; /* Testo arancione sull'hover */
    background: none;
}

.min {
	text-transform:lowercase;
}


#lang {
	color:#D97706;
	float:right;
	font-size:0.7em;
	font-weight:bold;
}

/* ==========================================================================
   Contenuti di Pagina (Stili Generici)
   ========================================================================== */
#banner {
	z-index:1;
}

.macchine {
	background-color:#20252B;
	color:#FFFFFF;
	z-index:12;
	position:relative;
	padding:20px 2% 5px 2%;
	border-radius:16px;
	border:1px solid #fff;
	box-shadow:0 10px 35px rgba(0,0,0,0.25);
}

.macchine .item {
	margin:4px;
}

.freccia {
	padding:50px 2%;
	float:left;
}

.macchine h1 {
	font-size:2em;
	font-weight:700;
	opacity:0.3;
}

.immagineleft {
	width:100%;
	margin-top:20px;
	margin-bottom:20px;
}

.titolo h1, .titolo2 h1, .titolo3 h1, .titolo4 h1 {
	color:#F28C28;
	line-height:1.1;
	padding:20px 10% 0 10%;
	font-weight:600;
	margin-left:-20px;
	text-align:center;
	letter-spacing:-1px;
}

.titolo h3, .titolo2 h3, .titolo3 h3, .titolo4 h3 {
	color:#16BDC7;
	padding:0 10%;
	font-weight:400;
	font-style:italic;
	font-size:1.5em;
	margin-top:-10px;
	line-height:1.3em;
}

.titolo, .titolo2, .titolo3, .titolo4 {
	background-color:#1E2226;
	opacity:0.7;
	border-radius:16px;
	border:1px solid #fff;
	box-shadow:0 10px 35px rgba(0,0,0,0.25);
}

.entra {
	margin:10px 10% 30px 10%;
	padding:5px;
	background-color:#7D7D7D;
	color:#FFF;
	font-weight:700;
	float:left;
	border-radius:16px;
	border:1px solid #fff;
	box-shadow:0 10px 35px rgba(0,0,0,0.25);
}

video {
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	z-index:-100;
	visibility: visible;
	position:relative;
}

#owl-example1 .item {
    text-align:center;
	padding:0 20%;
}

#owl-example1 .item a{
    display:block;
    text-decoration:none;
    color:#CCC;
}

#owl-example1 .item img{
    display:block;
    margin:0 auto 10px;
}

#owl-example1 .material-title{
    display:block;
    font-size:16px;
    font-weight:600;
    line-height:1.3;
}

.materials {
	background-color:#20252B;
	color:#FFF;
	z-index:12;
	position:relative;
	padding:20px 2% 5px 2%;
	display:none;
}

.materials h1 {
	font-size:2em;
	font-weight:700;
	opacity:0.3;
}

#download {
	background-image:url(../img/fondo-brochure.jpg);
	padding:100px 0;
	background-size:contain;
	background-repeat:no-repeat;
	position:relative;
}

.videoxx {
	background-color:#20252B;
	color:#FFF;
	padding:20px 2% 20px 2%;
	width:95%;
	max-width:auto;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}

.videovimeo {
	width:100%;
	padding-bottom:20px;
}

.videoxx h1 {
	font-size:2em;
	font-weight:700;
	opacity:0.3;
	line-height:0.2;
	text-align:left;
}

#owl-example2 .item {
	padding:0 5%;
}

.contatti {
	color:#FFF;
	background-color:#20252B;
	margin-top:0px;
	padding:20px 2% 20px 2%;
	margin-bottom:20px;
	border-radius:16px;
	border:1px solid #fff;
	position:relative;
}

#contattisin {
	padding-top:10px;
}

#contattisin h3 {
	color:#D97706;
	line-height:0.3;
}

.contatta {
	margin:50px 0 30px 13%;
	padding:5px;
	background-color:#D97706;
	color:#FFF;
	font-weight:700;
	float:left;
	text-align:center;
	border-radius:16px;
	border:1px solid #fff;
}

#interna {
	background-color:#20252B;
	color:#22FF22;
	z-index:12;
	position:relative;
	padding:20px 2% 20px 2%;
	border-radius:16px;
	border:1px solid #fff;
}

#interna h1 {
	font-size:2.5em;
	font-weight:700;
	opacity:0.3;
	line-height:0.8;
}

#interna h2 {
	font-size:1.8em;
	font-weight:700;
	opacity:0.3;
}

#interna p {
	color:#EEE;
	padding:0 15%;
	line-height:1.5em;
	text-align:justify;
	font-size:1.1em;
}

	#interna li {
		color:#EEE;
	}

.macchina {
	float:left;
	padding:0 5% 20px 0;
}

.link {
	padding-left:2%;
	font-size:0.9em;
	font-weight:bold;
	text-transform:uppercase;
}

.link ul {
	list-style:none;
}

.link img {
	width:9%;
	padding-right:2%;
}

.imgmacchine {
	padding:30px 0;
}

h4 {
	color:#D97706;
}

#interna h3 {
	color:#D97706;
	padding-left:15%;
	font-size:1em;
	margin-bottom:0;
	padding-bottom:0;
}

.piu {
	padding-left:15%;
	list-style:url(../img/piu.png);
	list-style-position:inside;
}

.imggallery {
	float:left;
	width:32%;
	padding-right:1%;
}

.orange {
	color:#d2d906;
	transition: opacity 0.5s;
}

.orange:hover {
	opacity:0.5;
}

.trituratore01 { background-image:url(../img/rollover/TPm.png); background-size:contain; background-repeat:no-repeat; padding:0; }
.trituratore02 { background-image:url(../img/rollover/TP.png); background-size:contain; background-repeat:no-repeat; padding:0; }
.trituratore03 { background-image:url(../img/rollover/htp.png); background-size:contain; background-repeat:no-repeat; padding:0; }
.trituratore04 { background-image:url(../img/rollover/mt.png); background-size:contain; background-repeat:no-repeat; padding:0; }
.trituratore05 { background-image:url(../img/rollover/helyos.png); background-size:contain; background-repeat:no-repeat; padding:0; }
.trituratore06 { background-image:url(../img/rollover/mp.png); background-size:contain; background-repeat:no-repeat; padding:0; }

#interna ul {
	padding:0 15%;
	list-style:url(../img/piu.png);
}

.icon {
	float:left;
	width:5%;
	text-align:right;
	padding-left:7%;
}

.download {
	position:relative;
	padding-bottom:20px;
}

.pointer {
	cursor:pointer;
}
#
hamburger {
	display:block;
	text-align:right;
	font-size:2em;
	color:#FFF;
	padding:10px 20px;
	cursor:pointer;
}

/* ==========================================================================
   MEDIA QUERY: Tablet / Schermi Medi (>= 790px)
   ========================================================================== */
@media only screen and (min-width: 790px) {
	#hamburger {
		display: none; /* Nasconde il pulsante mobile */
	}

	#sfumatura {
		/*background: url(../img/fondo-menu.png) repeat-x;*/
		background:111315;
		position:absolute;
		top:0;
		width:100%;
		z-index:20;
		border-bottom: none;
		opacity:0.7;
	}
#videox {
	margin-top:0px;
}

	.logo {
		float:left;
		width:15%;
		text-align:center;
	}

	.menu {
		display: block; /* Ripristina la visibilità fissa su desktop */
		position: static;
		background: none;
		box-shadow: none;
		padding: 0;
		float:left;
		width:84%;
		color:#FFF;
		text-transform:uppercase;
		font-size:0.70em;
		letter-spacing:0.1em;
		padding-top:60px;
		text-align:right;
		
	}

	.menu ul {
		text-align:right;
	}

	.menu li {
		display:inline-block;
		position: relative;
		font-weight:700;
		padding:0 0 0 2.6%;
		float:left;
		border-bottom:none;
		overflow:visible;
	}
	
	.menu li .hidetoggle ul li {
		display:block !important;
		float:none !important;
		width:100% !important;
		padding:0 !important;
		margin:0 !important;
		text-align:left !important;
		border:none !important;
	}

	.menu li .hidetoggle ul li a {
		display:block !important;
		padding:12px 18px !important;
		color:#FFFFFF !important;
		background:none !important;
		font-size:0.9em !important;
		text-transform:none !important;
		white-space:nowrap !important;
	}

	.menu li .hidetoggle ul {
		display:block !important;
		margin:0 !important;
		padding:0 !important;
		list-style:none !important;
	}


	/* Struttura e Posizionamento Sottomenù a comparsa su Desktop */
	div.menu li .hidetoggle, 
	.sottomenu {
		display: none;
		position: absolute;
		top:calc(100% - 1px);
		left: 0;
		width: 240px;
		background: #F28C28;
		z-index: 99999;
		border-radius: 4px;
		box-shadow: 0 10px 25px rgba(0,0,0,0.45);
		padding: 10px 0;
		margin-top:-2px;
	}

	.menu li .hidetoggle .sottomenu {
		list-style:none;
		background: #2B3138;
		opacity:0.6;
		margin:0;
		width:calc(100% - 4px);
		padding:0;
		border:2px solid #F28C28;
	}

	.menu li .hidetoggle .sottomenu li {
		
		width:100%;
		padding:0;
		margin:0;
		float:none;
		text-align:left;
	}

	.menu li .hidetoggle .sottomenu li a {
		
		padding:12px 18px;
		color:#FFFFFF;
		font-size:0.9em;
		text-transform:none;
		background:none;
	}

	.menu li .hidetoggle .sottomenu li a:hover {
		background:#2B3138;
		color:#F28C28;
	}

	/* Mostra la tendina al passaggio del mouse solo su Desktop */
	.menu li:hover > .hidetoggle {
		display: block !important;
	}

	/* Singole voci all'interno del sottomenù Desktop */
	div.menu li ul.hidetoggle li, 
	.sottomenu li {
		float: none;
		display: block;
		width: 100%;
		padding: 10px 15px;
		text-align: left;
	}

	div.menu li ul.hidetoggle li a, 
	.sottomenu li a {
		color: #4D4D4D; /* Stile originale scuro su blocco grigio chiaro */
		background-color: transparent;
	}
	
	div.menu li ul.hidetoggle li:hover, 
	.sottomenu li:hover {
		background-color: #cfd3cf;
	}

	div.menu li ul.hidetoggle li:hover a, 
	.sottomenu li:hover a {
		color: #D97706;
	}

	.macchine {
		background-color:#20252B;
		color:#FFF;
		z-index:12;
		margin:60px auto;
		position:relative;
		padding:20px 2% 5px 2%;
		margin-bottom:-100px;
	}

	.macchine h1 {
		font-size:5em;
		font-weight:700;
		opacity:0.3;
		line-height:0.7;
	}

	#interna {
		margin:60px auto;
	}

	.immagineleft {
		width:100%;
		margin-top:50px;
		margin-bottom:100px;
	}

	.materials {
		background-color:#20252B;
		color:#FFF;
		z-index:12;
		margin:60px auto;
		position:relative;
		padding:20px 2% 5px 2%;
		display:block;
		border-radius:16px;
		border:1px solid #fff;
	}

	.materials h1 {
		font-size:5em;
		font-weight:700;
		opacity:0.3;
		line-height:0.2;
	}

	#videox {
		margin-bottom:10px;
	}

	.titolo3, .titolo4 {
		width:30%;
		background-color:#20252B;
		margin-left:70%;
	}

	.titolo3 h1, .titolo4 h1 {
		color:#D97706;
		font-size: clamp(14px, 4vw, 36px);
		line-height:1;
		padding:40px 10% 0 10%;	
	}

	.titolo3 h3, .titolo4 h3 {
		color:#16BDC7;
		padding:0 10%;
		font-weight:400;
		font-style:italic;
		font-size:1.5em;
		margin-top:-10px;
		line-height:1.3em;
	}

	#contattisin {
		float:left;
		width:50%;
		padding-right:25%;
		padding-top:10px;
	}

	#contattids {
		float:left;
		width:25%;
	}

	.contatta {
		margin:50px 0 30px 13%;
		padding:5px;
		background-color:#D97706;
		color:#FFF;
		font-weight:700;
		float:left;
		width:auto;
		text-align:center;
		border-radius:16px;
		border:1px solid #fff;
	}

	#download {
		background-size:cover;
		background-repeat:no-repeat;
	}

	.videoxx {
		background-color:#20252B;
		color:#FFF;
		margin-top:30px;
		padding:20px 2% 5px 2%;
		border-radius:16px;
		border:1px solid #fff;
	}

	.videoxx h1 {
		font-size:5em;
		font-weight:700;
		opacity:0.3;
		line-height:0.2;
	}

	.videovimeo iframe {
		float:left;
		width:100%;
		margin:20px 1%;
	}
	
	#interna {
		background-color:#20252B;
		color:#22FF22;
		z-index:12;
		margin:60px auto;
		position:relative;
		padding:20px 2% 20px 2%;
		margin-bottom:0px;
	}

	#interna h1 {
		font-size:5em;
		font-weight:700;
		opacity:0.3;
	}

	#interna h2 {
		font-size:3em;
		font-weight:700;
		opacity:0.3;
	}

	#interna p {
		color:#EEE;
		padding:0 15%;
		line-height:1.5em;
		text-align:justify;
		font-size:1.1em;
	}

	#interna li {
		color:#EEE;
	}

	.download {
		float:left;
		padding-right:3%;
		width:30%;
		padding-bottom:20px;
	}

	.link {
		float:left;
		width:35%;
		padding-left:15%;
		font-size:0.9em;
		font-weight:bold;
		text-transform:uppercase;
	}

	.imgmacchine {
		float:left;
		width:40%;
		padding:0 10% 0 0;
	}
}

/* ==========================================================================
   MEDIA QUERY: Desktop Standard (>= 900px)
   ========================================================================== */
@media only screen and (min-width: 900px) {
	.logo {
		float:left;
		width:20%;
	}

	.menu {
		float:left;
		width:79%;
		color:#FFF;
		text-transform:uppercase;
		font-size:0.75em;
		letter-spacing:0.1em;
		padding-top:45px;
	}

	.menu ul {
		margin:0;
		padding:0;
		text-align:right;
		width:100%;
	}

	.menu li {
		display:inline;
		font-weight:700;
		padding:0 0 0 2.6%;
		float:left;
	}

	#interna {
		margin:60px auto;
	}

	.titolo {
		z-index:100;
		background-color:#1E2226;
		margin-top:100px;
		margin-left:70%;
		opacity:0.7;
		border-radius:16px;
		padding-bottom:60px;	
		border:1px solid #fff;
		box-shadow:0 10px 35px rgba(0,0,0,0.25);
	}

	.titolo2 {
		background-color:#1E2226;
		width:32%;
		float:left;
		margin-top:190px;
		z-index:100;
		opacity:0.7;
		border-radius:16px;
		padding-bottom:-40px;
		box-shadow:0 10px 35px rgba(0,0,0,0.25);
	}
		
	.titolo3 {
		width:30%;
		background-color:#20252B;
		margin-left:70%;
		border-radius:16px;
		border:1px solid #fff;
		box-shadow:0 10px 35px rgba(0,0,0,0.25);
	}

	.titolo4 {
		width:30%;
		background-color:#10252B;
		margin-left:70%;
		z-index:100;
		opacity:0.7;
		border-radius:16px;
		margin-top:20px;
		box-shadow:0 10px 35px rgba(0,0,0,0.25);
	}

	.immagineleft {
		float:left;
		width:70%;
		margin-top:50px;
		margin-bottom:100px;
	}

	.immagineright {
		margin-left:10%;
		width:70%;
		margin-top:0px;
		margin-bottom:-400px;
	}

	.videoxx {
		background-color:#20252B;
		color:#FFF;
		margin-top:100px;
		margin-bottom:100px;
		padding:20px 2% 5px 2%;
	}

	.videoxx h1 {
		font-size:5em;
		font-weight:700;
		opacity:0.3;
		line-height:0.2;
	}

	.videovimeo {
		float:left;
		width:23%;
		margin:0 1%;
		padding:0;
	}

	.videovimeoonlyone {
		float:left;
		width:100%;
		margin:0 1%;
		padding:0;
	}
}

/* ==========================================================================
   MEDIA QUERY: Desktop Large (>= 1050px)
   ========================================================================== */
@media only screen and (min-width: 1050px) {
	.logo {
		float:left;
		width:30%;
	}

	.menu {
		float:left;
		width:69%;
		color:#FFF;
		text-transform:uppercase;
		font-size:0.75em;
		letter-spacing:0.1em;
		padding-top:45px;
		text-align:right;
	}

	.menu ul {
		margin:0 3%;
	}

	.menu li {
		display:inline;
		font-weight:700;
		padding:0 1.7% 0 1.7%;
		float:left;
	}

	.titolo2 {
		width:30%;
		float:left;
		margin-top:0px;
		z-index:100;
		border:1px solid #fff;
	}

	#interna {
		margin:60px auto;
	}
}

/* ==========================================================================
   MEDIA QUERY: Schermi XL (>= 1200px)
   ========================================================================== */
@media only screen and (min-width: 1200px) {
	.titolo2 {
		width:30%;
		float:left;
		margin-top:-500px;
		z-index:100;
		border:1px solid #fff;
	}

	#interna {
		margin:60px auto;
	}
	
	#interna {
		background-color:#20252B;
		color:#22FF22;
		z-index:12;
		margin:60px auto;
		position:relative;
		padding:0px 4% 0px 1%;
		margin-bottom:0px;
	}
}


.contact-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
}

.contact-form {
    width: 100%;
    max-width: 500px;

    display: flex;
    flex-direction: column;

    gap: 12px;

    background: #1f2937;
    padding: 30px;
    border-radius: 16px;
}

.contact-form h2 {
    color: white;
    text-align: center;
    margin-bottom: 10px;
}

.contact-form label {
    color: white;
    font-size: 15px;
}

.contact-form input,
.contact-form textarea {
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 10px;
    font-size: 16px;

    box-sizing: border-box;
}

.contact-form textarea {
    resize: vertical;
}

.contact-form button {
    margin-top: 10px;
    padding: 14px;
    border: none;
    border-radius: 10px;

    background: #6366f1;
    color: white;
    font-size: 16px;

    cursor: pointer;
    transition: 0.3s;
}

.contact-form button:hover {
    background: #4f46e5;
}
.map-container {
    width: 100%;
    margin-top: 20px;
}

.map-container iframe {
    width: 100%;
    height: 450px;

    border: 0;
    border-radius: 12px;
}

.seo-text{
    max-width:1200px;
    margin:40px auto;
    padding:20px;
    text-align:center;
}

.seo-text h2{
    font-size:32px;
    margin-bottom:20px;
    color:#FFF;
}

.seo-text p{
    font-size:18px;
    line-height:1.7;
    color:#555;
    margin-bottom:15px;
}
	
.news-section {
  position: relative;
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  overflow: hidden;
}

.overlay {
  width: 100%;
  height: 100%;
  backdrop-filter: blur(2px);
}

.news-container {
  max-width: 1200px;
  margin: auto;
}

.news-container h2 {
  text-align: center;
  font-size: 3rem;
  color: #2d2f8f;
  margin-bottom: 50px;
  font-family: Arial, sans-serif;
}

.news-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 3%;
}

.news-card {
  background: rgba(255, 255, 255, 0.72);
  border: 2px solid rgba(255,255,255,0.4);
  border-radius: 20px;
  padding: 10px;
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  transition: transform 0.3s ease,
			  box-shadow 0.3s ease;
}

.news-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.12);
}

.news-card .date {
  display: inline-block;
  margin-bottom: 5px;
  color: #ff3b3b;
  font-size: 0.9rem;
  font-weight: bold;
  letter-spacing: 1px;
}

.news-card h2 {
  color: #2d2f8f;
  margin-bottom: 5px;
  font-size: 1.4rem;
  font-family: Arial, sans-serif;
}

.news-card h3 {
  color: #ff2f8f;
  margin-bottom: 5px;
  margin-left: -45px;
  margin-right: 20px;
  font-size: 1.4rem;
  font-family: Arial, sans-serif;
}

.news-card p {
  color: #444;
  line-height: 1.7;
  font-size: 1rem;
  font-family: Arial, sans-serif;
}

@media (max-width: 768px) {
	

.news-container {
  max-width: 80%;
  margin: auto;
}

  .news-container h2 {
	font-size: 2.2rem;
  }

  .news-section {
	padding: 60px 15px;
  }
}

.job-list{
    margin-top:40px;
}

.job-card{
    border:1px solid #ddd;
    padding:25px;
    margin-bottom:0px;
    background:#aaa;
}

.job-card h3 {
  color: #000000;
  background: #ff0000;
  margin-left:0px;
  text-align:center;
  font-size: 0.8rem;
  font-family: Arial, sans-serif;
}

.job-card form{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin-top:20px;
}

.job-card input{
    padding:12px;
    border:1px solid #ccc;
}

.job-card button{
    background:#779977;
    color:#000000;
    border:none;
    padding:14px;
    cursor:pointer;
    font-weight:bold;
}

.job-card button:hover{
    opacity:.7;
}

.materials-icons{
    display:flex;
    justify-content:center;
    gap:25px;
    flex-wrap:wrap;
    margin:20px 0;
}

.material-item{
    text-align:center;
    width:100px;
}

.material-item img{
    width:40px; /* oppure la dimensione che preferisci */
    display:block;
    margin:0 auto 8px;
}

.material-item span{
    display:block;
    font-size:14px;
    font-weight:600;
    line-height:1.3;
}

.header-contact{
    display:flex;
    gap:25px;
    align-items:center;
}

.header-contact a{
    color:#EEE;
    text-decoration:none;
    font-size:10px;
    font-weight:600;
}

.header-contact a:hover{
    color:#d32f2f; /* oppure il colore del tuo sito */
}
/* ==========================================================================
   Banner / Pop-up "Sito in costruzione" Non Bloccante
   ========================================================================== */
.construction-banner {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 999999; /* Posizionato al di sopra degli altri elementi */
    pointer-events: none; /* Permette la navigazione/click sul sito sottostante */
}

.construction-content {
    pointer-events: auto; /* Riattiva i click unicamente sul banner e sul bottone OK */
    background-color: #1E2226;
    color: #FFFFFF;
    border: 2px solid #D97706; /* Richiama il colore arancione del tema */
    border-radius: 12px;
    padding: 15px 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    gap: 15px;
    max-width: 400px;
}

.construction-content p {
    margin: 0;
    font-size: 0.9em;
    line-height: 1.4;
}

#close-construction-btn {
    background-color: #D97706;
    color: #FFFFFF;
    border: none;
    padding: 8px 16px;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.2s ease;
    flex-shrink: 0;
}

#close-construction-btn:hover {
    background-color: #F28C28;
}

/* Adattamento per dispositivi mobili */
@media (max-width: 600px) {
    .construction-banner {
        left: 10px;
        right: 10px;
        bottom: 10px;
    }
    
    .construction-content {
        max-width: 100%;
        font-size: 0.85em;
    }
}
/* ==========================================================================
   Sezione Partner
   ========================================================================== */
.partners-section {
    background-color: #20252B;
    color: #FFFFFF;
    padding: 20px 2%;
    margin-bottom: 30px;
    border-radius: 16px;
    border: 1px solid #FFFFFF;
    box-shadow: 0 10px 35px rgba(0,0,0,0.25);
}

.partners-section h1 {
    font-size: 2em;
    font-weight: 700;
    opacity: 0.3;
    margin-bottom: 20px;
}

.partners-grid {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    padding: 10px 0;
}

.partner-item {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 180px;
    padding: 10px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    transition: transform 0.3s ease, background 0.3s ease, filter 0.3s ease;
}

.partner-item img {
    max-width: 100%;
    height: auto;
    filter: grayscale(0%); /* Effetto elegante: desaturati di base */
    transition: filter 0.3s ease;
}

/* Hover: attiva il colore del logo e solleva l'elemento */
.partner-item:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.1);
}

.partner-item:hover img {
    filter: grayscale(80%);
}

/* Adattamento titoli per desktop */
@media only screen and (min-width: 790px) {
    .partners-section h1 {
        font-size: 4em;
        line-height: 0.8;
    }
}