:root{--gold:#c5a059;--dark:#000;--light:#e0e0e0;}

        /* --- CSS BASE --- */
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { font-family: 'Lato', sans-serif; color: #e0e0e0; line-height: 1.6; background-color: #000000; }
        h1, h2, h3 { font-family: 'Playfair Display', serif; color: #fff; }
        .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
        
        /* Header & Language Switcher */
        .header { background-color: #000; padding: 20px 0; border-bottom: 1px solid #222; position: sticky; top: 0; z-index: 1000; }
        .logo { color: #c5a059; font-size: 1.5rem; font-weight: 700; text-decoration: none; font-family: 'Playfair Display', serif; }

        .lang-switch { display: flex; gap: 10px; margin-right: 15px; }
        .lang-btn { color: #fff; text-decoration: none; font-size: 0.8rem; padding: 5px 10px; border: 1px solid #333; border-radius: 3px; cursor: pointer; }
        .lang-btn.active { border-color: #c5a059; color: #c5a059; }
        
        /* Hero */
        .tour-hero {
            height: 60vh;
            background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.8)), url('/hero-desktop.webp');
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: flex-end;
            padding-bottom: 50px;
        }
        .tour-title { font-size: clamp(2.3rem,6vw,4.2rem); margin-bottom: 10px; color: #c5a059; line-height: 1.1; }
        
        /* Content Grid */
        .content-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; margin-top: 50px; }
        .info-box { background: #111; padding: 30px; border: 1px solid #333; margin-bottom: 20px; position: sticky; top: 100px; border-radius: 4px; }
        .info-box h2,.info-box h3 { color: #c5a059; margin-bottom: 15px; border-bottom: 1px solid #333; padding-bottom: 10px; }
        
        .stops-list { list-style: none; color: #bbb; }
        .stops-list li { margin-bottom: 15px; padding-left: 30px; position: relative; }
        .stops-list li strong { color: #fff; display: block; }
        .stops-list li::before { content: "✝"; color: #c5a059; font-size: 1.2rem; position: absolute; left: 0; top: 0; }
        
        .btn-gold { background-color: #c5a059; color: #000; padding: 15px 30px; border-radius: 4px; text-decoration: none; font-weight: 700; display: block; text-align: center; margin-top: 20px; transition: 0.3s; text-transform: uppercase; }
        .btn-gold:hover { background-color: #fff; transform: translateY(-2px); }

        footer { padding: 40px 0; text-align: center; border-top: 1px solid #222; color: #666; margin-top: 60px; }

        /* Visibilità Lingue */
        
        
        
            @media (max-width: 768px) {
            .tour-hero { height: 50vh; }
            .info-box { position: static; }
        }
    
        .faq-section { margin-top: 40px; }
        .faq-item { background: #0a0a0a; border: 1px solid #222; padding: 20px; margin-bottom: 10px; border-radius: 4px; }
        .faq-question { color: #c5a059; font-weight: 700; display: block; margin-bottom: 8px; }
