/* =========================================================
   BLOGI (single-post) – typografian rytmi + listapoikkeukset
   Toimii ProPhotossa vaikka wrapper ei olisi .entry-content
   ========================================================= */

body.single-post :where(.entry-content, .post-content, .post-entry, .pp-content, .pp-post-content, .content, .site-content, article) {
  --txt-gap: 1rem;        /* yleinen väli lohkojen välissä */
  --p-to-list: 0.5rem;   /* kappale -> lista */
  --list-to-h5: 1.6rem;   /* lista -> H5 */
}

/* Yleinen lohkoväli */
body.single-post :where(.entry-content, .post-content, .post-entry, .pp-content, .pp-post-content, .content, .site-content, article) > * + * {
  margin-block-start: var(--txt-gap) !important;
}

/* Nollaa elementtien omat marginaalit (poistaa tuplavälit) */
body.single-post :where(.entry-content, .post-content, .post-entry, .pp-content, .pp-post-content, .content, .site-content, article)
  :where(p, ul, ol, h4, h5, figure) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

/* Kappale -> lista tiiviimmäksi */
body.single-post :where(.entry-content, .post-content, .post-entry, .pp-content, .pp-post-content, .content, .site-content, article)
  p + :where(ul, ol) {
  margin-block-start: var(--p-to-list) !important;
}

/* Lista -> H5 selkeämmin erilleen */
body.single-post :where(.entry-content, .post-content, .post-entry, .pp-content, .pp-post-content, .content, .site-content, article)
  :where(ul, ol) + h5 {
  margin-block-start: var(--list-to-h5) !important;
}

/* H4/H5 otsikon “oma hengitys” (koska nollasimme marginaalit yllä) */
body.single-post h4 {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
}

body.single-post h5 {
  margin-top: 1.5rem !important;
  margin-bottom: 0.7rem !important;
}

/* =========================================================
   IMAGE-STACK – pakota tasainen kuvaväli (yläkuva ↔ columns = sama kuin columnsin sisäinen väli)
   ========================================================= */

/* Oletus: käytä samaa gap-muuttujaa, jota WP/teema usein käyttää */
body.single-post .image-stack {
  --stack-gap: var(--wp--style--block-gap, 0.1rem);
}

/* Tee pinon sisäisestä layoutista “gap-ohjattu” */
body.single-post .image-stack :where(.wp-block-group__inner-container, .is-layout-flow, .is-layout-constrained, .is-layout-wide) {
  display: flex !important;
  flex-direction: column !important;
  gap: var(--stack-gap) !important;
}

/* Nollaa kaikki marginaalit pinon sisällä, jotta gap on ainoa väli */
body.single-post .image-stack :where(figure, .wp-block-image, .wp-block-columns, .wp-block-column) {
  margin: 0 !important;
  padding: 0 !important;
}

body.single-post .image-stack{
  --pair-gap: var(--wp--style--block-gap, 2rem);
}

body.single-post .image-stack :where(figure, .wp-block-image, .wp-block-columns){
  margin: 0 !important;
  padding: 0 !important;
}

body.single-post .image-stack :where(.wp-block-columns, .wp-block-columns.is-layout-flex){
  margin-top: calc(-1 * var(--pair-gap)) !important;
}