/* Adventura: revisione spazi 29/09/2026.
   Regola: da desktop ogni sezione deve stare in una schermata (niente scroll per leggerla tutta),
   niente colonne vuote, testi mai a filo dei bordi. Caricato per ultimo, sovrascrive index.html + enhancements.css. */

/* ── Spazi verticali più compatti ── */
@media (min-width: 1024px) {
  .section { padding: clamp(3.2rem, 7vh, 4.8rem) 5vw; }
  .sec-head { margin-bottom: 2rem; }
  .ghost-head { margin-bottom: 1.8rem !important; }
  .ghost-head p, .sec-head p { margin-top: .7rem; }
  .ghost-head h2, .sec-head h2 { line-height: .98; }
}

/* ── Eventi: schede più basse, la sezione sta in una schermata ── */
@media (min-width: 1024px) {
  #eventi .event-time-cue { display: none; }
  #eventi .date-strip { margin-bottom: 1.2rem; }
  #eventi .room-media-link { overflow: hidden; }
  #eventi .room-media { height: 210px !important; aspect-ratio: auto !important; }
  #eventi .room-media img { height: 100% !important; object-fit: cover; }
  #eventi .room-copy { padding-top: 1.1rem !important; padding-bottom: .6rem !important; }
  #eventi .room-copy > p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-top: .4rem; }
  #eventi .room-logline { font-size: .98rem; }
  #eventi .room-inquiry { padding: 1rem 1.1rem !important; }
  #eventi .room-inquiry p { margin-bottom: .7rem; }
}

/* ── Occasioni: schede meno alte ── */
@media (min-width: 1024px) {
  #occasioni .priority-grid { margin-top: 1.6rem; }
  #occasioni .priority-card { min-height: 250px; padding: 1.6rem; }
  #occasioni .priority-card:first-child { min-height: 0; }
}

/* ── Eventi privati: titolo e occasioni a sinistra, modulo a destra ── */
@media (min-width: 1024px) {
  #eventi-privati .section-inner { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); column-gap: 4rem; align-items: start; }
  #eventi-privati .ghost-head { grid-column: 1; grid-row: 1; text-align: left !important; }
  #eventi-privati .ghost-head p { margin-left: 0 !important; margin-right: 0 !important; }
  #eventi-privati .occ-wrap { grid-column: 1; grid-row: 2; }
  #eventi-privati .occ-track { transform: none !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: .6rem; }
  #eventi-privati .occ-slide { flex: none !important; padding: 0 !important; width: auto !important; }
  #eventi-privati .occ-slide:nth-child(n+8) { display: none; }
  #eventi-privati .occ-card { display: flex !important; align-items: center; gap: .8rem; padding: .8rem 1rem !important; min-height: 0 !important; text-align: left !important; }
  #eventi-privati .occ-ico { font-size: 1.35rem; margin: 0 !important; }
  #eventi-privati .occ-card h4 { margin: 0; font-size: 1rem; }
  #eventi-privati .private-wrap { grid-column: 2; grid-row: 1 / span 2; margin-top: 0 !important; }
  #eventi-privati .private-wrap > div { max-width: none !important; }
  #eventi-privati .billing-form { margin-top: 0; gap: .7rem 1rem; }
  #eventi-privati .billing-form .field input, #eventi-privati .billing-form .field select { padding-top: .7rem; padding-bottom: .7rem; }
  #eventi-privati textarea { min-height: 80px; }
}

/* ── FAQ: il testo non tocca più la barra gialla ── */
.faq-question, .faq-answer p { padding-left: 1.2rem !important; }
.faq-question { padding-right: .4rem; }
@media (min-width: 1024px) { .faq-question { padding-top: 1.15rem; padding-bottom: 1.15rem; } }

