/* ====================================================================
 * THE TITLE OF THE GERMAN TERMS PAGE
 * assets/ccx-legal34.css, belongs to inc/ccx-legal34.php
 *
 * The page is headed "ALLGEMEINE GESCHAEFTSBEDINGUNGEN". The second word
 * is one compound of twenty letters, the heading widget it stands in has
 * a fixed width, and below 1025 pixels the word is wider than that box
 * AND wider than the window. An ancestor carries overflow hidden, so the
 * overhang is cut off at the window edge instead of pushing the page
 * wider: the last letter is simply absent and nothing scrolls sideways
 * to give it away. Painted text edge against window width, measured on
 * the published page, both engines:
 *
 *       320    394.0 against 320      375    401.5 against 375
 *       414    421.0 against 414      768    760.0 against 768
 *      1024    888.0 against 1024    1025    997.4 against 1025
 *      1440   1204.9 against 1440
 *
 * The word now carries a soft hyphen between its two halves, put there
 * by tools/r34-links/build.php, and that soft hyphen sits inside a span
 * of its own. The full reading of the case is in the module file next
 * door; this file only says when the span is there and when it is not.
 *
 * SPECIFICITY
 * The page stylesheet Elementor writes carries four classes for the text
 * of this widget. The rules here add the body element to the same shape,
 * which is one step more, and it is the shape section 7 of
 * ccx-mobblog.css already uses on this page. So the order in which the
 * two files load decides nothing.
 * ==================================================================== */

/* --------------------------------------------------------------------
 * 1  BELOW 1025 THE WORD MAY BREAK, AND IT BREAKS AT ITS SEAM
 *
 * The span is shown, so the browser finds the soft hyphen inside it and
 * breaks GESCHAEFTS- / BEDINGUNGEN, with a hyphen, where a German reader
 * expects the break. Nothing else is needed for that: no declaration, no
 * hyphenation dictionary, no width. The heading reads over three lines
 * instead of two and ends 56 pixels before the window edge at 320, 83 at
 * 375, 103 at 414, 235 at 768 and 363 at 1024. Identical in Chromium and
 * in WebKit at every one of those widths.
 *
 * WHY NOT hyphens:auto
 * It was measured, and the two engines do not agree. At 375 Chromium set
 * the word over three lines with a seventeen pixel fragment among them
 * and WebKit over two with different break points; on the ENGLISH page
 * WebKit went on to break "CONDITIONS", which had always fitted. A
 * dictionary that is present in one browser and absent in another is not
 * a layout.
 *
 * WHAT THE RULE BELOW IS FOR
 * It is a net, not the fix. overflow-wrap only ever applies to a word
 * that cannot fit on a line even alone, which is exactly this case, and
 * it only comes into play if the soft hyphen is ever lost in an edit in
 * the builder. The break is then at an arbitrary letter and without a
 * hyphen, which is poor - but it is readable, and a cut off word is not.
 * -------------------------------------------------------------------- */

@media (max-width: 1024px) {
    body.ccx-legal34-terms .elementor-element.elementor-element-ffdff11 .elementor-heading-title {
        overflow-wrap: break-word;
    }
}

/* --------------------------------------------------------------------
 * 2  FROM 1025 UPWARDS NOTHING MOVES AT ALL
 *
 * Up there the title fits the window with 27 pixels to spare and has
 * been read as two lines since the page was published. The soft hyphen
 * would still be an invitation to break, and the word IS wider than its
 * 758 pixel box, so the desktop would silently have gained a third line.
 *
 * WHY NOT hyphens:none
 * That is the declaration made for exactly this, and Chromium obeys it.
 * WebKit does not. Measured on the published page with the soft hyphen
 * in the word and hyphens:none in force: Chromium two lines ending at
 * 997.4 and 1204.9, WebKit three lines ending at 751.1 and 958.6. Lars
 * reads this site on a telephone, which is WebKit, so a rule only
 * Chromium honours is not a rule.
 *
 * WHAT IS DONE INSTEAD
 * The span is taken out of the page. A soft hyphen that is not rendered
 * is not a break opportunity, the two halves of the word become
 * neighbours with nothing between them, and the word is unbreakable
 * again - not because a browser was asked to ignore something, but
 * because there is nothing left to ignore. Measured at 1025, 1100 and
 * 1440 in both engines, with the span and without it: two lines, left
 * edge 133.5 / 171.0 / 341.0, right edge 997.4 / 1034.9 / 1204.9,
 * identical to the tenth of a pixel.
 *
 * WHY THE BOX WAS NOT SIMPLY MADE WIDER
 * That also stops the break, and it was measured too: at 880 pixels
 * instead of 758 the word no longer needs to break. But the long line
 * does not stand in the middle of its box - it starts at the box's left
 * edge and hangs out to the right - and the box is centred, so widening
 * it by 122 pixels moves that left edge, and the line with it, 61 pixels
 * to the left. The desktop would have looked different at a width where
 * nobody has ever reported anything.
 * -------------------------------------------------------------------- */

@media (min-width: 1025px) {
    body.ccx-legal34-terms .elementor-element.elementor-element-ffdff11 .elementor-heading-title .ccx-shy {
        display: none;
    }
}
