/* ═══════════════════════════════════════════
   SPEMME — SHOW / EVENT DETAIL PAGE
═══════════════════════════════════════════ */

/* ─── INTRO GRID (scheda + description) ─── */
.show-intro {
  display:               grid;
  grid-template-columns: 270px 1fr;
  gap:                   5rem;
  padding:               5rem 0;
  border-bottom:         1px solid rgba(201,168,76,.09);
}

/* Scheda tecnica */
.show-scheda {
  border:     1px solid rgba(201,168,76,.15);
  padding:    2rem;
  background: rgba(13,59,62,.2);
  height:     fit-content;
}
.show-scheda .badge-auto { margin-bottom: 1.2rem; }
.show-scheda-title {
  font-family:    var(--font-label);
  font-size:      .6rem;
  letter-spacing: .3em;
  color:          var(--gold);
  text-transform: uppercase;
  margin-bottom:  1.5rem;
  padding-bottom: .8rem;
  border-bottom:  1px solid rgba(201,168,76,.15);
}
.show-scheda-row { margin-bottom: 1.1rem; }
.show-scheda-label {
  font-family:    var(--font-label);
  font-size:      .53rem;
  letter-spacing: .2em;
  color:          var(--text-dim);
  text-transform: uppercase;
  margin-bottom:  .22rem;
}
.show-scheda-value {
  font-family: var(--font-display);
  font-size:   .95rem;
  line-height: 1.4;
}

/* Date badge inside scheda */
.show-date-badge {
  margin-top:  1.6rem;
  padding:     1rem;
  background:  rgba(201,168,76,.07);
  border:      1px solid rgba(201,168,76,.22);
  text-align:  center;
}
.show-date-main {
  font-family:   var(--font-display);
  font-size:     1.05rem;
  margin-bottom: .3rem;
}
.show-date-where {
  font-family:    var(--font-label);
  font-size:      .55rem;
  letter-spacing: .18em;
  color:          var(--text-dim);
  text-transform: uppercase;
  margin-bottom:  .4rem;
}
.show-date-free {
  display:        block;
  font-family:    var(--font-label);
  font-size:      .6rem;
  letter-spacing: .22em;
  color:          var(--gold);
  text-transform: uppercase;
  margin-top:     .6rem;
}

/* Description area */
.show-desc p {
  font-size:     .9rem;
  line-height:   1.9;
  color:         var(--text-light);
  margin-bottom: 1.2rem;
}
.show-desc p:first-child { font-size: 1rem; }
.show-desc .gold-line { margin: 2rem 0; }
.show-desc-actions {
  display:   flex;
  gap:       1rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

/* ─── SHARED SECTION STYLES ─── */
.show-section {
  padding:       4rem 0;
  border-bottom: 1px solid rgba(201,168,76,.09);
}
.show-section-label {
  font-family:    var(--font-label);
  font-size:      .6rem;
  letter-spacing: .3em;
  color:          var(--gold);
  text-transform: uppercase;
  margin-bottom:  .8rem;
}
.show-section-h2 {
  font-family:   var(--font-display);
  font-size:     clamp(1.8rem, 3vw, 2.4rem);
  font-weight:   300;
  margin-bottom: 2.5rem;
}
.show-section-h2 em { font-style: italic; color: var(--gold-light); }

/* ─── FORMAT LIST ─── */
.format-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap:                   1rem;
}
.format-item {
  display:    flex;
  align-items: flex-start;
  gap:         .8rem;
  border:      1px solid rgba(201,168,76,.1);
  padding:     1.2rem 1.4rem;
  background:  rgba(13,59,62,.12);
}
.format-item-dot {
  width:            8px;
  height:           8px;
  min-width:        8px;
  background:       var(--gold);
  margin-top:       .35rem;
}
.format-item-text {
  font-family:   var(--font-display);
  font-size:     .92rem;
  line-height:   1.5;
}

/* ─── CAST GRID ─── */
.cast-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap:                   1rem;
}
.cast-card {
  border:      1px solid rgba(201,168,76,.1);
  padding:     1.4rem;
  background:  rgba(13,59,62,.1);
  transition:  background .3s;
}
.cast-card:hover { background: rgba(13,59,62,.28); }
.cast-role {
  font-family:    var(--font-label);
  font-size:      .52rem;
  letter-spacing: .2em;
  color:          var(--gold);
  text-transform: uppercase;
  margin-bottom:  .45rem;
}
.cast-name {
  font-family:   var(--font-display);
  font-size:     1rem;
  margin-bottom: .2rem;
}
.cast-actor {
  font-family: var(--font-display);
  font-style:  italic;
  font-size:   .82rem;
  color:       var(--text-dim);
}

/* ─── TRAMA / BODY TEXT ─── */
.show-body-text p {
  font-size:     .9rem;
  line-height:   1.9;
  color:         var(--text-light);
  margin-bottom: 1.2rem;
  max-width:     780px;
}
.show-body-text p strong { color: var(--gold-light); }

/* ─── CURIOSITÀ BOX ─── */
.curiosita-box {
  border:     1px solid rgba(201,168,76,.12);
  padding:    2rem 2.5rem;
  background: rgba(13,59,62,.18);
  max-width:  780px;
}
.curiosita-box p {
  font-size:     .88rem;
  line-height:   1.88;
  color:         var(--text-light);
  margin-bottom: 1rem;
}
.curiosita-box p:last-child { margin-bottom: 0; }

/* ─── VIDEO SECTION ─── */
.show-video-section {
  padding:     5rem 0;
  text-align:  center;
  border-bottom: 1px solid rgba(201,168,76,.09);
}
.show-video-section .show-section-label,
.show-video-section .show-section-h2 { text-align: center; }
.show-video-desc {
  font-size:     .9rem;
  color:         var(--text-dim);
  max-width:     520px;
  margin:        0 auto 2rem;
  line-height:   1.8;
}

/* ─── CONTACTS ─── */
.show-contacts {
  padding: 5rem 0 8rem;
}
.show-contacts-grid {
  display:   flex;
  flex-wrap: wrap;
  gap:       3rem;
  margin-top: 2.5rem;
}
.show-contact-item { display: flex; flex-direction: column; gap: .35rem; }
.show-contact-label {
  font-family:    var(--font-label);
  font-size:      .53rem;
  letter-spacing: .22em;
  color:          var(--text-dim);
  text-transform: uppercase;
}
.show-contact-value {
  font-family:   var(--font-display);
  font-size:     1rem;
  color:         var(--gold-light);
}
.show-contact-value a {
  color:           var(--gold-light);
  text-decoration: none;
  transition:      color .2s;
}
.show-contact-value a:hover { color: var(--gold); }

/* ─── WHATSAPP BUTTON ─── */
/* Spostato in css/base.css: usato anche dalle pagine sponsor */

/* ─── BACK LINK ─── */
.show-back {
  display:        inline-flex;
  align-items:    center;
  gap:            .5rem;
  font-family:    var(--font-label);
  font-size:      .55rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color:          var(--text-dim);
  text-decoration: none;
  margin-bottom:  3rem;
  transition:     color .2s;
}
.show-back:hover { color: var(--gold); }

/* ─── RESPONSIVE ─── */
@media (max-width: 900px) {
  .show-intro {
    grid-template-columns: 1fr;
    gap:                   3rem;
  }
  .show-scheda { order: -1; }
}
@media (max-width: 600px) {
  .cast-grid      { grid-template-columns: 1fr 1fr; }
  .format-grid    { grid-template-columns: 1fr; }
}