/* ── Chi siamo: immagine sempre intera, qualunque formato carichi Marco ── */
.about-media { aspect-ratio: auto !important; background: #0d0e0b; }
.about-media img { height: auto !important; max-height: 72vh; object-fit: contain !important; display: block; margin: auto; }

/* ── Galleria: griglia fitta senza buchi, la prima immagine resta intera ── */
@media (min-width: 1024px) {
  .gal-grid { grid-template-columns: repeat(6, 1fr); gap: .7rem; grid-auto-flow: dense; }
  .gal-item:nth-child(1) { grid-column: span 4; grid-row: span 2; aspect-ratio: auto; background: #151510; }
  .gal-item:nth-child(1) img { object-fit: contain; }
}

/* ── Archivio: intestazione a sinistra, eventi su due colonne a destra ── */
@media (min-width: 1024px) {
  #archivio .section-inner { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2fr); column-gap: 4rem; align-items: start; }
  #archivio .sec-head { margin-bottom: 0; position: sticky; top: 7rem; }
  #archivio .timeline { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; border-left: 0; padding-left: 0; }
  #archivio .tl-item { padding: 0 0 1.6rem 1.6rem; border-left: 1px solid var(--line); }
  #archivio .tl-item::before { left: -5px; }
}
@media (min-width: 700px) and (max-width: 1023px) {
  #archivio .timeline { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }
}

/* ── Contatti: più compatto ── */
@media (min-width: 1024px) {
  #contatti .sec-head { margin-bottom: 1.4rem; }
}

/* ── Mobile: meno aria tra le sezioni ── */
@media (max-width: 1023px) {
  .section { padding-top: 4rem; padding-bottom: 4rem; }
}

/* ── Seconda passata 29/09 ── */
@media (min-width: 1024px) {
  #eventi .ghost-head { margin-bottom: 1rem !important; }
  #eventi .event-date-label { margin: 0 0 .6rem !important; }
  #eventi .ds-day { padding-top: .45rem !important; padding-bottom: .45rem !important; min-height: 0 !important; height: auto !important; }
  #eventi .ds-day .num { font-size: 1.25rem; }
  #eventi .date-strip { margin-bottom: 1rem !important; }
  #eventi .room-media { height: 175px !important; }
  #eventi .room-copy > p { -webkit-line-clamp: 2; }
  #eventi .rooms-list { align-items: flex-start; }
  #eventi .room-card { min-height: 0 !important; }
  .gal-item:nth-child(1) img { position: absolute; inset: 0; width: 100%; height: 100%; }
  #cene-con-delitto .ghost-head { margin-bottom: 1.4rem !important; }
  #cene-con-delitto .cene-band-media img { max-height: 340px; object-fit: cover; }
}
@media (min-width: 1024px) {
  /* "Scegli il giorno" nello spazio libero a destra della striscia dei giorni */
  #eventi .section-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  #eventi .ghost-head { grid-column: 1 / -1; }
  #eventi .date-strip { grid-column: 1 / -1; grid-row: 2; }
  #eventi .event-date-label { grid-column: 2; grid-row: 2; align-self: center; margin: 0 4.2rem 0 0 !important; z-index: 3; }
  #eventi .rooms-carousel-wrap { grid-column: 1 / -1; }
}
@media (min-width: 1024px) { #eventi.section { padding-top: 2.8rem; padding-bottom: 2.2rem; } }
@media (max-width: 1023px) {
  .gal-item:nth-child(1) { aspect-ratio: 3 / 2 !important; background: #151510; }
  .gal-item:nth-child(1) img { object-fit: contain; }
  #eventi-privati .occ-track { transform: none !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: .5rem; }
  #eventi-privati .occ-slide { flex: none !important; padding: 0 !important; width: auto !important; }
  #eventi-privati .occ-slide:nth-child(n+8) { display: none; }
  #eventi-privati .occ-card { display: flex !important; align-items: center; gap: .6rem; padding: .7rem .8rem !important; min-height: 0 !important; text-align: left !important; }
  #eventi-privati .occ-ico { font-size: 1.2rem; margin: 0 !important; }
  #eventi-privati .occ-card h4 { margin: 0; font-size: .9rem; }
  #eventi-privati .private-wrap { margin-top: 1.6rem !important; }
}
