/**
 * Circle Template — Modulo Live — CSS
 * Stili specifici per la pagina Live e single concerto.
 * Caricato condizionalmente.
 */

.live-hero { position:relative; min-height:85vh; display:flex; align-items:flex-end; overflow:hidden; padding-top:80px; }
    .live-hero__bg { position:absolute; inset:0; background:var(--color-bg); }
    .live-hero__overlay { position:absolute; inset:0; background:linear-gradient(to bottom,rgba(12,11,9,.1) 0%,rgba(12,11,9,.95) 85%); }
    .live-hero__content { position:relative; z-index:2; padding-bottom:var(--space-12); }

    .live-layout { display:grid; grid-template-columns:1fr 320px; gap:var(--space-16); align-items:start; padding-block:var(--space-16); }
    .live-sidebar { position:sticky; top:calc(80px + var(--space-6)); display:flex; flex-direction:column; gap:var(--space-6); }

    .section-label-bar { display:flex; align-items:center; gap:var(--space-4); padding-block:var(--space-6); margin-bottom:var(--space-2); }
    .section-label-bar::after { content:''; flex:1; height:1px; background:var(--color-border); }

    .past-year-group { margin-bottom:var(--space-8); }
    .past-year-label { font-family:var(--font-display); font-size:var(--text-3xl); font-weight:300; color:var(--color-border-light); letter-spacing:-0.03em; margin-bottom:var(--space-2); line-height:1; }

    .no-dates { padding:var(--space-12); text-align:center; border:1px dashed var(--color-border); border-radius:var(--radius-md); }
    .no-dates p { font-size:var(--text-base); color:var(--color-text-hint); }

    @media(max-width:900px){ .live-layout { grid-template-columns:1fr; } .live-sidebar { position:static; } }
    .demo-img { width:100%;height:100%;background:var(--color-surface-2);display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--color-text-hint);letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-body); }


/* ----- Single concerto ----- */
.single-concerto .info-list__label { min-width: 100px; }

