/* =============================================================================
   Board letter: one design for the full page (/updates, /fr/mises-a-jour) and
   the newsletter dialog, which fetches this same <article>.
   Letterhead banner, highlighted sign-in step, strong links, logo at signature.
   ============================================================================= */

.board-letter {
  font-size: 1.0625rem; line-height: 1.7; color: var(--ink, #10201f);
}

/* ---- Letterhead --------------------------------------------------------- */
.letter-head {
  position: relative; overflow: hidden;
  min-height: 260px;
  margin: 0 0 2.25rem;
  border-radius: 10px;
  background: var(--i4-teal-deep, #003a38);
  color: #fff;
  isolation: isolate;
}
.letter-head-photo {
  position: absolute; inset: 0; z-index: -2;
  width: 100%; height: 100%; object-fit: cover; object-position: 35% 55%;
}
/* Teal wash from the left keeps the text legible and brings the orange
   horizon through on the right. */
.letter-head::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(100deg, rgba(0, 58, 56, .96) 0%, rgba(0, 58, 56, .82) 45%, rgba(0, 58, 56, .15) 100%);
}
.letter-head-inner {
  display: flex; flex-direction: column; justify-content: flex-end; gap: .6rem;
  min-height: 260px;
  padding: 1.75rem clamp(1.25rem, 4vw, 2.5rem) 2rem;
}
.letter-head-logo { width: 190px; height: auto; margin-bottom: auto; }
.letter-head-kicker {
  margin: 1.5rem 0 0;
  font-size: .875rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: #ffa033;   /* 4.7:1 on the teal wash */
}
.letter-head-title {
  margin: 0; max-width: 16ch;
  font-size: clamp(1.75rem, 1.2rem + 2vw, 2.5rem); line-height: 1.12;
  color: #fff; text-wrap: balance;
}

/* ---- Body ----------------------------------------------------------------- */
.board-letter p { margin: 0 0 1.1rem; }
.board-letter h2 { margin: 2.25rem 0 .8rem; font-size: 1.375rem; line-height: 1.3; }
.board-letter .letter-list { margin: 0 0 1.25rem; padding-left: 1.25rem; }
.board-letter .letter-list li { margin: 0 0 .9rem; }
.board-letter .letter-list li strong { display: block; }

/* Links: strong, in the deep brand teal with an orange underline. */
.board-letter a:not(.btn) {
  color: var(--i4-teal-dark, #004d4b); font-weight: 700;
  text-decoration: underline; text-decoration-color: var(--i4-orange, #f7941e);
  text-decoration-thickness: 2px; text-underline-offset: 3px;
}
.board-letter a:not(.btn):hover { color: var(--i4-teal-deep, #003a38); text-decoration-color: currentColor; }

/* ---- The sign-in step: the one action in the letter ------------------------- */
.letter-callout {
  margin: 1.5rem 0 1.75rem;
  padding: 1.25rem 1.5rem 1.35rem;
  border-left: 5px solid var(--i4-orange, #f7941e);
  border-radius: 8px;
  background: #fff5e8;
}
.letter-callout p { margin: 0 0 1rem; }
.letter-callout p:last-child { margin: 0; }

/* ---- Signature with the logo on the right ---------------------------------- */
.letter-sign {
  display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;
  margin-top: 2.25rem; padding-top: 1.35rem;
  border-top: 1px solid var(--line, #d5e0de);
}
.letter-sign p { margin: 0; }
.letter-sign-logo { width: 170px; height: auto; flex: none; }
@media (max-width: 30rem) {
  .letter-sign { flex-direction: column; align-items: flex-start; }
  .letter-sign-logo { width: 150px; }
}
