/* Blocchi Gutenberg sul front: si inseriscono nel design Laica senza romperlo */
.entry-content > * { max-width: 760px; margin-left: auto; margin-right: auto; }
.entry-content > .alignwide { max-width: 1080px; }
.entry-content > .alignfull { max-width: none; }
.entry-content h2, .entry-content h3 {
  font-family: var(--serif);
  font-weight: 400;
  color: var(--cocoa);
  margin: 2.2rem auto 0.9rem;
}
.entry-content h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); }
.entry-content h3 { font-size: 1.25rem; }
.entry-content p { color: var(--ink-soft); line-height: 1.75; margin-bottom: 1.2rem; }
.entry-content ul, .entry-content ol { color: var(--ink-soft); margin: 0 auto 1.2rem; padding-left: 1.4rem; }
.entry-content .wp-block-image img, .entry-content figure img {
  border-radius: var(--r-m);
  height: auto;
}
.entry-content .wp-block-image figcaption, .entry-content figcaption {
  font-size: 0.8rem; color: var(--muted); text-align: center; margin-top: 0.5rem;
}
.entry-content .wp-block-gallery { gap: 10px; }
.entry-content .wp-block-quote {
  border-left: 3px solid var(--gold);
  padding: 0.4rem 0 0.4rem 1.4rem;
  font-family: var(--serif);
  font-size: 1.15rem;
  color: var(--cocoa);
  margin-block: 2rem;
}
.entry-content .wp-block-button__link {
  background: var(--cocoa); color: var(--white);
  border-radius: var(--r-s);
  padding: 1rem 2rem;
  font-weight: 600; font-size: 0.82rem;
  letter-spacing: 0.13em; text-transform: uppercase;
  text-decoration: none;
  transition: background-color 0.35s ease;
}
.entry-content .wp-block-button__link:hover { background: var(--cocoa-deep); }
.entry-content .is-style-outline .wp-block-button__link {
  background: transparent; color: var(--cocoa); border: 1px solid rgba(60,37,31,0.35);
}
.entry-content .wp-block-separator {
  border: none; border-top: 1px solid rgba(60,37,31,0.15); max-width: 200px; margin-block: 2.5rem;
}
.entry-content .wp-block-columns { gap: 1.6rem; }
.entry-content .wp-block-table table { width: 100%; border-collapse: collapse; }
.entry-content .wp-block-table td, .entry-content .wp-block-table th {
  border-bottom: 1px solid rgba(60,37,31,0.12); padding: 0.6rem 0.4rem; text-align: left; font-size: 0.92rem;
}
.entry-content .wp-block-embed iframe { border-radius: var(--r-m); }

/* ==========================================================================
   Pattern Laica — aggiunte front-end (da appendere a wp-extra.css)
   1) mapping bottoni .wp-block-button.btn--X  2) classi palette WP
   3) reset conservativi per blocchi core usati nei pattern fuori da .entry-content
   ========================================================================== */

/* ---------- 1. Bottoni: le classi vere .btn arrivano dal filtro PHP render_block_core/button.
   Qui solo la neutralizzazione dei residui del CSS core sui bottoni marchiati .btn. ---------- */
.wp-block-button__link.btn { text-decoration: none; }

/* ---------- 2. Classi palette WordPress ---------- */
.has-surface-color { color: var(--surface); }
.has-surface-background-color { background-color: var(--surface); }
.has-cocoa-color { color: var(--cocoa); }
.has-cocoa-background-color { background-color: var(--cocoa); }
.has-cocoa-deep-color { color: var(--cocoa-deep); }
.has-cocoa-deep-background-color { background-color: var(--cocoa-deep); }
.has-toast-color { color: var(--toast); }
.has-toast-background-color { background-color: var(--toast); }
.has-gold-color { color: var(--gold); }
.has-gold-background-color { background-color: var(--gold); }
.has-seal-color { color: var(--seal); }
.has-seal-background-color { background-color: var(--seal); }

/* ---------- 3. Reset conservativi blocchi core fuori da .entry-content ----------
   style.css azzera già i margini con il reset universale (* { margin:0 }),
   ma wp-block-library li reintroduce con specificità maggiore: si azzerano qui.
   Nessun reset su heading/paragraph dentro i group: il reset universale del tema
   copre già i default del browser e le classi di sezione impostano i propri margini. */
figure.wp-block-image { margin: 0; }
.wp-block-buttons { gap: 0.8rem; }
/* hero__actions ha gap 1rem nel design system: lo si riafferma dopo la regola generica */
.wp-block-buttons.hero__actions { gap: 1rem; }

/* CTA band: il wrapper flex dei bottoni core non eredita text-align:center */
.cta-band .wp-block-buttons { justify-content: center; }
