/* Hand-written corrections, loaded after the generated site.css.
 *
 * src/ is derived from the pre-i18n site by tools/make-src.py and is wiped on
 * every run, so deliberate design changes cannot live there. They live here.
 * Keep each block short and say what it fixes — this file is read by people.
 */

/* ------------------------------------------------------------------ *
 * Company cards on the story page
 *
 * The four logos have very different proportions — 460x87, 460x88, 300x255,
 * 520x221 — so a logo band that sizes itself to its image made the paragraph
 * under each card start at a different height. Giving the band one fixed
 * height and centring the logo inside it puts all four paragraphs on one line.
 * ------------------------------------------------------------------ */

.discover__block_logo {
  height: 3.4rem;
  margin: 0 0 1.5rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.discover__block_logo img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  object-fit: contain;
  object-position: left center;
}

/* Optical sizing. Matching the four marks on height makes the square Dosmax
 * badge look small and the wide wordmarks look heavy, because the eye reads
 * mass, not measurement. These caps line up their apparent weight instead.
 * Ratios: coVoIP 5.3:1, txtflow 5.2:1, Dosmax 1.2:1, Althicom 2.4:1. */
.discover__block_logo img.logo--covoip   { max-height: 2.0rem; }
.discover__block_logo img.logo--txtflow  { max-height: 2.3rem; }
.discover__block_logo img.logo--dosmax   { max-height: 3.4rem; }
.discover__block_logo img.logo--althicom { max-height: 1.9rem; }

/* 1.13em is display leading applied to body copy. In a quarter-width column it
 * reads as a wall. Automatic hyphenation was tried here and removed: Dutch in a
 * column this narrow produced a hyphen on nearly every line, and it broke
 * "coVoIP" across two of them. The raggedness is the column width's fault, and
 * that is a layout decision, not something to paper over. */
.discover__block p {
  line-height: 1.5;
  /* Safety net: break a word only when it genuinely cannot fit. Without this,
   * "Softwareentwicklungslösungen" ran outside the white card. */
  overflow-wrap: break-word;
}

/* German only, and only here. Its compounds are longer than a quarter-width
 * column, and breaking them without a hyphen — "Telekommunikationslös / ungen" —
 * is worse than not breaking at all. Automatic hyphenation puts the break on a
 * syllable and marks it.
 *
 * Deliberately not applied to Dutch or English: tried there, it produced a
 * hyphen on nearly every line and split "coVoIP" in two. This scoping only
 * works because <html lang> is now correct per domain. */
html[lang="de"] .discover__block p {
  -webkit-hyphens: auto;
  hyphens: auto;
}

.discover__blocks .row {
  align-items: stretch;
}

/* ------------------------------------------------------------------ *
 * The one place the site asks for bold
 *
 * This stylesheet maps weight by family, the old way: `strong` switches to
 * FuturaPTWebBold rather than raising font-weight. Only .lang-switch a.active
 * breaks that pattern — it asks for font-weight: bold while inheriting Book,
 * so the browser fakes the weight. The real cut is already loaded.
 * ------------------------------------------------------------------ */

.lang-switch a.active {
  font-family: 'FuturaPTWebBold';
  font-weight: normal;
}
