/* FIT PROFIT v49.0 — client-first responsive stability */
:root{--v49-header:clamp(58px,7vw,76px);--v49-edge:clamp(14px,3vw,32px);--v49-reading:72ch;--v49-dock:calc(70px + env(safe-area-inset-bottom,0px));}
html{overflow-x:clip;scroll-padding-top:calc(var(--v49-header) + 18px);}
body{overflow-x:clip;min-inline-size:0;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;}
:where(main,section,article,aside,header,footer,nav,form,fieldset,div,ul,ol,li,.container,.wrap,.grid,.card,.panel)>*{min-inline-size:0;}
:where(img,svg,video,canvas,iframe,picture){max-inline-size:100%;height:auto;}
:where(h1,h2,h3,h4,h5,h6){overflow-wrap:normal;word-break:normal;text-wrap:balance;hyphens:manual;line-height:1.12;max-inline-size:24ch;}
html:lang(de) :where(h1,h2,h3,h4,h5,h6),html:lang(pl) :where(h1,h2,h3,h4,h5,h6),html:lang(fr) :where(h1,h2,h3,h4,h5,h6){hyphens:auto;}
:where(p,li,dd,blockquote){overflow-wrap:break-word;word-break:normal;}
:where(code,pre,.url,.mono,[data-url]){overflow-wrap:anywhere;word-break:break-word;}
h1{font-size:clamp(1.9rem,4.4vw,4.35rem)!important;letter-spacing:-.035em;}
h2{font-size:clamp(1.45rem,3vw,2.55rem)!important;letter-spacing:-.025em;}
h3{font-size:clamp(1.08rem,1.8vw,1.4rem)!important;}
:where(p,li,dd,label,input,textarea,select,button){font-size:clamp(.94rem,.25vw + .9rem,1rem);}
:where(.article-body,.prose,.reading-content,[data-article-body]){max-inline-size:var(--v49-reading);}
:where(.grid,[class*="grid"],.cards,[class*="cards"]){grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));}
:where(.card,[class*="card"],.panel,[class*="panel"]){min-inline-size:0;max-inline-size:100%;overflow:hidden;}
:where(table){inline-size:max-content;min-inline-size:100%;max-inline-size:none;border-collapse:collapse;}
:where(.table-wrap,[class*="table-wrap"],[data-table-scroll]){max-inline-size:100%;overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;}
:where(input,textarea,select,button){max-inline-size:100%;}
:where(input,textarea,select){min-block-size:44px;}
.v49-skip{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:2147483647;transform:translateY(-180%);padding:.7rem 1rem;border-radius:.65rem;background:#fff;color:#111;box-shadow:0 8px 30px #0005;font-weight:700;}
.v49-skip:focus{transform:none;}
/* Fixed header resilience across legacy class names */
:where(.site-header,.header,[data-site-header]){z-index:9000;max-inline-size:100vw;}
:where(.site-header__inner,.header__inner,[data-header-inner]){min-inline-size:0;gap:clamp(.4rem,1vw,1rem);}
:where(.site-header nav,.header nav,[data-primary-nav]){min-inline-size:0;}
/* Full-screen menu: opaque, scrollable, always closable */
:where(#site-menu,.site-menu,.menu-overlay,.mega-menu,[data-site-menu],[data-menu-panel]){position:fixed!important;inset:0!important;inline-size:100dvw!important;max-inline-size:none!important;block-size:100dvh!important;max-block-size:none!important;z-index:20000!important;overflow:auto!important;overscroll-behavior:contain;background:rgba(7,11,14,.985)!important;backdrop-filter:none!important;transform:none;}
:where(#site-menu,.site-menu,.menu-overlay,.mega-menu,[data-site-menu],[data-menu-panel])[hidden]{display:none!important;}
.v49-menu-close{position:sticky;inset-block-start:max(10px,env(safe-area-inset-top,0px));margin-inline-start:auto;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-block-size:44px;padding:.68rem .92rem;border:1px solid currentColor;border-radius:999px;background:#fff;color:#111;font-weight:750;cursor:pointer;}
body.v49-overlay-open{overflow:hidden!important;touch-action:none;}
/* Mobile dock: no translate centering, safe-area bound */
:where(.mobile-dock,.mobile-nav,.bottom-nav,[data-mobile-dock]){inset-inline:max(8px,env(safe-area-inset-left,0px)) max(8px,env(safe-area-inset-right,0px))!important;inline-size:auto!important;max-inline-size:none!important;transform:none!important;z-index:8500;}
body.v49-overlay-open :where(.mobile-dock,.mobile-nav,.bottom-nav,[data-mobile-dock]),body.v49-keyboard-open :where(.mobile-dock,.mobile-nav,.bottom-nav,[data-mobile-dock]){display:none!important;}
/* Compact footer */
:where(.site-footer,.footer,[data-site-footer]){overflow:hidden;}
:where(.site-footer__grid,.footer__grid,[data-footer-grid]){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:clamp(1rem,2.4vw,2rem);}
:where(.site-footer h2,.site-footer h3,.footer h2,.footer h3){font-size:clamp(1rem,1.5vw,1.3rem)!important;}
@media(max-width:1120px){
 :where(.desktop-nav,[data-desktop-nav],.site-header .primary-nav){display:none!important;}
 :where(.menu-toggle,[data-menu-toggle],[data-menu-open]){display:inline-flex!important;}
}
@media(max-width:760px){
 :root{--v49-edge:clamp(12px,4vw,20px);}
 h1{font-size:clamp(1.8rem,8.4vw,2.55rem)!important;}
 h2{font-size:clamp(1.35rem,6vw,1.9rem)!important;}
 :where(body){padding-bottom:var(--v49-dock);}
 :where(.container,.wrap,[class*="container"]){padding-inline:var(--v49-edge);}
 :where(.grid,[class*="grid"],.cards,[class*="cards"]){grid-template-columns:minmax(0,1fr)!important;}
 :where(.site-footer__grid,.footer__grid,[data-footer-grid]){grid-template-columns:repeat(2,minmax(0,1fr));}
 :where(input,textarea,select){font-size:16px!important;}
}
@media(max-width:380px){
 :where(.site-footer__grid,.footer__grid,[data-footer-grid]){grid-template-columns:minmax(0,1fr);}
 :where(.brand-subtitle,.site-brand__tagline,[data-brand-tagline]){display:none!important;}
 .v49-menu-close{padding:.58rem .72rem;font-size:.9rem;}
}
@media(max-height:520px) and (orientation:landscape){
 :where(#site-menu,.site-menu,.menu-overlay,.mega-menu,[data-site-menu],[data-menu-panel]){padding-block-start:max(8px,env(safe-area-inset-top,0px));}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}}
@media(forced-colors:active){.v49-menu-close{border:2px solid ButtonText;background:ButtonFace;color:ButtonText;}}
@media print{.v49-skip,.v49-menu-close,:where(.mobile-dock,.mobile-nav,.bottom-nav,[data-mobile-dock]){display:none!important;}}

body.v49-footer-visible :where(.mobile-dock,.mobile-nav,.bottom-nav,[data-mobile-dock]){display:none!important;}
