/* Match the Chinese layouts while allowing natural English/German line lengths. */
:where(html[lang="en"], html[lang="de"]) :where(h1,h2,h3,p,li,label,button,a) {
  overflow-wrap: break-word;
}
html[lang="de"] :where(h1,h2,h3,p,li,label) { hyphens: auto; }
:where(html[lang="en"], html[lang="de"]) :where(.hero h1,.os-hero h1,.network-hero h1) {
  font-size: clamp(32px,4.1vw,58px);
  line-height: 1.12;
  letter-spacing: -.028em;
}
:where(html[lang="en"], html[lang="de"]) .home-redesign-02 .sy-title {
  font-size: clamp(38px,4.9vw,70px);
  line-height: 1.08;
  letter-spacing: -.035em;
  max-width: 19ch;
}
:where(html[lang="en"], html[lang="de"]) .home-redesign-02 .sy-qbtn strong { font-size: 15px; }
:where(html[lang="en"], html[lang="de"]) .home-redesign-02 .sy-qbtn em { line-height: 1.45; }
:where(html[lang="en"], html[lang="de"]) :where(.btn,.os-btn,.hero-actions a,.sy-linkbtn) {
  white-space: normal;
  text-align: center;
  line-height: 1.45;
  min-width: 0;
}
:where(html[lang="en"], html[lang="de"]) .hero-actions { flex-wrap: wrap; }
:where(html[lang="en"], html[lang="de"]) .home-redesign-02 .sy-stat-label { min-height: 3.3em; }
:where(html[lang="en"], html[lang="de"]) .partner-preview-card h3 { font-size: 18px; line-height: 1.45; }
:where(html[lang="en"], html[lang="de"]) .pc-copy h3 { font-size: 16px; line-height: 1.4; }
:where(html[lang="en"], html[lang="de"]) .pc-type { line-height: 1.5; }
:where(html[lang="en"], html[lang="de"]) .pm-kind { max-width: calc(100% - 48px); }
:where(html[lang="en"], html[lang="de"]) .pm-service-tags span { max-width: 100%; }
:where(html[lang="en"], html[lang="de"]) .pm-detail-link { text-align: center; line-height: 1.45; }
:where(html[lang="en"], html[lang="de"]) .pm-english[hidden] { display: none; }
:where(html[lang="en"], html[lang="de"]) .footer-title { font-size: clamp(28px,3.4vw,46px); }
:where(html[lang="en"], html[lang="de"]) .ck-option { min-width: 0; }
:where(html[lang="en"], html[lang="de"]) .ck-option strong { line-height: 1.5; }
@media (max-width:1120px) {
  :where(html[lang="en"], html[lang="de"]) .pm-heading { flex-direction: column; align-items: flex-start; }
}
@media (max-width:760px) {
  :where(html[lang="en"], html[lang="de"]) :where(.hero h1,.os-hero h1,.network-hero h1) { font-size: clamp(30px,7.5vw,44px); }
  :where(html[lang="en"], html[lang="de"]) .home-redesign-02 .sy-title { font-size: clamp(35px,8.5vw,50px); max-width: 19ch; }
  :where(html[lang="en"], html[lang="de"]) .hero-actions { gap: 10px; }
  :where(html[lang="en"], html[lang="de"]) .pm-view-controls button { font-size: 11px; white-space: normal; line-height: 1.4; }
  :where(html[lang="en"], html[lang="de"]) .dq-case-entry h3 { font-size: 17px; }
}

/* Keep the full desktop menu separate from the language controls. */
@media (min-width:981px) {
  :where(html[lang="en"],html[lang="de"]) .header-row { gap:10px; }
  :where(html[lang="en"],html[lang="de"]) .brand { min-width:180px; }
  :where(html[lang="en"],html[lang="de"]) .header-right { min-width:226px; flex-shrink:0; }
  :is(html[lang="en"],html[lang="de"]) .site-header :is(.nav-link,.nav-btn) { padding-inline:9px; font-size:12px; }
  :is(html[lang="en"],html[lang="de"]) .home-redesign-02 .sy-hero :is(.sy-cta-primary,.sy-cta-secondary) { width:auto; min-width:156px; padding-inline:18px; font-size:15px; white-space:nowrap; }
}

@media (min-width:981px) and (max-width:1200px) {
  :is(html[lang="en"],html[lang="de"]) .site-header .brand { min-width:125px; }
  :is(html[lang="en"],html[lang="de"]) .site-header .brand-title .en { display:none; }
  :is(html[lang="en"],html[lang="de"]) .site-header .header-cta { display:none; }
  :is(html[lang="en"],html[lang="de"]) .site-header .header-right { min-width:130px; }
}

html[lang="de"] h1 { hyphens:none; }
@media (max-width:760px) {
  html[lang="de"] .home-redesign-02 .sy-title { font-size:clamp(30px,8vw,42px); line-height:1.14; }
}
