/* Zywienie Zbiorowe V4.3: original project imagery, no faux background logos. */
:root{--zz43-gold:#efc67c;--zz43-ink:#092c25}
.site-header .zz43-brand,.site-footer .zz43-brand{display:flex!important;align-items:center!important;flex:0 0 auto;min-width:0!important;width:clamp(196px,17vw,276px);padding:0!important;margin:0!important;line-height:1!important}
.site-header .zz43-brand .zz43-logo,.site-footer .zz43-brand .zz43-logo{width:100%!important;height:auto!important;object-fit:contain!important;display:block;filter:none!important;max-width:none!important}
.site-header .header-inner{gap:clamp(18px,2vw,32px)!important}
.site-header .nav-links{min-width:0!important}
.site-header .nav-links a{color:#fff!important}
.site-header .nav-links a:hover,.site-header .nav-links a.is-active{color:var(--zz43-gold)!important}
/* Banner originals already have a green left gradient. Avoid stacking legacy overlays. */
.zz4-hero .hero-photo{object-fit:cover;object-position:center center;filter:saturate(1.025) contrast(1.01)!important}
.zz4-hero .hero-gradient{background:linear-gradient(180deg,rgba(0,22,14,.40) 0%,rgba(0,20,13,.08) 20%,transparent 44%),linear-gradient(90deg,rgba(1,23,17,.22) 0%,rgba(1,24,17,.04) 54%,transparent 85%)!important}
.zz40-interior .subhero-image:after{background:linear-gradient(180deg,rgba(0,19,14,.40),transparent 42%),linear-gradient(92deg,rgba(1,29,20,.32) 0%,rgba(2,34,24,.12) 46%,transparent 80%)!important}
.zz42-apps .subhero-image.app-image>img{filter:saturate(1.02) contrast(1.01)!important;object-position:center center!important}
.zz42-apps .subhero-image.app-image:after{background:linear-gradient(180deg,rgba(0,20,15,.43),transparent 42%),linear-gradient(92deg,rgba(1,30,21,.38),rgba(1,26,18,.04) 80%)!important}
.zz4-hero h1,.zz40-interior .subhero-text h1{text-shadow:0 3px 18px rgba(0,20,13,.40)}
/* 2 separate PNG depth planes with real transparency and fading lower edges. */
.zz4-hero,.zz4-hero .hero-stage{overflow:visible!important}
.zz4-hero{position:relative;isolation:isolate;z-index:2}
.zz4-hero .hero-stage{isolation:auto!important}
.zz43-foreground{position:absolute;z-index:7;bottom:-154px;width:min(36vw,600px);height:auto;aspect-ratio:1448/1086;background-repeat:no-repeat;background-position:center center;background-size:contain;pointer-events:none;opacity:.98;will-change:transform;mask-image:linear-gradient(to bottom,black 0%,black 51%,rgba(0,0,0,.95) 67%,rgba(0,0,0,.52) 86%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 51%,rgba(0,0,0,.95) 67%,rgba(0,0,0,.52) 86%,transparent 100%)}
.zz43-left{left:max(-4vw,calc((100% - 1650px)/2 - 50px));background-image:url('blur-lewy.png')}
.zz43-right{right:max(-3vw,calc((100% - 1650px)/2 - 50px));background-image:url('blur-prawy.png')}
.zz4-hero:after{z-index:5!important}
.zz4-hero .hero-copy,.zz4-hero .hero-index,.zz4-hero .zz4-scroll-cue{z-index:9!important}
.zz4-sectors{position:relative;z-index:3!important;padding-top:64px!important}
.zz4-sectors .section-top{position:relative;z-index:3}
.zz4-sectors .sector-grid,.zz4-sectors .sector-detail{position:relative;z-index:4}
.zz43-kontrolka-logo{width:min(270px,95%);max-height:94px;object-fit:contain;object-position:left center;display:block;margin:-10px 0 16px}
/* Smaller viewports: foreground is decorative, never cover CTA or text */
@media(max-width:1190px){.site-header .zz43-brand{width:215px!important}.site-header .header-inner{gap:14px!important}.site-header .nav-links{gap:13px!important}}
@media(max-width:1090px){.site-header .zz43-brand{width:210px!important}.zz43-foreground{bottom:-70px;width:min(44vw,430px)}.zz4-sectors{padding-top:58px!important}}
@media(max-width:720px){.site-header .zz43-brand{width:175px!important}.site-header .header-inner{width:calc(100% - 32px)!important}.zz4-hero .hero-copy{z-index:12!important}.zz43-foreground{width:62vw;bottom:-34px;opacity:.66;mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.75) 55%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.75) 55%,transparent 100%)}.zz43-left{left:-30vw}.zz43-right{right:-32vw}.zz4-sectors{padding-top:36px!important}.zz43-kontrolka-logo{max-width:235px}}
@media(prefers-reduced-motion:reduce){.zz43-foreground{transform:none!important;will-change:auto}}

/* Visual QA: clip the moving photo but never crop separate foreground layers. */
html,body{overflow-x:clip!important}
.zz4-hero .hero-stage{height:clamp(650px,72vh,745px)!important;min-height:650px!important}
.zz43-photo-clip{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.zz43-photo-clip>.hero-photo{position:absolute;inset:auto auto auto 0;top:-34px;width:100%;height:calc(100% + 85px);object-fit:cover}
.zz43-photo-clip>.hero-gradient{position:absolute;z-index:1;inset:0}
@media(max-width:720px){.zz4-hero .hero-stage{height:790px!important;min-height:790px!important}}

/* Local fallback uses the approved Applications banner, not the legacy photo. */
.zz40-interior .subhero-image.app-image{background:#10382d url("baner-aplikacje.webp") center / cover no-repeat!important}
