/* Start custom CSS *//* ------------------------------------------------------------------
   Article prose - post_content descendants.
   The INHERITABLE half of the body type (font-family, font-size,
   font-weight, line-height, colour) lives in the article-prose V4
   class variants, per house rule #1. Only what cannot inherit or
   cannot carry a class is written here: paragraph rhythm, the heading
   scale, lists, links and the sign-off. post_content <p> tags come
   out of the DB, so no Elementor class can be attached to them.
   Heading rules are prefixed with body so they outrank the kit tag
   scale (.elementor-kit-5 h2) on equal-specificity load order.
   Logical properties only - this template ships RTL.
   ------------------------------------------------------------------ */

.article-prose p { margin-block: 0 1.25rem; }
.article-prose p:last-child { margin-block-end: 0; }

body .article-prose h2,
body .article-prose h3 { font-family: "Ploni", sans-serif; color: #2F3539; }
body .article-prose h2 {
  font-size: clamp(1.75rem, 1.177rem + 0.894vw, 2.25rem);
  font-weight: 600;
  line-height: 1.2;
  margin-block: 2.5rem 0.75rem;
}
body .article-prose h3 {
  font-size: clamp(1.5rem, 0.95rem + 0.86vw, 2rem);
  font-weight: 500;
  line-height: 1.25;
  margin-block: 2rem 0.75rem;
}
body:lang(he) .article-prose h2 { font-weight: 700; }
body .article-prose h2:first-child,
body .article-prose h3:first-child { margin-block-start: 0; }

.article-prose ul,
.article-prose ol { margin-block: 0 1.25rem; padding-inline-start: 1.5rem; }
.article-prose li { margin-block-end: 0.5rem; }
.article-prose li:last-child { margin-block-end: 0; }

.article-prose a { color: #D24148; text-decoration: underline; text-underline-offset: 0.15em; }
.article-prose a:hover { color: #F15B5B; }

.article-prose img { max-width: 100%; height: auto; border-radius: 24px; }

.article-prose blockquote {
  margin-block: 2rem;
  margin-inline: 0;
  padding-inline-start: 1.25rem;
  border-inline-start: 3px solid #D24148;
  font-weight: 500;
}

/* Sign-off. Quiet on purpose: Muted Text, one weight step up, extra
   air above. No italic - Ploni ships no italic face, so italics would
   be a synthesised oblique. */
.article-prose p.post-signoff {
  margin-block-start: 2.5rem;
  font-weight: 500;
  color: #8D9092;
}

/* Hebrew weight bump - mirrors the site's existing
   body:lang(he) .md-title / .hero-title rules (Customizer Additional CSS).
   Ploni Demibold reads too light in Hebrew display type.
   Cannot be a V4 variant: :lang() is not an expressible state. */
body:lang(he) .post-hero-title { font-weight: 700; }

/* Category term arrives from the post-terms dynamic tag wrapped in <a>.
   The anchor is generated markup, so it cannot carry a class. */
.post-eyebrow a { color: inherit; text-decoration: none; }
.post-eyebrow a:hover { color: #D24148; }

@media (max-width: 1024px) {
  body .article-prose h2 { font-size: 1.75rem; }
  body .article-prose h3 { font-size: 1.5rem; }
}
@media (max-width: 767px) {
  body .article-prose h2 { font-size: 1.625rem; }
  body .article-prose h3 { font-size: 1.375rem; }
  .article-prose p { margin-block-end: 1.125rem; }
}

/* ------------------------------------------------------------------
   Case-study additions (Template B). Every rule below targets
   markup that comes out of post_content, so none of it can carry an
   Elementor class - it has to be descendant CSS on article-prose.
   Logical properties only; no shadow anywhere.
   ------------------------------------------------------------------ */

/* Standfirst - the deck line that opens the story. Kept at the body
   text-lg scale on purpose (it inherits the article-prose clamp, so it
   tracks every breakpoint for free) and separated by weight and a
   tighter leading instead of size, so it never competes with the h2. */
.article-prose p.post-subtitle {
  color: #2F3539;
  font-weight: 500;
  line-height: 1.6;
}

/* Bagrut results panel.
   The rows are wildly uneven - one is six words, one is sixty - so the
   panel is a plain block stack. No grid, no flex, no equal-height
   cards: nothing here can force a shared row height, and a row simply
   grows to whatever its text needs. Surface is the contact card's
   #e9e9e9 at the system 24px radius; rows are parted by a hairline in
   Borders/ Dividers #D1D3D4 (declared in the kit, first use here). */
.article-prose .case-results {
  margin-block: 2rem;
  padding: 2rem;
  border-radius: 24px;
  background-color: #e9e9e9;
}
.article-prose .case-results p {
  margin-block: 0;
  padding-block: 1rem;
  border-block-start: 1px solid #D1D3D4;
}
.article-prose .case-results p:first-child {
  padding-block-start: 0;
  border-block-start: 0;
}
.article-prose .case-results p:last-child {
  padding-block-end: 0;
}

/* One row carries TWO <strong>s - the subject name and Yael's own
   "ציון עובר" emphasis - so strong is styled once, identically, and
   position alone does the labelling. Nothing here may assume one
   strong per row. */
.article-prose .case-results strong {
  color: #2F3539;
  font-weight: 700;
}

/* The grade is the payoff of the whole story: brand red, bold, and a
   quarter-step up in size. Sized in em so it tracks the body clamp at
   every breakpoint with no override. line-height 1 keeps its inline
   box (about 1.25em) inside the row's 1.7 line box, so a grade never
   pushes the lines of the sixty-word row apart. */
.article-prose .case-results .case-grade {
  color: #D24148;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 767px) {
  .article-prose .case-results { margin-block: 1.5rem; padding: 1.5rem; }
  .article-prose .case-results p { padding-block: 0.875rem; }
}/* End custom CSS */