.citation {
    text-align: right;
    font-style: italic;
    color: darkgray;
}

/* Tema temporaneo: nessuna modifica alla palette standard del sito. */
body.christmas-theme {
    --xmas-burgundy: #4a0e0e;
    --xmas-gold: #cfa23d;
    --xmas-light-gold: #e8c879;
    --xmas-cream: #fbf5ea;
    --xmas-muted: #d9c7b4;
    --xmas-card-title: #41205d;
    --xmas-card-text: #596477;
    background-color: var(--xmas-burgundy);
    background-image: radial-gradient(circle at 50% 20%, rgba(109, 24, 24, .8) 0%, rgba(42, 8, 8, .95) 100%);
    background-attachment: fixed;
    min-height: 100vh;
    color: var(--xmas-cream);
    /* Header e navigazione */
    header.bg-white {
        background-color: #4a0e0e !important;
        background-image: radial-gradient( circle at 50% 20%, rgba(109, 24, 24, 0.8) 0%, rgba(42, 8, 8, 0.95) 100% );
    }

    header.border-bottom {
        border-bottom: 0 !important;
    }

    header .brand-copy strong {
        color: var(--xmas-gold);
    }

    header .brand-copy small {
        color: var(--xmas-muted);
    }

    header .navbar .nav-link {
        color: var(--xmas-cream) !important;
    }

        header .navbar .nav-link:hover,
        header .navbar .nav-link.active {
            color: var(--xmas-light-gold) !important;
        }

    header .navbar-toggler {
        border-color: var(--xmas-gold);
    }

    header .navbar-toggler-icon {
        filter: invert(1);
    }
    /* Hero: --standard è il nome reale usato nelle sottopagine. */
    .comete-hero,
    .comete-hero--home,
    .hero-section {
        background: transparent;
        color: var(--xmas-cream);
    }

        .comete-hero h1,
        .comete-hero h1.text-purple,
        .hero-section h1.text-purple {
            color: var(--xmas-cream) !important;
        }

        .comete-hero .comete-eyebrow,
        .comete-hero .comete-hero__tagline,
        .comete-hero .text-gold {
            color: var(--xmas-light-gold) !important;
        }

        .comete-hero .comete-hero__content,
        .comete-hero .comete-hero__content p,
        .comete-hero .comete-hero__copy > p,
        .comete-hero p.text-secondary {
            color: var(--xmas-cream) !important;
        }
    /* Sezioni senza pannello chiaro: testo su bordeaux. */
    .comete-section:not(.comete-section--alternate) {
        color: var(--xmas-cream);
    }

        .comete-section:not(.comete-section--alternate) .comete-section__heading h2,
        .comete-section:not(.comete-section--alternate) .comete-section__heading h2.text-purple,
        .comete-section:not(.comete-section--alternate) .comete-cta h2,
        .comete-section:not(.comete-section--alternate) .comete-cta h2.text-purple {
            color: var(--xmas-light-gold) !important;
        }

        .comete-section:not(.comete-section--alternate) .comete-section__heading > p,
        .comete-section:not(.comete-section--alternate) .comete-cta > p,
        .comete-section:not(.comete-section--alternate) .comete-prose > p {
            color: var(--xmas-cream) !important;
        }

        .comete-section:not(.comete-section--alternate) .comete-section__heading .text-secondary,
        .comete-section:not(.comete-section--alternate) .comete-cta .text-secondary {
            color: var(--xmas-muted) !important;
        }
    /* I pannelli chiari mantengono una palette scura e leggibile. */
    .comete-card,
    .comete-notice,
    .comete-section--alternate {
        color: var(--xmas-card-text);
    }

        .comete-card h1,
        .comete-card h2,
        .comete-card h3,
        .comete-card .text-purple,
        .comete-notice h1,
        .comete-notice h2,
        .comete-notice h3,
        .comete-notice .text-purple,
        .comete-section--alternate .text-purple {
            color: var(--xmas-card-title) !important;
        }

        .comete-card p,
        .comete-card .comete-card__content,
        .comete-card .text-secondary,
        .comete-notice p,
        .comete-notice .text-secondary,
        .comete-section--alternate .text-secondary {
            color: var(--xmas-card-text) !important;
        }

        .comete-card > .comete-eyebrow,
        .comete-card .text-gold {
            color: #b9852b !important;
        }

        .comete-card .comete-card__link,
        .comete-card .comete-card__link:visited {
            color: #966b21 !important;
        }

            .comete-card .comete-card__link:hover {
                color: var(--xmas-card-title) !important;
            }
        /* Titoli delle sezioni alternate: rimangono viola sul grigio chiaro. */
        .comete-section--alternate .comete-section__heading h2 {
            color: var(--xmas-card-title) !important;
        }
    /* Link nel testo scuro: non alterare indiscriminatamente quelli delle card. */
    .comete-hero a:not(.btn),
    .comete-section:not(.comete-section--alternate) .comete-prose a:not(.btn),
    .comete-section:not(.comete-section--alternate) .comete-cta a:not(.btn) {
        color: var(--xmas-light-gold);
    }

    .comete-section .text-purple {
        color: var(--xmas-light-gold) !Important;
        font-size: xx-large;
    }

    /* Pulsanti propri di CoMeTe, non solo .btn-primary di Bootstrap. */
    .btn-comete, .btn-purple, .btn-primary {
        background: var(--xmas-gold);
        border-color: var(--xmas-gold);
        color: var(--xmas-burgundy);
    }

        .btn-comete:hover,
        .btn-purple:hover,
        .btn-primary:hover {
            background: var(--xmas-light-gold);
            border-color: var(--xmas-light-gold);
            color: var(--xmas-burgundy);
        }

    .citation {
        color: var(--xmas-muted);
    }
    /* Il footer bianco resta chiaro, con i suoi colori standard. */
    footer.bg-white {
        background-color: #fff !important;
        color: #596477;
    }
}
