/* Shared responsive layout for all nine languages. */
.header{height:auto;min-height:110px;flex-wrap:wrap;padding-top:24px;padding-bottom:24px;gap:20px}
.header>.wordmark{flex-shrink:0}.header>nav{flex-wrap:wrap;gap:14px 24px;margin-left:auto}
.header>.button{max-width:240px;text-align:center}
.language-switch{position:relative;flex-shrink:0;z-index:20;border:0;padding:0;margin:0}
.language-switch summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:30px;padding:10px 16px;font-size:14px;line-height:1.5;white-space:nowrap;color:var(--text)}
.language-switch summary::-webkit-details-marker{display:none}.language-switch summary::after{content:'⌄';padding-left:10px;font-size:15px;position:static}.language-switch[open] summary{border-color:var(--purple)}
.header .language-list{position:absolute;right:0;top:calc(100% + 12px);width:196px;padding:8px;display:flex;flex-direction:column;gap:0;background:#22222d;border:1px solid var(--line);border-radius:15px;box-shadow:0 12px 35px #0008;max-height:75vh;overflow-y:auto}
.language-list a{display:block;padding:8px 12px;border-radius:8px;line-height:1.5}.language-list a:hover{background:#ffffff0c}.language-list a[aria-current]{color:var(--acid);background:#ffffff0a}
.hero-copy,.about-text,.training-layout>*,.service-grid article,.blog-card-copy{min-width:0}
html:not([lang="pl"]) .hero h1{font-size:clamp(42px,5.6vw,84px);letter-spacing:-3px;overflow-wrap:anywhere;hyphens:auto}
html:not([lang="pl"]) h2{letter-spacing:-1.6px;overflow-wrap:anywhere;hyphens:auto}
html:not([lang="pl"]) h3{overflow-wrap:anywhere;hyphens:auto}
html:not([lang="pl"]) .training h2{font-size:clamp(42px,4.9vw,74px)}
.hero-bottom{flex-wrap:wrap}.hero-bottom span{max-width:100%}
@media(max-width:1100px){.header>nav{order:3;flex-basis:100%;justify-content:center;margin-left:0}.header>.button{margin-left:auto}.header .language-list{order:initial;margin:0}.header{gap:18px}}
@media(max-width:760px){.header{padding:20px 24px;gap:14px}.header>.wordmark{margin-right:auto}.header>.button{max-width:170px;margin-left:0;font-size:12px;padding:10px 14px}.header>nav{justify-content:flex-start;font-size:14px;gap:12px 20px}.language-switch summary{padding:9px 12px}.hero h1{hyphens:auto}html:not([lang="pl"]) .hero h1{font-size:clamp(40px,9vw,66px);letter-spacing:-2px}.training-panel{transform:none}.hero-bottom{font-size:10px}.section-heading,.service-footer{flex-wrap:wrap}}
@media(max-width:420px){.header>.button{display:none}.header>.wordmark{font-size:25px}.header>nav{font-size:13px;gap:10px 14px}.header .language-list{font-size:15px}}
