/* The module owns its inside layout. Theme tokens may supply the same values. */
.frm-bild-text {
  --frm-blue: var(--fr-blue, #2a5e9a);
  --frm-red: var(--fr-red, #b4453d);
  --frm-ink: var(--fr-ink, #334155);
  box-sizing: border-box;
  display: block;
  margin-block: 64px;
  padding: 48px;
  background: var(--fr-pale, #edf3fa);
  color: var(--frm-ink);
  font: 400 20px/1.6 'Hanken Grotesk', sans-serif;
  container-type: inline-size;
}
.frm-bild-text *, .frm-bild-text *::before, .frm-bild-text *::after { box-sizing: border-box; }
.frm-bild-text__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 48px; }
.frm-bild-text--without-image .frm-bild-text__layout { grid-template-columns: minmax(0, 1fr); }
.frm-bild-text__copy { min-width: 0; max-width: 68ch; }
.frm-bild-text__media { min-width: 0; margin: 0; }
.frm-bild-text__media img { display: block; width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; }
.frm-bild-text .frm-bild-text__eyebrow {
  margin: 0 0 16px;
  color: var(--frm-red);
  font: 500 14px/1.5 'Hanken Grotesk', sans-serif;
  text-transform: uppercase;
  letter-spacing: .075em;
}
.frm-bild-text .frm-bild-text__heading {
  margin: 0 0 24px;
  color: var(--frm-blue);
  font: 450 clamp(36px, 3.5vw, 56px)/1.12 Newsreader, Georgia, serif;
  font-optical-sizing: auto;
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
  hyphens: auto;
  text-wrap: balance;
}
.frm-bild-text__dot { color: var(--fr-red, #B4453D); }
/* Bind the final grapheme and dot; the rest of a long word may wrap. */
.frm-bild-text__end { white-space: nowrap; }
.frm-bild-text__body p { margin: 0 0 24px; color: inherit; font: inherit; overflow-wrap: anywhere; }
.frm-bild-text__body p:last-child { margin-bottom: 0; }
.frm-bild-text a { color: var(--frm-blue); font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.frm-bild-text a:hover { color: var(--frm-red); }
.frm-bild-text a:focus-visible { outline: 3px solid var(--frm-blue); outline-offset: 2px; }
.frm-bild-text .frm-bild-text__action { margin: 24px 0 0; font: 600 16px/1.5 'Hanken Grotesk', sans-serif; }
.frm-bild-text__action a { display: inline-flex; align-items: center; min-height: 48px; gap: 8px; }
@media (max-width: 1030px) {
  .frm-bild-text { padding: 32px; }
  .frm-bild-text__layout { gap: 32px; }
}
@media (max-width: 760px) {
  .frm-bild-text { padding: 24px; margin-block: 48px; }
  .frm-bild-text__layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .frm-bild-text .frm-bild-text__heading { font-size: 36px; }
}
@container (max-width: 760px) {
  .frm-bild-text__layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .frm-bild-text .frm-bild-text__heading { font-size: 36px; }
}
@media (forced-colors: active) {
  .frm-bild-text__dot { color: CanvasText; }
}
@media print {
  .frm-bild-text { print-color-adjust: exact; }
}
.frm-bild-text .frm-bild-text__media figcaption { margin: 8px 0 0; color: var(--fr-muted, #536176); font: 400 14px/1.5 'Hanken Grotesk', sans-serif; }
