
        :root {
            --color-primary: #CC0000;
            --color-text: #222222;
            --color-muted: #666666;
            --color-border: #E0E0E0;
            --color-bg: #F7F7F7;
            --radius-base: 8px;
        }

        * {
            box-sizing: border-box;
        }

        body {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            color: var(--color-text);
            background: var(--color-bg);
        }

        a {
            color: var(--color-primary);
            text-decoration: none;
        }

        a:hover {
            text-decoration: underline;
        }

        .page {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }

        .container {
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 1.5rem;
        }

        /* HEADER */

.site-header {
    background: #ffffff;
    border-bottom: 1px solid var(--color-border);
}

.site-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    gap: 1rem;
}

/* Logo immagine */
.logo {
    display: flex;
    align-items: center;
}

.logo-image {
    height: 40px;      /* regola se vuoi più grande/piccolo */
    width: auto;
    display: block;
}
.logo-text {
    margin-left: 10px;      /* regola lo spazio tra logo e testo */
    width: auto;
    display: block;
}

/* Switch lingua (puoi lasciare quello che avevi, ma te lo riporto completo) */
.lang-switch {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    border-left: 1px solid var(--color-border);
    padding-left: 1rem;
}

.lang-switch .lang {
    opacity: 0.6;
}

.lang-switch .lang.active {
    opacity: 1;
    font-weight: 600;
    color: var(--color-primary);
}

.lang-switch .separator {
    opacity: 0.3;
}

/* Mobile */
@media (max-width: 900px) {
    .site-header-inner {
        flex-direction: row;
        align-items: center;
    }
}


        /* HERO */

        .hero {
            background: #ffffff;
            border-bottom: 1px solid var(--color-border);
        }

        .hero-inner {
            display: grid;
            grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
            gap: 2.5rem;
            padding: 3rem 0;
        }

        .hero-title {
            font-size: clamp(1.8rem, 3vw, 2.4rem);
            margin: 0 0 1rem;
        }

        .hero-title strong {
            color: var(--color-primary);
            font-weight: 700;
        }

        .hero-subtitle {
            font-size: 1rem;
            color: var(--color-muted);
            line-height: 1.6;
            margin-bottom: 1.5rem;
        }

        .hero-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
        }
		
		.hero-more {
			display: none;
			margin-top: 1.25rem;
			padding: 1rem 1.25rem;
			border-left: 3px solid var(--color-primary);
			background: #FFF5F5;
			border-radius: 0 var(--radius-base) var(--radius-base) 0;
			font-size: 0.9rem;
			color: var(--color-text);
			line-height: 1.6;
		}

		.hero-more p {
			margin: 0 0 0.75rem;
		}

		.hero-more p:last-child {
			margin-bottom: 0;
		}

		.hero-more.is-visible {
			display: block;
		}


        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.65rem 1.4rem;
            border-radius: 999px;
            font-size: 0.95rem;
            border: 1px solid transparent;
            cursor: pointer;
            text-decoration: none;
            white-space: nowrap;
        }

        .btn-primary {
            background: var(--color-primary);
            color: #ffffff;
            border-color: var(--color-primary);
        }

        .btn-primary:hover {
            background: #a80000;
            border-color: #a80000;
            text-decoration: none;
        }

        .btn-ghost {
            background: transparent;
            color: var(--color-text);
            border-color: var(--color-border);
        }

        .btn-ghost:hover {
            border-color: var(--color-primary);
            color: var(--color-primary);
            text-decoration: none;
        }

        .hero-badge {
            display: inline-flex;
            align-items: center;
            padding: 0.25rem 0.75rem;
            border-radius: 999px;
            background: #FFF5F5;
            color: var(--color-primary);
            font-size: 0.8rem;
            margin-bottom: 1rem;
        }

        .hero-media {
    display: flex;
    flex-direction: column;
    gap: 1rem;
		}

.hero-image-main,
.hero-image-extra {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--radius-base);
		}

/* Contenitore delle immagini extra: nascosto di default */
.hero-images-extra {
    display: none;
    gap: 0.75rem;
		}

/* Variante visibile (quando si clicca 'Scopri di più') */
.hero-images-extra.is-visible {
    display: flex;
    flex-direction: column;
		}


        /* SEZIONI */

        .section {
            padding: 2.5rem 0;
        }

        .section-title {
            font-size: 1.3rem;
            margin: 0 0 0.5rem;
        }

        .section-intro {
            max-width: 600px;
            font-size: 0.95rem;
            color: var(--color-muted);
            margin-bottom: 1.5rem;
        }

        .cards {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 1.5rem;
        }

        .card {
            background: #ffffff;
            border-radius: var(--radius-base);
            border: 1px solid var(--color-border);
            padding: 1.25rem;
        }

        .card-title {
            font-size: 1.05rem;
            margin: 0 0 0.5rem;
        }

        .card-text {
            font-size: 0.9rem;
            color: var(--color-muted);
            line-height: 1.6;
        }
		
		.cert-logo {
    max-width: 100%;
    height: auto;
    display: block;
    margin-bottom: 0.75rem;
		}

		
		/* INVESTIMENTI */
		.invest-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: 2rem;
    align-items: center;
}

.invest-text .section-intro {
    margin-bottom: 0;
}


.invest-image {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--radius-base);
}

		
        /* CONTATTI */

        .contact-panel {
            background: #ffffff;
            border-radius: var(--radius-base);
            border: 1px solid var(--color-border);
            padding: 1.5rem;
            display: grid;
            grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
            gap: 1.5rem;
        }

        .contact-label {
            font-size: 0.8rem;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            color: var(--color-muted);
            margin-bottom: 0.25rem;
        }

        .contact-value {
            font-size: 0.95rem;
            margin-bottom: 0.75rem;
        }
		
		.contact-image-wrapper {
    border-radius: var(--radius-base);
    overflow: hidden;
}

.contact-image {
    width: 100%;
    height: auto;
    display: block;
}

        /* FOOTER */

        .site-footer {
            margin-top: auto;
            border-top: 1px solid var(--color-border);
            background: #ffffff;
        }

        .site-footer-inner {
            font-size: 0.8rem;
            color: var(--color-muted);
            padding: 1rem 0 1.2rem;
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
            justify-content: space-between;
        }

        .footer-links {
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
        }

        .footer-links a {
            color: var(--color-muted);
        }

        .footer-links a:hover {
            color: var(--color-primary);
        }

        /* RESPONSIVE */

        @media (max-width: 900px) {
            .hero-inner {
                grid-template-columns: minmax(0, 1fr);
            }

            .contact-panel {
                grid-template-columns: minmax(0, 1fr);
            }

            
			.invest-layout {
			grid-template-columns: minmax(0, 1fr);
			}
        }

        @media (max-width: 640px) {
            .cards {
                grid-template-columns: minmax(0, 1fr);
            }

            .hero-inner {
                padding: 2rem 0;
            }
        }
 