/* ==========================================================================
   Pagine interne con lo stile dell'agenda concerti (13/09/2026): testata
   compatta allineata a sinistra, contenuti a tutta larghezza, titoli con
   filetto dorato, riquadri bianchi con bordo sottile, pulsanti pieni.
   Tutto è limitato a body:not(.home): la home resta con la sua foto grande.
   ========================================================================== */

body:not(.home) {
  --container-content: var(--container-wide);
}

/* --- testata compatta ------------------------------------------------------ */
body:not(.home) .sacc-hero {
  display: block; min-height: 0 !important; padding: 136px var(--gutter) 48px; text-align: left;
}
body:not(.home) .sacc-hero.has-image { padding-top: 156px; padding-bottom: 60px; }
body:not(.home) .sacc-hero .sacc-hero-overlay,
body:not(.home) .sacc-hero--mondo.has-image .sacc-hero-overlay {
  background: linear-gradient(90deg, rgba(10, 10, 10, .94) 0%, rgba(10, 10, 10, .8) 42%, rgba(10, 10, 10, .42) 100%);
}
body:not(.home) .sacc-hero-content { max-width: var(--container-wide); margin: 0 auto; padding: 0; }
body:not(.home) .sacc-hero h1 {
  max-width: 22ch; margin: 0; font-weight: 500; line-height: 1.06;
  font-size: clamp(2.3rem, 1.7rem + 2vw, 3.4rem) !important;
}
body:not(.home) .sacc-hero-tag { margin-bottom: 12px; font-size: .72rem; letter-spacing: .2em; }

/* --- testo: colonna di lettura allineata al bordo della testata ------------- */
body:not(.home) .sacc-narrative--wide {
  max-width: var(--container-wide); padding: 56px var(--gutter) 32px; text-align: left;
}
body:not(.home) .sacc-narrative--wide > * { max-width: 780px; }
body:not(.home) .sacc-narrative--wide h2 { margin: 48px 0 14px; font-size: clamp(1.6rem, 1.3rem + .8vw, 2rem); font-weight: 500; }
body:not(.home) .sacc-narrative--wide h3 { margin: 36px 0 10px; font-size: 1.45rem; font-weight: 500; }
body:not(.home) .sacc-narrative--wide h2::before {
  content: ""; display: block; width: 36px; height: 2px; margin-bottom: 16px; background: var(--sacc-gold);
}
body:not(.home) .sacc-narrative--wide a { font-family: inherit; font-size: inherit; color: var(--sacc-gold-dark); }
body:not(.home) .sacc-post-nav { max-width: 780px; }

/* --- sezioni ----------------------------------------------------------------- */
body:not(.home) .sacc-world-block,
body:not(.home) .sacc-servizio-azioni {
  max-width: var(--container-wide); padding: 48px var(--gutter);
}
body:not(.home) .sacc-world-block > p,
body:not(.home) .sacc-servizio-azioni-lede { max-width: 780px; }
body:not(.home) .sacc-world-block h2,
body:not(.home) .sacc-servizio-azioni h2,
body:not(.home) .sacc-app-shots h2,
body:not(.home) .sacc-map-section h2,
body:not(.home) .sacc-model-range h2 {
  margin: 0 0 22px; font-size: clamp(1.7rem, 1.3rem + 1vw, 2.2rem); font-weight: 500; color: var(--sacc-black);
}
body:not(.home) .sacc-world-block h2::before,
body:not(.home) .sacc-servizio-azioni h2::before,
body:not(.home) .sacc-app-shots h2::before,
body:not(.home) .sacc-map-section h2::before {
  content: ""; display: block; width: 36px; height: 2px; margin-bottom: 16px;
  background: var(--world-accent, var(--sacc-gold));
}
body:not(.home) .sacc-mondo-intro { max-width: var(--container-wide); }
body:not(.home) .sacc-mondo-intro .sacc-narrative > * { max-width: 820px; }

/* Modulo contatti (Fluent Forms): stesso pulsante del resto del sito. */
body:not(.home) .fluentform .ff-btn-submit {
  min-height: 46px; padding: 0 28px !important; background: var(--sacc-black) !important; border: 1px solid var(--sacc-black) !important;
  border-radius: var(--radius) !important; color: var(--sacc-ivory) !important; font-family: var(--font-ui);
  font-size: .8rem !important; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
}
body:not(.home) .fluentform .ff-btn-submit:hover { background: var(--sacc-gold-dark) !important; border-color: var(--sacc-gold-dark) !important; }
body:not(.home) .sacc-map-section { text-align: left; }
body:not(.home) .sacc-map-wrap { max-width: var(--container-wide); margin: 0 auto; }
body:not(.home) .sacc-map-section h2 { max-width: var(--container-wide); margin-left: auto; margin-right: auto; }

body:not(.home) .sacc-model-range { text-align: left; }
body:not(.home) .sacc-model-range h2::before {
  content: ""; display: block; width: 36px; height: 2px; margin-bottom: 16px; background: var(--world-accent, var(--sacc-gold));
}

/* Galleria senza foto: meglio niente che tre riquadri vuoti. */
body:not(.home) .sacc-mondo-gallery[aria-hidden="true"] { display: none; }

