/*Classi trasversali*/
		
		body {
            font-family: Arial, sans-serif;
            background-color: #fcfcfc;
			animation: fadeInAnimation ease 0.5s;
			animation-iteration-count: 1;
			animation-fill-mode: forwards;
        }
		
		 footer {
            background-color: #f8f9fa;
            border-top: 1px solid #dee2e6;
            font-family: 'Rockwell Nova', sans-serif;
        }
		
		@keyframes fadeInAnimation {
			0% { opacity: 0; }
			100% { opacity: 1; }
		}

        .brand-title {
            color: red;
			font-family: "Rockwell Nova", sans-serif;
			font-style: italic;
			font-weight: bold;
            text-transform: uppercase;
            letter-spacing: 1px;
			white-space: normal;
			font-size: 1.25rem;   
        }
		
		.navbar-brand {
			display: flex;
			align-items: center;
			max-width: 75%; 
}

        .navbar-brand img {
            max-height: 70px;
        }

        .nav-link {
            font-family: 'Rockwell Nova', sans-serif;
            color: #333 !important;
        }

		
		.carousel-item img {
            height: 75vh;
            object-fit: cover;
        }

        .section-title {
            font-family: 'Rockwell Nova', sans-serif;
            border-bottom: 2px solid #333;
            display: inline-block;
            margin-bottom: 2rem;
            padding-bottom: 5px;
        }
		
		.whatsapp-float {
			position: fixed;
			width: 60px;
			height: 60px;
			bottom: 20px;
			right: 20px;
			background-color: #25d366;
			color: #FFF;
			border-radius: 50px;
			text-align: center;
			font-size: 30px;
			box-shadow: 2px 2px 10px rgba(0,0,0,0.2);
			z-index: 1000;
			display: flex;
			align-items: center;
			justify-content: center;
			transition: all 0.3s ease;
		}

		.whatsapp-float:hover {
			transform: scale(1.1);
			color: #FFF;
			background-color: #128c7e;
		}

		.whatsapp-pulse {
			animation: pulse-green 2s infinite;
			border-radius: 50%;
		}

		@keyframes pulse-green {
			0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
			70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
			100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
		}
		
		.btn-back-to-top {
		  position: fixed;
		  bottom: 20px;
		  left: 20px; /* Lo mettiamo a sinistra per non sovrapporlo a WhatsApp che è a destra */
		  display: none; /* Nascondi inizialmente */
		  width: 45px;
		  height: 45px;
		  border-radius: 50%;
		  z-index: 1000;
		  transition: all 0.3s ease;
		  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
		}

		.btn-back-to-top:hover {
		  transform: translateY(-5px);
		}
		
		.navbar-nav .nav-link {
			position: relative;
			padding-bottom: 5px;
			transition: color 0.3s ease;
		}

		.navbar-nav .nav-link::after {
			content: '';
			position: absolute;
			width: 0;
			height: 3px;
			bottom: 0;
			left: 50%;
			background-color: #333; 
			transition: all 0.3s ease-in-out;
			transform: translateX(-50%);
		}

		.navbar-nav .nav-link:hover::after {
			width: 100%;
		}

		.navbar-nav .nav-link.active::after {
			width: 100%;
		}
		
/*Sezione "Home"*/	
	
		.feature-icon {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 3.5rem;
			height: 3.5rem;
			margin-bottom: 1.5rem;
			background-color: #f8f9fa;
			color: #333;
			border-radius: 50%;
			transition: 0.3s;
		}

		.feature-box:hover .feature-icon {
			background-color: #333;
			color: #fff;
			transform: scale(1.1);
		}

		.feature-box h4 {
			font-family: 'Rockwell Nova', sans-serif;
			font-weight: bold;
		}
		
		.cta-section {
			background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('img/home1.jpg');
			background-size: cover;
			background-position: center;
			background-attachment: fixed; 
			color: white;
			padding: 80px 0;
		}

		.cta-title {
			font-family: 'Rockwell Nova', sans-serif;
			font-weight: bold;
			font-size: 2rem;
			margin-bottom: 1.5rem;
		}

		.btn-cta {
			font-family: 'Rockwell Nova', sans-serif;
			padding: 12px 35px;
			font-weight: bold;
			text-transform: uppercase;
			letter-spacing: 1px;
			transition: 0.3s;
			border-radius: 50px; 
		}

		.btn-cta:hover {
			transform: translateY(-3px);
			box-shadow: 0 5px 15px rgba(255, 255, 255, 0.3);
		}
		
		.accordion-button:not(.collapsed) {
			background-color: #f8f9fa;
			color: #000;
			box-shadow: none;
		}

		.accordion-button:focus {
			box-shadow: none;
			border-color: rgba(0,0,0,.125);
		}

		.accordion-button {
			font-family: 'Rockwell Nova', sans-serif;
		}
		
		.partners-section {
			padding: 60px 0;
			background-color: #ffffff;
			border-top: 1px solid #eee;
		}

		.grayscale-logo {
			filter: grayscale(100%);
			opacity: 0.6;
			transition: all 0.3s ease-in-out;
			max-height: 55px; /* Altezza ottimale per loghi SVG/PNG */
			width: auto;
			display: block;
			margin: 0 auto;
		}

		.grayscale-logo:hover {
			filter: grayscale(0%);
			opacity: 1;
			transform: scale(1.08);
		}

		.partners-title {
			font-family: 'Rockwell Nova', sans-serif;
			font-size: 0.9rem;
			letter-spacing: 2px;
			color: #888;
			margin-bottom: 40px;
			text-transform: uppercase;
		}

/*Sezione "Chi siamo"*/

        .content-box {
            background: white;
            padding: 2rem;
            border-radius: 10px;
            box-shadow: 0 4px 15px rgba(0,0,0,0.05);
        }

        .titolare-img {
            max-width: 300px;
            border-radius: 8px;
            transition: transform 0.3s ease;
        }

        .titolare-img:hover {
            transform: scale(1.02);
        }
 
/*Sezione "Prodotti"*/
        .product-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none;
            height: 100%;
            cursor: pointer;
        }
		
        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
        }
		
        .product-card img { 
			height: 250px; 
			object-fit: cover; 
		}
        
        .no-photo { 
			height: 250px; 
			display: flex; 
			align-items: center; 
			justify-content: center; 
			background-color: #e9ecef; 
			color: #6c757d; 
			font-style: italic; 
			text-align: center; 
			padding: 20px; 
		}

        .modal-carousel-img { 
			height: 500px; 
			object-fit: contain; 
			background-color: #000; 
		}
		
		.modal-body img {
			max-height: 70vh;
			object-fit: contain;
			width: auto;
		}
		
/*Sezione "Contatti"*/

		.contact-card {
            border: none;
            border-radius: 15px;
            transition: transform 0.3s ease;
            background: white;
        }
		
        .contact-icon {
            font-size: 2.5rem;
            color: #333;
            margin-bottom: 1rem;
        }
		
        .table-orari {
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 0 4px 12px rgba(0,0,0,0.05);
        }
		
        .table-orari thead {
            background-color: #333;
            color: white;
        }
		
        .map-container {
            border-radius: 15px;
            overflow: hidden;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
            line-height: 0;
        }
		
/*Sezione "Mobile"*/		
								
		@media (min-width: 768px) {
			.brand-title {
				font-size: calc(1.3rem + 0.6vw); 
				white-space: nowrap; 
			}
		}