/* CoMeTe - struttura condivisa delle pagine.
   I colori e i pulsanti rimangono quelli delle classi già usate nel sito
   (text-purple, text-gold, btn-comete, btn-outline-comete). */
/* PageHero: Standard per le pagine interne; Home per la homepage. */
.comete-hero { padding: 3.5rem 0; }
.comete-hero--home {
    padding: 4.5rem 0;
    background: linear-gradient(105deg, #fff 8%, #fcf6df 100%);
}
.comete-hero__layout { max-width: 1000px; margin: 0 auto; }
.comete-hero__layout--image {
    max-width: none; display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(180px, .8fr);
    align-items: center; gap: 2.5rem;
}
.comete-hero h1 { margin: .65rem 0 1.4rem; }
.comete-hero--home h1 { font-size: clamp(3.3rem, 5.3vw, 5.3rem); }
.comete-hero--standard h1 { font-size: clamp(2.65rem, 4.3vw, 4.3rem); }
.comete-hero--standard .comete-hero__copy { max-width: 900px; }
.comete-hero p { max-width: 75ch; }
.comete-hero__tagline { font-size: clamp(1.15rem, 2vw, 1.65rem); letter-spacing: .01em; }
.comete-hero__visual { display: grid; place-items: center; }
.comete-hero__visual img { width: min(100%, 290px); height: auto; }
.comete-eyebrow { font-weight: 650; letter-spacing: .035em; }
.comete-section { padding: 4.5rem 0; }
.comete-section--alternate { background: #f7f6f8; }
.comete-section__heading { max-width: 860px; margin-bottom: 2rem; }
.comete-section__heading--center { text-align: center; margin-left: auto; margin-right: auto; }
.comete-section__heading h2 { margin-bottom: .75rem; }
.comete-section__body { max-width: 1100px; margin: 0 auto; }
.comete-prose { max-width: 850px; margin: 0 auto; }
.comete-card-grid { display: grid; grid-template-columns: repeat(var(--comete-columns, 3), minmax(0, 1fr)); gap: 1.5rem; }
.comete-card { height: 100%; display: flex; flex-direction: column; background: #fff; border-radius: 1.15rem; padding: 1.75rem; box-shadow: 0 4px 18px rgb(0 0 0 / 5%); }
.comete-card h3 { font-size: clamp(1.25rem, 2vw, 1.55rem); margin: .9rem 0 1rem; }
.comete-card__content { flex: 1; }
.comete-card__content > :last-child { margin-bottom: 0; }
.comete-card__link { align-self: flex-start; margin-top: 1.25rem; font-weight: 600; text-decoration: none; }
.comete-card__link:hover { text-decoration: underline; }
.comete-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: 1.5rem; }
.comete-actions--center { justify-content: center; }
.comete-notice { background: #f7f6f8; border-radius: 1.15rem; padding: 1.6rem; }
.comete-notice h3 { font-size: 1.3rem; margin-bottom: .85rem; }
.comete-notice > :last-child { margin-bottom: 0; }
.comete-cta { text-align: center; }
.comete-cta p { max-width: 660px; margin: 0 auto; }
.comete-event { display: flex; align-items: center; gap: 1.25rem; padding: 1rem 0; border-bottom: 1px solid #e9e5ec; }
.comete-event__date { width: 70px; flex-shrink: 0; text-align: center; border-radius: .8rem; padding: .6rem; background: #f7f6f8; }
.comete-event__date strong { display: block; font-size: 1.65rem; line-height: 1; }
.comete-event__date span { text-transform: uppercase; font-size: .8rem; }
.comete-event h3 { font-size: 1.1rem; margin: 0 0 .25rem; }
.comete-event p { margin: 0; }
@media (max-width: 991.98px) { .comete-card-grid { grid-template-columns: repeat(min(2, var(--comete-columns, 3)), minmax(0, 1fr)); } }
@media (max-width: 767.98px) { .comete-hero, .comete-hero--home, .comete-section { padding: 3rem 0; } .comete-hero__layout--image { grid-template-columns: 1fr; } .comete-hero__visual { order: -1; } .comete-hero__visual img { width: min(45vw, 160px); } .comete-card-grid { grid-template-columns: 1fr; } .comete-card { padding: 1.4rem; } }



/* =========================================
   INFO CARD
   ========================================= */

/* Icona / simbolo della scheda */

.comete-card > .comete-eyebrow {
    display: block;
    font-size: 2rem;
    line-height: 1.2;
    color: #b9852b;
    font-weight: 400;
    margin-bottom: .25rem;
}

/* Link della scheda */

.comete-card__link,
.comete-card__link:visited {
    color: #b9852b;
    font-weight: 600;
    text-decoration: none;
    transition: color .2s ease;
}

    .comete-card__link:hover {
        color: #8e651d;
        text-decoration: underline;
    }

    .comete-card__link:focus-visible {
        outline: 2px solid #b9852b;
        outline-offset: 4px;
        border-radius: 2px;
    }

.comete-card {
    border: 1px solid #e8d8bd;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .04);
}

.comete-hero__content {
    color: var(--comete-text-secondary, #64748b);
    font-size: 1.25rem;
    line-height: 1.6;
}

    .comete-hero__content p:last-child {
        margin-bottom: 0;
    }