/* Configured PROJECT EVIDENCE grids only. Local candidate; browser QA pending. */
body .plum-project-evidence--three-slot .plum-project-evidence__grid,
body .plum-project-evidence--three-slot.plum-softening-evidence .plum-project-evidence__grid.plum-softening-case-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 20px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > :not(article) {
  grid-column: 1 / -1;
  min-width: 0;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article {
  display: flex;
  flex-direction: column;
  min-width: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

/* Cards are positioned by the grid; their own top margins must stay zero.
   A published Customizer rule gives article+article margin-top:18px !important
   (specificity 0,2,3) on several Pages (NF / ammonia / HFCS / biopharma), and
   WordPress layout spacing adds margins to flow-layout children. This rule is
   one class longer so it wins without touching that published CSS. */
body .plum-project-evidence--three-slot .plum-project-evidence__grid > article.wp-block-group {
  margin-top: 0 !important;
}

/* The FGD evidence section spans nearly the full viewport while other
   sections use the standard ~1144px content width; cap the grid so the
   three cards match the visual size used across the other Pages. */
.plum-fgd-evidence.plum-project-evidence--three-slot .plum-project-evidence__grid {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1144px !important;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card {
  background: #f8f7f3;
  border: 1px solid #d9dde5;
  border-radius: 8px;
  /* Dark-section Pages (.plum-leachate-nf-evidence, .plum-ammonia-evidence,
     .plum-cooling-evidence) set color: #ffffff on the section; the reserved card
     is light, so its heading, label, dt and CTA link need an explicit dark ink. */
  color: #142326;
  overflow: hidden;
  padding-bottom: 24px;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card > :not(.plum-ev3__media) {
  margin-left: 23px;
  margin-right: 23px;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card > h3 {
  font-size: 20px;
  line-height: 1.35;
  margin-bottom: 20px;
  margin-top: 0;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card > dl {
  border-top: 1px solid #d9dde5;
  margin-bottom: 20px;
  margin-top: 0;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card > dl > div {
  border-bottom: 1px solid #d9dde5;
  display: grid;
  gap: 10px;
  grid-template-columns: 90px minmax(0, 1fr);
  padding: 11px 0;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card dt,
.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card dd {
  font-size: 12px;
  line-height: 1.55;
  margin: 0;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card dt {
  font-weight: 800;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article.plum-ev3-card dd {
  color: #5b6371;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > :is(
  figure.wp-block-plum-editable-image,
  .plum-mbr-case-record,
  .plum-ev3__media
) {
  aspect-ratio: 16 / 10;
  box-sizing: border-box;
  flex: none;
  width: 100%;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
}

.plum-process-fluid-evidence.plum-project-evidence--three-slot
  .plum-process-fluid-evidence-layout.plum-project-evidence__grid
  > article.plum-process-fluid-evidence-feature > p:first-child {
  aspect-ratio: 16 / 10;
  margin: 0;
  overflow: hidden;
}

.plum-process-fluid-evidence.plum-project-evidence--three-slot
  .plum-process-fluid-evidence-layout.plum-project-evidence__grid
  > article.plum-ev3-card {
  background: #fff;
  border: 1px solid var(--plum-process-line, #d9dde5);
  border-radius: 36px;
}

.plum-process-fluid-evidence.plum-project-evidence--three-slot
  .plum-process-fluid-evidence-layout.plum-project-evidence__grid
  > article.plum-process-fluid-evidence-feature > p:first-child a {
  display: block;
  height: 100%;
}

.plum-process-fluid-evidence.plum-project-evidence--three-slot
  .plum-process-fluid-evidence-layout.plum-project-evidence__grid
  > article.plum-process-fluid-evidence-feature > p:first-child img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > .plum-mbr-case-record {
  padding: clamp(20px, 2.2vw, 32px);
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > .plum-mbr-case-record > strong {
  font-size: clamp(42px, 5vw, 68px);
}

.plum-project-evidence--three-slot .plum-ev3__media {
  display: block;
  margin: 0;
  overflow: hidden;
  position: relative;
}

.plum-project-evidence--three-slot .plum-ev3__media img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.plum-project-evidence--three-slot .plum-ev3__media--neutral {
  background: linear-gradient(145deg, #eef6f4, #d8ebe6);
}

.plum-project-evidence--three-slot .plum-ev3__visual {
  border: 3px solid #a3c8bf;
  border-radius: 50%;
  height: 23%;
  left: 18%;
  position: absolute;
  top: 35%;
  width: 23%;
}

.plum-project-evidence--three-slot .plum-ev3__visual::before,
.plum-project-evidence--three-slot .plum-ev3__visual::after {
  border: 3px solid #80b6a9;
  border-radius: 50%;
  content: "";
  height: 100%;
  left: 145%;
  position: absolute;
  top: -3px;
  width: 100%;
}

.plum-project-evidence--three-slot .plum-ev3__visual::after {
  border: 0;
  border-top: 3px solid #80b6a9;
  border-radius: 0;
  height: 0;
  left: 98%;
  top: 50%;
  width: 51%;
}

.plum-project-evidence--three-slot .plum-ev3__media figcaption {
  bottom: 16px;
  color: #315d55;
  font-size: 12px;
  font-weight: 700;
  left: 18px;
  line-height: 1.4;
  position: absolute;
  right: 18px;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid h3 a {
  color: inherit;
  text-decoration: none;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid h3 a:hover,
.plum-project-evidence--three-slot .plum-project-evidence__grid h3 a:focus-visible {
  color: #075c53;
  text-decoration: underline;
}

/* CTA/link row is pinned to the card bottom. Some Pages (dark NF / ammonia /
   cooling sections) override the paragraph margins with their own rules, which
   leaves short reserved cards with a floating CTA; the body-prefixed selector
   plus !important keeps the pin across all 72 Pages. */
body .plum-project-evidence--three-slot .plum-project-evidence__grid > article.wp-block-group > p.plum-evidence-link {
  margin-top: auto !important;
  padding-top: 16px !important;
  text-transform: none;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > p.plum-ev3__capacity {
  color: #183b39;
  font-size: 20px;
  font-weight: 750;
  text-transform: none;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > p.plum-ev3__description {
  color: #526a67;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: none;
}

.plum-project-evidence--three-slot .plum-project-evidence__grid > article > p.plum-ev3__plain {
  color: #617974;
}

@media (max-width: 1099px) and (min-width: 720px) {
  body .plum-project-evidence--three-slot .plum-project-evidence__grid,
  body .plum-project-evidence--three-slot.plum-softening-evidence .plum-project-evidence__grid.plum-softening-case-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  /* The softening-family Pages publish width:100%!important for their grid
     articles, which turns the centred third card into a full-width block;
     this body-prefixed selector keeps the intended half-width centre. */
  body .plum-project-evidence--three-slot .plum-project-evidence__grid > article.wp-block-group:nth-of-type(3) {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: calc((100% - 20px) / 2) !important;
  }
}

@media (max-width: 719px) {
  body .plum-project-evidence--three-slot .plum-project-evidence__grid,
  body .plum-project-evidence--three-slot.plum-softening-evidence .plum-project-evidence__grid.plum-softening-case-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .plum-project-evidence--three-slot .plum-project-evidence__grid > article.wp-block-group:nth-of-type(3) {
    grid-column: auto !important;
    width: 100% !important;
  }
}

/* Unified image-first project card, 2026-09-29. Every visible project is one
   case; a card footer is linked only when a same-language detail exists. */
body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid > article.wp-block-group.plum-project-card {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 0 22px !important;
  overflow: hidden !important;
  border: 1px solid #dbe7ec !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #183041 !important;
  box-shadow: 0 10px 30px rgba(15, 44, 63, .055) !important;
  text-align: left !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > * {
  box-sizing: border-box !important;
  max-width: none !important;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.plum-project-card > .plum-project-card__media {
  display: block !important;
  position: relative !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #e8f1ef !important;
  line-height: 0 !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > .plum-project-card__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: 0 !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > .plum-project-card__media--neutral {
  background: linear-gradient(140deg, #f0f7f5, #dcece8) !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-project-card__visual,
body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-ev3__visual {
  position: absolute;
  top: 32%;
  left: 25%;
  width: 22%;
  height: 36%;
  border: 3px solid #a9cfc5;
  border-radius: 50%;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-project-card__visual::before,
body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-ev3__visual::before {
  content: '';
  position: absolute;
  top: -3px;
  left: 150%;
  width: 100%;
  height: 100%;
  border: 3px solid #87b9ad;
  border-radius: 50%;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-project-card__visual::after,
body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card .plum-ev3__visual::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 99%;
  width: 52%;
  height: 0;
  border: 0;
  border-top: 3px solid #87b9ad;
  border-radius: 0;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__eyebrow {
  width: auto !important;
  margin: 22px 24px 8px !important;
  padding: 0 !important;
  color: #174f68 !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.plum-project-card > h3.plum-project-card__title {
  width: auto !important;
  margin: 0 24px 14px !important;
  padding: 0 !important;
  color: #183041 !important;
  font-size: clamp(20px, 1.55vw, 23px) !important;
  font-weight: 720 !important;
  line-height: 1.32 !important;
  text-wrap: balance;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__capacity {
  width: auto !important;
  margin: 0 24px 18px !important;
  padding: 0 !important;
  color: #375866 !important;
  font-size: 17px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
  text-transform: none !important;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__cta {
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  min-height: 62px !important;
  margin: auto 24px 0 !important;
  padding: 16px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid #dbe7ec !important;
  background: none !important;
  color: #0b67a5 !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
  text-transform: uppercase !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__cta a {
  color: #0b67a5 !important;
  text-decoration: none !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__cta a:hover,
body .plum-project-evidence--three-slot .plum-project-evidence__grid
  > article.plum-project-card > p.plum-project-card__cta a:focus-visible {
  color: #074a77 !important;
  text-decoration: underline !important;
}

body .plum-project-evidence--three-slot.plum-project-evidence--three-slot
  .plum-project-evidence__grid.plum-project-evidence__grid
  > article.wp-block-group.plum-project-card:not(:has(.plum-project-card__capacity))
  > h3.plum-project-card__title {
  margin-top: 24px !important;
}

body .plum-project-evidence--three-slot .plum-project-evidence__more {
  max-width: 1144px;
  margin: 18px auto 0;
  color: inherit;
  font-size: 14px;
  line-height: 1.55;
}

@media (max-width: 719px) {
  body .plum-project-evidence--three-slot .plum-project-evidence__grid
    > article.plum-project-card > .plum-project-card__media {
    aspect-ratio: 16 / 9 !important;
  }
  body .plum-project-evidence--three-slot .plum-project-evidence__grid
    > article.plum-project-card > :is(p.plum-project-card__eyebrow,
                                     p.plum-project-card__capacity,
                                     p.plum-project-card__cta,
                                     h3.plum-project-card__title) {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
}

/* Show only actual cards, with no empty third-column reserve. */
body .plum-project-evidence--three-slot .plum-project-evidence__grid.plum-project-evidence__grid:not(:has(> article:nth-of-type(3))) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
body .plum-project-evidence--three-slot .plum-project-evidence__grid.plum-project-evidence__grid:not(:has(> article:nth-of-type(2))) { grid-template-columns:minmax(0,1fr) !important; max-width:760px !important; margin-inline:auto; }
@media (max-width: 719px) {
  body .plum-project-evidence--three-slot .plum-project-evidence__grid.plum-project-evidence__grid,
  body .plum-project-evidence--three-slot .plum-project-evidence__grid.plum-project-evidence__grid:not(:has(> article:nth-of-type(3))),
  body .plum-project-evidence--three-slot .plum-project-evidence__grid.plum-project-evidence__grid:not(:has(> article:nth-of-type(2))) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