/* --- riquadri ---------------------------------------------------------------- */
body:not(.home) .sacc-noleggio-step,
body:not(.home) .sacc-noleggio-option,
body:not(.home) .sacc-app-highlight,
body:not(.home) .sacc-card {
  padding: 26px 28px; background: #fff; border: 1px solid var(--hairline); border-radius: 6px;
  box-shadow: 0 1px 2px rgba(10, 10, 10, .04), 0 8px 24px -18px rgba(10, 10, 10, .25);
}
body:not(.home) .sacc-noleggio-step h3,
body:not(.home) .sacc-noleggio-option h3,
body:not(.home) .sacc-app-highlight h2,
body:not(.home) .sacc-app-feature h3 {
  margin: 0 0 8px; font-size: 1.3rem; font-weight: 600; color: var(--sacc-black);
}
body:not(.home) .sacc-noleggio-step h3::before { color: var(--sacc-gold-dark); }
body:not(.home) .sacc-noleggio-steps,
body:not(.home) .sacc-noleggio-options,
body:not(.home) .sacc-app-features { gap: 18px; }
body:not(.home) .sacc-app-feature { padding: 22px 24px; background: #fff; border: 1px solid var(--hairline); border-radius: 6px; }

/* Domande frequenti e dati tecnici come la griglia dei dettagli del concerto. */
body:not(.home) .sacc-noleggio-faq,
body:not(.home) .sacc-app-facts { max-width: 900px; background: #fff; border: 1px solid var(--hairline); border-radius: 6px; overflow: hidden; }
body:not(.home) .sacc-noleggio-faq-item,
body:not(.home) .sacc-app-fact { padding: 18px 24px; border-top: 1px solid var(--hairline); border-bottom: 0; }
body:not(.home) .sacc-noleggio-faq-item:first-child,
body:not(.home) .sacc-app-fact:first-child { border-top: 0; }
body:not(.home) .sacc-noleggio-faq-item:last-child,
body:not(.home) .sacc-app-fact:last-child { border-bottom: 0; }
body:not(.home) .sacc-app-fact dt { font-size: .7rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-secondary); }

/* --- blog -------------------------------------------------------------------- */
body:not(.home) .sacc-blog-item {
  overflow: hidden; background: #fff; border: 1px solid var(--hairline); border-radius: 6px;
  transition: box-shadow .25s var(--ease), transform .25s var(--ease);
}
body:not(.home) .sacc-blog-item:hover { transform: translateY(-2px); box-shadow: 0 14px 32px -18px rgba(10, 10, 10, .35); }
body:not(.home) .sacc-blog-item-img img { border-radius: 0; }
body:not(.home) .sacc-blog-item-body { padding: 18px 22px 22px; }
body:not(.home) .sacc-blog-item h3 { font-size: 1.4rem; font-weight: 600; }

/* --- pulsanti ------------------------------------------------------------------ */
body:not(.home) .sacc-cta-button,
body:not(.home) .sacc-btn {
  display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 26px;
  background: var(--sacc-black); border: 1px solid var(--sacc-black); border-radius: var(--radius);
  color: var(--sacc-ivory); font-family: var(--font-ui); font-size: .8rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; text-decoration: none;
  transition: background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}
body:not(.home) .sacc-cta-button:hover,
body:not(.home) .sacc-btn:hover { background: var(--sacc-gold-dark); border-color: var(--sacc-gold-dark); color: #fff; }
body:not(.home) .sacc-btn--ghost { background: transparent; color: var(--sacc-black); }
body:not(.home) .sacc-btn--danger { background: transparent; color: #8a1f1f; border-color: #8a1f1f; }

/* --- fascia finale scura (invito a contattarci) -------------------------------- */
body:not(.home) .sacc-cta-final:has(h2) {
  max-width: calc(var(--container-wide) - 2 * var(--gutter)); margin: 32px auto 80px; padding: 48px 52px;
  background: var(--sacc-black); border-radius: 6px; color: var(--sacc-ivory); text-align: left;
}
body:not(.home) .sacc-cta-final h2 { margin: 0 0 12px; color: var(--sacc-ivory); font-weight: 500; }
body:not(.home) .sacc-cta-final p { max-width: 640px; color: var(--ivory-secondary); }
body:not(.home) .sacc-cta-final a:not(.sacc-cta-button) { color: var(--sacc-gold); }
body:not(.home) .sacc-cta-final .sacc-cta-button { background: var(--sacc-gold); border-color: var(--sacc-gold); color: var(--sacc-black); }
body:not(.home) .sacc-cta-final .sacc-cta-button:hover { background: var(--sacc-ivory); border-color: var(--sacc-ivory); }

@media (max-width: 700px) {
  body:not(.home) .sacc-cta-final:not(:has(h2)) { padding-left: var(--gutter); padding-right: var(--gutter); }
  body:not(.home) .sacc-hero { padding: 108px var(--gutter) 32px; }
  body:not(.home) .sacc-hero.has-image { padding-top: 120px; padding-bottom: 40px; }
  body:not(.home) .sacc-hero .sacc-hero-overlay { background: rgba(10, 10, 10, .82); }
  body:not(.home) .sacc-narrative--wide { padding-top: 36px; }
  body:not(.home) .sacc-world-block, body:not(.home) .sacc-servizio-azioni { padding-top: 32px; padding-bottom: 32px; }
  body:not(.home) .sacc-cta-final:has(h2) { margin: 16px var(--gutter) 56px; padding: 32px 24px; }
  body:not(.home) .sacc-cta-button, body:not(.home) .sacc-btn { width: 100%; }
}
