/* A compact language disclosure shared by desktop and mobile navigation. */
.header-actions{display:flex;align-items:center;gap:1rem;flex:none}
.language-picker{position:relative;flex:none}
.language-picker>summary{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.8rem;padding:.4rem .5rem;list-style:none;cursor:pointer;border-radius:3px;color:var(--ink);font-size:.875rem;font-weight:500;line-height:1;transition:background .2s}
.language-picker>summary::-webkit-details-marker{display:none}
.language-picker>summary:hover,.language-picker[open]>summary{background:#10283e08}
.language-picker>summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.language-flag{display:block;width:20px;height:14px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px #10283e18;flex:none}
.language-chevron{width:.75rem;height:.75rem;color:var(--muted)}
.language-picker[open] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;top:calc(100% + .55rem);right:0;z-index:2;min-width:10.25rem;max-height:calc(100dvh - 6rem);overflow-y:auto;padding:.35rem;background:var(--paper);border:1px solid var(--line);border-radius:4px;box-shadow:0 10px 30px #071d3012}
.language-options a{display:flex;align-items:center;gap:.7rem;min-height:2.75rem;padding:.65rem .7rem;font-size:.875rem;line-height:1.3;white-space:nowrap;border-radius:2px}
.language-options a:hover,.language-options a:focus-visible{background:var(--ice)}
.language-options a[aria-current]{font-weight:600;color:var(--blue)}
.language-check{width:1rem;height:1rem;margin-left:auto}
.language-switch{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;align-items:center;font:500 .78rem/1.5 Arial,sans-serif}
.language-switch a{color:inherit;text-decoration:none;padding:.4rem 0}
.language-switch a[aria-current]{text-decoration:underline;text-underline-offset:.3em}
.language-switch a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.site-footer>.language-switch{margin:1.5rem 0 .75rem}
html[lang="nl"] .desktop-nav{gap:clamp(.65rem,1.8vw,1.8rem)}
html[lang="nl"] .hero-copy h1{font-size:clamp(2.5rem,5.4vw,6.5rem)}
@media(max-width:760px){html[lang="nl"] .hero-copy h1{font-size:clamp(2.5rem,10vw,4.75rem)}}
@media(min-width:1025px) and (max-width:1280px){
 .site-header{gap:1rem}
 .desktop-nav,html[lang="nl"] .desktop-nav{gap:1rem}
 .header-actions{gap:.5rem}
 .header-cta{padding:.75rem .8rem;gap:.65rem}
}
@media(max-width:1024px){.header-actions{margin-left:auto;gap:.7rem}}
@media(max-width:600px){
 .site-header{gap:.5rem}
 .header-actions{gap:.375rem}
 .header-cta{padding:.65rem .65rem}
 .header-cta .long-label,.header-cta svg,.language-code{display:none}
 .header-cta .short-label{display:inline}
 .language-picker>summary{min-width:2.75rem;padding:.35rem;gap:.3rem}
}
/* Allow translated copy to flow without changing the established image framing. */
html:is([lang="fr"],[lang="es"],[lang="de"]) .hero-copy h1{font-size:clamp(2.35rem,5.2vw,6.2rem)}
html:is([lang="fr"],[lang="es"],[lang="de"]) main :is(h1,h2,h3){overflow-wrap:break-word;hyphens:auto}
html:is([lang="fr"],[lang="es"],[lang="de"]) main h1 em{max-width:100%}
@media(max-width:760px){
 html:is([lang="fr"],[lang="es"],[lang="de"]) .hero-copy h1{font-size:clamp(2.3rem,10vw,4.75rem)}
}
/* Native CJK fonts preserve readable glyphs without extra font downloads. */
html[lang="zh-Hans"]{--sans:'DM Sans','PingFang SC','Microsoft YaHei','Noto Sans CJK SC',sans-serif;--serif:'DM Serif Display','Noto Serif CJK SC','Songti SC','SimSun',serif;line-break:strict}
html[lang="ja"]{--sans:'DM Sans','Hiragino Kaku Gothic ProN','Yu Gothic','Meiryo','Noto Sans CJK JP',sans-serif;--serif:'DM Serif Display','Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',serif;line-break:strict}
html[lang="ko"]{--sans:'DM Sans','Apple SD Gothic Neo','Malgun Gothic','Noto Sans CJK KR',sans-serif;--serif:'DM Serif Display','Noto Serif CJK KR','Batang',serif;word-break:keep-all}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) body{line-height:1.8;overflow-wrap:anywhere}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main :is(h1,h2,h3){letter-spacing:0;line-height:1.3;hyphens:none;max-width:100%}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main h1{font-size:clamp(2.25rem,3.8vw,4.6rem)}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main h2{font-size:clamp(1.8rem,2.8vw,3.3rem)}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main h3{font-size:clamp(1.2rem,1.8vw,1.8rem)}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main em{font-style:normal;letter-spacing:inherit;line-height:inherit}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .hero-copy h1{font-size:clamp(2.1rem,3.8vw,4.9rem);max-width:100%;line-height:1.25}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .hero-copy h1 em{font-size:1em}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .hero-description{max-width:30em;line-height:1.85}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) :is(.eyebrow,.desktop-nav,.button,.serve-tabs button>span:nth-child(2)){letter-spacing:.015em;line-height:1.6}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .serve-tabs button>span:nth-child(2){font-size:clamp(1.1rem,1.5vw,1.6rem)}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .desktop-nav{gap:clamp(.65rem,1.5vw,1.65rem)}
html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .business-product-facts .business-fact-word{letter-spacing:0;line-height:1.6}
@media(max-width:760px){
 html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main h1{font-size:clamp(1.9rem,6.8vw,3rem)}
 html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) main h2{font-size:clamp(1.7rem,6vw,2.5rem)}
 html:is([lang="zh-Hans"],[lang="ja"],[lang="ko"]) .hero-copy h1{font-size:clamp(1.8rem,6.9vw,3.5rem)}
}
