        body {
            font-family: 'Lato', sans-serif;
            scroll-behavior: smooth;
            background-color: #fdfbf7;
            color: #2d3748;
        }


        h1, h2, h3, h4 {
            font-family: 'Playfair Display', serif;
        }
        .bg-sage { background-color: #94a684; }
        .text-sage { color: #627254; }
        .border-sage { border-color: #94a684; }
        
        /* Reveal Animation */
        .reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }
        
        /* Dropdown Menu Desktop */
        .dropdown:hover .dropdown-menu { display: block; }
        .dropdown-menu {
            display: none;
            position: absolute;
            background-color: white;
            min-width: 260px;
            box-shadow: 0px 8px 16px rgba(0,0,0,0.08);
            z-index: 100;
            border-radius: 1rem;
            padding: 0.75rem 0;
            border: 1px solid rgba(148, 166, 132, 0.1);
        }
        .dropdown-menu a {
            color: #4a5568;
            padding: 0.6rem 1.25rem;
            display: block;
            font-size: 0.85rem;
            transition: all 0.2s;
        }
        .dropdown-menu a:hover {
            background-color: #f3f4f1;
            color: #627254;
            padding-left: 1.5rem;
        }

        /* Active Page Indicator (Livello 1) */
        .nav-active {
			
            color: #627254 !important;
            font-weight: 700;
            position: relative;
        }
        .nav-active::after {
            content: '';
            position: absolute;
            bottom: 4px;
            left: 12px;
            right: 12px;
            height: 2px;
            background-color: #94a684;
            border-radius: 2px;
        }

        /* Classe Specifica per Sottomenu Attivo (Desktop) */
        .submenu-active {
            background-color: #f3f4f1;
            color: #627254 !important;
            font-weight: 700;
            padding-left: 1.5rem !important;
            position: relative;
        }
        .submenu-active::before {
            content: '•';
            position: absolute;
            left: 0.6rem;
            color: #94a684;
        }

        /* Classe Specifica per Sottomenu Attivo (Mobile) */
        .mobile-submenu-active {
            color: #627254 !important;
            font-weight: 700;
            background-color: rgba(148, 166, 132, 0.15);
            border-radius: 0.5rem;
        }


        .mobile-nav-active {
            color: #627254 !important;
            font-weight: 700;
            background-color: rgba(148, 166, 132, 0.1);
            border-radius: 0.75rem;
        }



        .hero-bg {
           
            background-size: cover;
            background-position: center;
            background-attachment: fixed;
        }

        .section-title-underline {
            width: 60px;
            height: 3px;
            background-color: #94a684;
            margin: 1.5rem auto;
            border-radius: 2px;
        }

        /* Mobile Menu Transitions */
        #mobile-menu { transition: visibility 0.3s, opacity 0.3s; }
        #mobile-menu-content { transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); }
        .mobile-accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }
        .mobile-accordion-item.active .mobile-accordion-content { max-height: 600px; }
        .mobile-accordion-item.active .chevron-icon { transform: rotate(180deg); }
        .chevron-icon { transition: transform 0.3s ease; }



/* Ripristina lo zoom e corregge il colore del testo al passaggio del mouse */
a[href="#scopri"]:hover {
    background-color: #ffffff !important; /* Sfondo bianco */
    color: #000000 !important;           /* Testo nero (per contrasto) */
    border-color: #ffffff !important;
    
    /* Effetto Zoom */
    transform: scale(1.1) !important;    /* Ingrandisce del 10% */
    transition: all 0.3s ease-in-out;    /* Rende il movimento fluido */
    
    /* Assicura che il bottone resti sopra gli altri elementi durante lo zoom */
    z-index: 10;
    display: inline-block; 
}

/* Opzionale: rende fluida anche l'uscita del mouse */
a[href="#scopri"] {
    transition: all 0.3s ease-in-out;
}



		/* Layout di base per il contenitore delle card */
		.services-flex-container {
			display: flex;
			flex-direction: column;
			gap: 1rem;
			height: auto;
		}

		@media (min-width: 1024px) {
			.services-flex-container {
				flex-direction: row;
				height: 550px;
			}
		}

		/* Stile della singola Card */
		.service-card {
			position: relative;
			overflow: hidden;
			border-radius: 2rem;
			cursor: pointer;
			flex: 1;
			transition: all 0.7s cubic-bezier(0.25, 1, 0.5, 1);
			min-height: 350px;
		}

		@media (min-width: 1024px) {
			.service-card:hover {
				flex: 2.5; /* Espansione orizzontale */
			}
		}

		/* Immagine di sfondo */
		.card-bg-image {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			object-fit: cover;
			filter: grayscale(100%);
			transition: all 0.7s ease;
		}

		.service-card:hover .card-bg-image {
			filter: grayscale(0%);
			transform: scale(1.1);
		}

		/* Overlay sfumato */
		.card-overlay {
			position: absolute;
			inset: 0;
			background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
		}

		/* Contenuto testuale */
		.card-content {
			position: absolute;
			bottom: 0;
			width: 100%;
			padding: 2.5rem;
			z-index: 10;
		}

		.card-icon {
			width: 3.5rem;
			height: 3.5rem;
			background: rgba(255,255,255,0.2);
			backdrop-filter: blur(8px);
			border-radius: 1rem;
			display: flex;
			align-items: center;
			justify-content: center;
			color: white;
			margin-bottom: 1.5rem;
			transition: all 0.5s ease;
		}

		.service-card:hover .card-icon {
			background: #94a684; /* Colore Sage */
			transform: rotate(6deg);
		}

		.card-title {
			font-size: 1.75rem;
			font-weight: bold;
			color: white;
			margin-bottom: 0.5rem;
		}

		.card-subtitle {
			color: #b8c6a8;
			font-weight: bold;
			text-transform: uppercase;
			font-size: 0.75rem;
			letter-spacing: 0.1em;
			display: block;
			opacity: 0;
			transform: translateY(10px);
			transition: all 0.5s ease;
		}

		.service-card:hover .card-subtitle {
			opacity: 1;
			transform: translateY(0);
		}

		.card-description {
			color: #e2e8f0;
			font-size: 0.875rem;
			line-height: 1.6;
			max-height: 0;
			opacity: 0;
			overflow: hidden;
			transition: all 0.5s ease;
		}

		.service-card:hover .card-description {
			max-height: 100px;
			opacity: 1;
			margin-top: 0.5rem;
		}


