/* ZST native reference compatibility. Generated from verified reference styles; originals remain untouched for rollback. */

/* Source: livepl-header-menu.css */
@charset "UTF-8";.pp-icon{display:inline-block;line-height:1;text-align:center;-webkit-transition:all .3s;transition:all .3s}.pp-icon i,.pp-icon svg{width:1em;height:1em;position:relative;display:block}.pp-menu-item:after,.pp-menu-item:before{display:block;position:absolute;-webkit-transition:.3s;transition:.3s;-webkit-transition-timing-function:cubic-bezier(.58,.3,.005,1);transition-timing-function:cubic-bezier(.58,.3,.005,1)}.pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{opacity:0}.pp-menu-item.highlighted:after,.pp-menu-item.highlighted:before,.pp-menu-item:focus:after,.pp-menu-item:focus:before,.pp-menu-item:hover:after,.pp-menu-item:hover:before{-webkit-transform:scale(1);transform:scale(1)}.pp-menu-item-active:after,.pp-menu-item-active:before{-webkit-transform:scale(1);transform:scale(1)}.pp--pointer-double-line .pp-menu-item:after,.pp--pointer-double-line .pp-menu-item:before,.pp--pointer-overline .pp-menu-item:after,.pp--pointer-overline .pp-menu-item:before,.pp--pointer-underline .pp-menu-item:after,.pp--pointer-underline .pp-menu-item:before{height:3px;width:100%;left:0;background-color:#55595c;z-index:2}.pp--pointer-double-line.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-double-line.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-overline.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-overline.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-underline.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-underline.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{height:0;width:0;left:50%}.pp--pointer-double-line.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-overline.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-underline.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{top:10px}.pp--pointer-double-line.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-overline.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-underline.e--animation-drop-out .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after{bottom:10px}.pp--pointer-double-line.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-overline.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-underline.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{top:-10px}.pp--pointer-double-line.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-overline.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-underline.e--animation-drop-in .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after{bottom:-10px}.pp--pointer-double-line.e--animation-none,.pp--pointer-overline.e--animation-none,.pp--pointer-underline.e--animation-none{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-double-line.e--animation-none:after,.pp--pointer-double-line.e--animation-none:before,.pp--pointer-double-line.e--animation-none:focus,.pp--pointer-double-line.e--animation-none:hover,.pp--pointer-overline.e--animation-none:after,.pp--pointer-overline.e--animation-none:before,.pp--pointer-overline.e--animation-none:focus,.pp--pointer-overline.e--animation-none:hover,.pp--pointer-underline.e--animation-none:after,.pp--pointer-underline.e--animation-none:before,.pp--pointer-underline.e--animation-none:focus,.pp--pointer-underline.e--animation-none:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-double-line.e--animation-none .pp-menu-item,.pp--pointer-overline.e--animation-none .pp-menu-item,.pp--pointer-underline.e--animation-none .pp-menu-item{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-double-line.e--animation-none .pp-menu-item:after,.pp--pointer-double-line.e--animation-none .pp-menu-item:before,.pp--pointer-double-line.e--animation-none .pp-menu-item:focus,.pp--pointer-double-line.e--animation-none .pp-menu-item:hover,.pp--pointer-overline.e--animation-none .pp-menu-item:after,.pp--pointer-overline.e--animation-none .pp-menu-item:before,.pp--pointer-overline.e--animation-none .pp-menu-item:focus,.pp--pointer-overline.e--animation-none .pp-menu-item:hover,.pp--pointer-underline.e--animation-none .pp-menu-item:after,.pp--pointer-underline.e--animation-none .pp-menu-item:before,.pp--pointer-underline.e--animation-none .pp-menu-item:focus,.pp--pointer-underline.e--animation-none .pp-menu-item:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-double-line .pp-menu-item:before,.pp--pointer-overline .pp-menu-item:before{content:"";top:0}.pp--pointer-double-line.e--animation-slide .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before,.pp--pointer-overline.e--animation-slide .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{width:10px;left:-20px}.pp--pointer-double-line .pp-menu-item:after,.pp--pointer-underline .pp-menu-item:after{content:"";bottom:0}.pp--pointer-double-line.e--animation-slide .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after,.pp--pointer-underline.e--animation-slide .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):after{width:10px;left:calc(100% + 20px)}.pp--pointer-framed .pp-menu-item:after,.pp--pointer-framed .pp-menu-item:before{background:0 0;left:0;top:0;bottom:0;right:0;border:3px solid #55595c}.pp--pointer-framed .pp-menu-item:before{content:""}.pp--pointer-framed.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{-webkit-transition:opacity .2s,-webkit-transform .4s;transition:opacity .2s,-webkit-transform .4s;transition:opacity .2s,transform .4s;transition:opacity .2s,transform .4s,-webkit-transform .4s}.pp--pointer-framed.e--animation-grow .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{-webkit-transform:scale(.75);transform:scale(.75)}.pp--pointer-framed.e--animation-shrink .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{-webkit-transition:opacity .2s,-webkit-transform .4s;transition:opacity .2s,-webkit-transform .4s;transition:opacity .2s,transform .4s;transition:opacity .2s,transform .4s,-webkit-transform .4s}.pp--pointer-framed.e--animation-shrink .menu-item:not(.current-menu-ancestor) .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{-webkit-transform:scale(1.25);transform:scale(1.25)}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{width:3px;height:3px}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{border-width:0 0 3px 3px;-webkit-transition:width .1s .2s,height .1s .3s,opacity .12s .22s;transition:width .1s .2s,height .1s .3s,opacity .12s .22s}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:after{content:"";top:initial;bottom:0;left:initial;right:0;border-width:3px 3px 0 0;-webkit-transition:width .1s,height .1s .1s,opacity 20ms .18s;transition:width .1s,height .1s .1s,opacity 20ms .18s}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:before,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:before,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:before{width:100%;height:100%}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:before,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:before,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:before{-webkit-transition:opacity 20ms,height .1s,width .1s .1s;transition:opacity 20ms,height .1s,width .1s .1s}.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:after,.pp--pointer-framed.e--animation-draw .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:after{-webkit-transition:opacity 20ms .2s,height .1s .2s,width .1s .3s;transition:opacity 20ms .2s,height .1s .2s,width .1s .3s}.pp--pointer-framed.e--animation-draw .pp-menu-item-active:after,.pp--pointer-framed.e--animation-draw .pp-menu-item-active:before{width:100%;height:100%}.pp--pointer-framed.e--animation-draw .pp-menu-item-active:before{-webkit-transition:opacity 20ms,height .1s,width .1s .1s;transition:opacity 20ms,height .1s,width .1s .1s}.pp--pointer-framed.e--animation-draw .pp-menu-item-active:after{-webkit-transition:opacity 20ms .2s,height .1s .2s,width .1s .3s;transition:opacity 20ms .2s,height .1s .2s,width .1s .3s}.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:after,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{width:3px;height:3px}.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:before{border-width:3px 0 0 3px}.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:after{content:"";top:initial;bottom:0;left:initial;right:0;border-width:0 3px 3px 0}.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:after,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item.highlighted:before,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:after,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:focus:before,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:after,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item:hover:before{width:100%;height:100%;-webkit-transition:opacity 2ms,width .4s,height .4s;transition:opacity 2ms,width .4s,height .4s}.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item-active:after,.pp--pointer-framed.e--animation-corners .menu-item:not(.current-menu-ancestor) .pp-menu-item-active:before{width:100%;height:100%;-webkit-transition:opacity 2ms,width .4s,height .4s;transition:opacity 2ms,width .4s,height .4s}.pp--pointer-framed.e--animation-none{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-framed.e--animation-none .pp-menu-item{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-framed.e--animation-none .pp-menu-item:after,.pp--pointer-framed.e--animation-none .pp-menu-item:before,.pp--pointer-framed.e--animation-none .pp-menu-item:focus,.pp--pointer-framed.e--animation-none .pp-menu-item:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-framed.e--animation-none:after,.pp--pointer-framed.e--animation-none:before,.pp--pointer-framed.e--animation-none:focus,.pp--pointer-framed.e--animation-none:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-background .pp-menu-item:after,.pp--pointer-background .pp-menu-item:before{content:"";-webkit-transition:.3s;transition:.3s}.pp--pointer-background .pp-menu-item:before{top:0;left:0;right:0;bottom:0;background:#55595c;z-index:-1}.pp--pointer-background .pp-menu-item.highlighted,.pp--pointer-background .pp-menu-item:focus,.pp--pointer-background .pp-menu-item:hover{color:#fff}.pp--pointer-background .pp-menu-item.highlighted:before,.pp--pointer-background .pp-menu-item:focus:before,.pp--pointer-background .pp-menu-item:hover:before{-webkit-transform:scale(1);transform:scale(1);opacity:1}.pp--pointer-background .pp-menu-item-active{color:#fff}.pp--pointer-background .pp-menu-item-active:before{-webkit-transform:scale(1);transform:scale(1);opacity:1}.pp--pointer-background.e--animation-grow .pp-menu-item:before{-webkit-transform:scale(.5);transform:scale(.5)}.pp--pointer-background.e--animation-shrink .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-transition:.3s;transition:.3s}.pp--pointer-background.e--animation-shrink .pp-menu-item.highlighted:before,.pp--pointer-background.e--animation-shrink .pp-menu-item:focus:before,.pp--pointer-background.e--animation-shrink .pp-menu-item:hover:before{-webkit-transition:opacity .15s,-webkit-transform .4s;transition:opacity .15s,-webkit-transform .4s;transition:opacity .15s,transform .4s;transition:opacity .15s,transform .4s,-webkit-transform .4s}.pp--pointer-background.e--animation-shrink .pp-menu-item-active:before{-webkit-transition:opacity .15s,-webkit-transform .4s;transition:opacity .15s,-webkit-transform .4s;transition:opacity .15s,transform .4s;transition:opacity .15s,transform .4s,-webkit-transform .4s}.pp--pointer-background.e--animation-sweep-left .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{left:100%}.pp--pointer-background.e--animation-sweep-right .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{right:100%}.pp--pointer-background.e--animation-sweep-up .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{top:100%}.pp--pointer-background.e--animation-sweep-down .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{bottom:100%}.pp--pointer-background.e--animation-shutter-out-vertical .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{bottom:50%;top:50%}.pp--pointer-background.e--animation-shutter-out-horizontal .pp-menu-item:not(:hover):not(:focus):not(.pp-menu-item-active):not(.highlighted):before{right:50%;left:50%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:after,.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:after{top:0;left:0;right:0;bottom:0;background:#55595c;z-index:-1}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:before{top:0;bottom:100%}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:after{top:100%;bottom:0}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item.highlighted,.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:focus,.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:hover{bottom:50%}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item.highlighted:after,.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:focus:after,.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item:hover:after{top:50%}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item-active:before{bottom:50%}.pp--pointer-background.e--animation-shutter-in-vertical .pp-menu-item-active:after{top:50%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:before{right:0;left:100%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:after{right:100%;left:0}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item.highlighted:before,.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:focus:before,.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:hover:before{left:50%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item.highlighted:after,.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:focus:after,.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item:hover:after{right:50%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item-active:before{left:50%}.pp--pointer-background.e--animation-shutter-in-horizontal .pp-menu-item-active:after{right:50%}.pp--pointer-background.e--animation-none{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-background.e--animation-none:after,.pp--pointer-background.e--animation-none:before,.pp--pointer-background.e--animation-none:focus,.pp--pointer-background.e--animation-none:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-background.e--animation-none .pp-menu-item{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-background.e--animation-none .pp-menu-item:after,.pp--pointer-background.e--animation-none .pp-menu-item:before,.pp--pointer-background.e--animation-none .pp-menu-item:focus,.pp--pointer-background.e--animation-none .pp-menu-item:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-brackets .pp-menu-item:after,.pp--pointer-brackets .pp-menu-item:before{background-color:transparent!important;display:inline-block;opacity:0;-webkit-transition:opacity .2s,-webkit-transform .3s;transition:opacity .2s,-webkit-transform .3s;transition:transform .3s,opacity .2s;transition:transform .3s,opacity .2s,-webkit-transform .3s}.pp--pointer-brackets .pp-menu-item:before{left:0;margin-right:10px;content:"[";-webkit-transform:translateX(20px);transform:translateX(20px)}.pp--pointer-brackets .pp-menu-item:after{right:0;margin-left:10px;content:"]";-webkit-transform:translateX(-20px);transform:translateX(-20px)}.pp--pointer-brackets .menu-item.current-menu-ancestor .pp-menu-item:after,.pp--pointer-brackets .menu-item.current-menu-ancestor .pp-menu-item:before,.pp--pointer-brackets .pp-menu-item:focus:after,.pp--pointer-brackets .pp-menu-item:focus:before,.pp--pointer-brackets .pp-menu-item:hover:after,.pp--pointer-brackets .pp-menu-item:hover:before{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}.pp--pointer-right-angle-slides .pp-menu-item:before{position:absolute;top:0;left:0;width:100%;height:2px;background:#61ce70;content:"";opacity:1!important;-webkit-transition:top .3s;transition:top .3s}.pp--pointer-right-angle-slides .pp-menu-item:after{position:absolute;top:0;left:0;width:2px;height:2px;background:#61ce70;content:"";-webkit-transition:height .3s,opacity .3s;transition:height .3s,opacity .3s}.pp--pointer-right-angle-slides .menu-item.current-menu-ancestor .pp-menu-item:before,.pp--pointer-right-angle-slides .pp-menu-item:hover:before{top:100%;opacity:1}.pp--pointer-right-angle-slides .menu-item.current-menu-ancestor .pp-menu-item:after,.pp--pointer-right-angle-slides .pp-menu-item:hover:after{height:100%}.pp--pointer-text.e--animation-skew .pp-menu-item:focus,.pp--pointer-text.e--animation-skew .pp-menu-item:hover{-webkit-transform:skew(-8deg);transform:skew(-8deg)}.pp--pointer-text.e--animation-grow .pp-menu-item:focus,.pp--pointer-text.e--animation-grow .pp-menu-item:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.pp--pointer-text.e--animation-shrink .pp-menu-item:focus,.pp--pointer-text.e--animation-shrink .pp-menu-item:hover{-webkit-transform:scale(.8);transform:scale(.8)}.pp--pointer-text.e--animation-float .pp-menu-item:focus,.pp--pointer-text.e--animation-float .pp-menu-item:hover{-webkit-transform:translateY(-8px);transform:translateY(-8px)}.pp--pointer-text.e--animation-sink .pp-menu-item:focus,.pp--pointer-text.e--animation-sink .pp-menu-item:hover{-webkit-transform:translateY(8px);transform:translateY(8px)}.pp--pointer-text.e--animation-rotate .pp-menu-item:focus,.pp--pointer-text.e--animation-rotate .pp-menu-item:hover{-webkit-transform:rotate(6deg);transform:rotate(6deg)}.pp--pointer-text.e--animation-none{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-text.e--animation-none:after,.pp--pointer-text.e--animation-none:before,.pp--pointer-text.e--animation-none:focus,.pp--pointer-text.e--animation-none:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-text.e--animation-none .pp-menu-item{-webkit-transition-duration:0s;transition-duration:0s}.pp--pointer-text.e--animation-none .pp-menu-item:after,.pp--pointer-text.e--animation-none .pp-menu-item:before,.pp--pointer-text.e--animation-none .pp-menu-item:focus,.pp--pointer-text.e--animation-none .pp-menu-item:hover{-webkit-transition-duration:0s;transition-duration:0s}.pp-advanced-menu--main li.current-menu-ancestor.current-menu-parent a.pp-menu-item.has-submenu:after,.pp-advanced-menu--main li.current-menu-ancestor.current-menu-parent a.pp-menu-item.has-submenu:before{opacity:1}.pp-advanced-menu--main .pp-advanced-menu a{-webkit-transition:.4s;transition:.4s;padding:13px 20px}.pp-advanced-menu--main .pp-advanced-menu a.highlighted,.pp-advanced-menu--main .pp-advanced-menu a:focus,.pp-advanced-menu--main .pp-advanced-menu a:hover{padding:13px 20px;-webkit-box-shadow:none;box-shadow:none}.pp-advanced-menu--main .pp-advanced-menu a.current{background:#373a3c;color:#fff}.pp-advanced-menu--main .pp-advanced-menu a.disabled{background:#55595c;color:#a1a6a9}.pp-advanced-menu--main .pp-advanced-menu ul{position:absolute;width:12em;border-width:0;border-style:solid;padding:0}.pp-advanced-menu--main .pp-advanced-menu span.scroll-down,.pp-advanced-menu--main .pp-advanced-menu span.scroll-up{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:20px}.pp-advanced-menu--main .pp-advanced-menu span.scroll-down-arrow,.pp-advanced-menu--main .pp-advanced-menu span.scroll-up-arrow{position:absolute;top:-2px;left:50%;margin-left:-8px;width:0;height:0;overflow:hidden;border-width:8px;border-style:dashed dashed solid dashed;border-color:transparent transparent #494c4f transparent}.pp-advanced-menu--main .pp-advanced-menu span.scroll-down-arrow{top:6px;border-style:solid dashed dashed dashed;border-color:#494c4f transparent transparent transparent}.pp-advanced-menu--layout-horizontal{display:-webkit-box;display:-ms-flexbox;display:flex}.pp-advanced-menu--layout-horizontal .pp-advanced-menu{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.pp-advanced-menu--layout-horizontal .pp-advanced-menu a{white-space:nowrap}.pp-advanced-menu--layout-vertical .pp-advanced-menu ul{position:inherit;width:100%;margin-left:0!important}.pp-advanced-menu__align-right .pp-advanced-menu{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-left:auto}.pp-advanced-menu__align-right .pp-advanced-menu--layout-vertical>ul li a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.pp-advanced-menu__align-left .pp-advanced-menu{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;margin-right:auto}.pp-advanced-menu__align-left .pp-advanced-menu--layout-vertical>ul li a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.pp-advanced-menu__align-center .pp-advanced-menu{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-left:auto;margin-right:auto}.pp-advanced-menu__align-center .pp-advanced-menu--layout-vertical>ul li a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pp-advanced-menu__align-justify .pp-advanced-menu--layout-horizontal .pp-advanced-menu{width:100%}.pp-advanced-menu__align-justify .pp-advanced-menu--layout-horizontal .pp-advanced-menu>li{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.pp-advanced-menu__align-justify .pp-advanced-menu--layout-horizontal .pp-advanced-menu>li>a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pp-advanced-menu-main-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}ul.pp-advanced-menu{position:relative;z-index:2;display:block;list-style:none;margin:0;padding:0;line-height:normal;-webkit-tap-highlight-color:transparent}ul.pp-advanced-menu:after{content:" ";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}ul.pp-advanced-menu ul{list-style:none;margin:0;padding:0;line-height:normal;-webkit-tap-highlight-color:transparent;display:none}ul.pp-advanced-menu ul li{display:block;list-style:none;margin:0;padding:0;line-height:normal;-webkit-tap-highlight-color:transparent}ul.pp-advanced-menu ul ul a{border-left:16px solid transparent}ul.pp-advanced-menu ul ul a:active,ul.pp-advanced-menu ul ul a:focus,ul.pp-advanced-menu ul ul a:hover{border-left:16px solid transparent}ul.pp-advanced-menu ul ul ul a{border-left:24px solid transparent}ul.pp-advanced-menu ul ul ul a:active,ul.pp-advanced-menu ul ul ul a:focus,ul.pp-advanced-menu ul ul ul a:hover{border-left:24px solid transparent}ul.pp-advanced-menu ul ul ul ul a{border-left:32px solid transparent}ul.pp-advanced-menu ul ul ul ul a:active,ul.pp-advanced-menu ul ul ul ul a:focus,ul.pp-advanced-menu ul ul ul ul a:hover{border-left:32px solid transparent}ul.pp-advanced-menu ul ul ul ul ul a{border-left:40px solid transparent}ul.pp-advanced-menu ul ul ul ul ul a:active,ul.pp-advanced-menu ul ul ul ul ul a:focus,ul.pp-advanced-menu ul ul ul ul ul a:hover{border-left:40px solid transparent}ul.pp-advanced-menu li{position:relative;border-width:0}ul.pp-advanced-menu a{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:10px 20px;line-height:1.82;border:none;height:100%}ul.pp-advanced-menu a:focus,ul.pp-advanced-menu a:hover{padding:10px 20px;text-decoration:none}ul.pp-advanced-menu a.current{background:#373a3c;color:#fff}ul.pp-advanced-menu a.disabled{cursor:not-allowed;color:#a1a6a9}.pp-advanced-menu--layout-expanded .pp-advanced-menu ul{display:block;position:static;width:auto}.pp-advanced-menu--layout-expanded .pp-advanced-menu ul ul a,.pp-advanced-menu--layout-expanded .pp-advanced-menu ul ul a:active,.pp-advanced-menu--layout-expanded .pp-advanced-menu ul ul a:focus,.pp-advanced-menu--layout-expanded .pp-advanced-menu ul ul a:hover{border-left:0}.pp-advanced-menu--layout-expanded .pp-advanced-menu--dropdown .pp-menu-item.highlighted,.pp-advanced-menu--layout-expanded .pp-advanced-menu--dropdown .pp-menu-item:focus,.pp-advanced-menu--layout-expanded .pp-advanced-menu--dropdown .pp-menu-item:hover{background-color:transparent;color:inherit}.pp-advanced-menu .sub-arrow{font-size:16px;font-weight:900;line-height:1;padding-left:10px}.pp-advanced-menu .sub-arrow .e-font-icon-svg{height:1em;width:1em}.pp-advanced-menu--dropdown .pp-menu-item{-webkit-transition:color .2s ease-in-out,background-color .2s ease-in-out;transition:color .2s ease-in-out,background-color .2s ease-in-out}.pp-advanced-menu--dropdown .pp-menu-item.highlighted,.pp-advanced-menu--dropdown .pp-menu-item:focus,.pp-advanced-menu--dropdown .pp-menu-item:hover{background-color:#55595c;color:#fff}.pp-sub-item.highlighted,.pp-sub-item:focus,.pp-sub-item:hover{background-color:#55595c;color:#fff}.pp-menu-toggle{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:22px;cursor:pointer;border:0 solid;color:#494c4f;border-radius:3px;background-color:rgba(0,0,0,.05);padding:.25em;-webkit-transition:.3s;transition:.3s}.pp-menu-toggle a{line-height:0}.pp-menu-toggle-label-left .pp-hamburger{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.pp-menu-toggle .pp-hamburger{font:inherit;display:inline-block;overflow:visible;margin:0;cursor:pointer;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-duration:.15s;transition-duration:.15s;-webkit-transition-property:opacity,-webkit-filter;transition-property:opacity,-webkit-filter;transition-property:opacity,filter;transition-property:opacity,filter,-webkit-filter;text-transform:none;color:inherit;border:0;background-color:transparent;line-height:0}.pp-menu-toggle .pp-hamburger .pp-hamburger-box{position:relative;display:inline-block;font-size:26px;width:1em;height:1em}.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner{top:50%;display:block;margin-top:-.077em;-webkit-transition-timing-function:cubic-bezier(.55,.055,.675,.19);transition-timing-function:cubic-bezier(.55,.055,.675,.19);-webkit-transition-duration:75ms;transition-duration:75ms}.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:after,.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:before{display:block;content:""}.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:before{-webkit-transition:top 75ms ease .12s,opacity 75ms ease;transition:top 75ms ease .12s,opacity 75ms ease;top:-.308em}.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:after{-webkit-transition:bottom 75ms ease,-webkit-transform 75ms cubic-bezier(.55,.055,.675,.19) .12s;transition:bottom 75ms ease,-webkit-transform 75ms cubic-bezier(.55,.055,.675,.19) .12s;transition:bottom 75ms ease,transform 75ms cubic-bezier(.55,.055,.675,.19) .12s;transition:bottom 75ms ease,transform 75ms cubic-bezier(.55,.055,.675,.19) .12s,-webkit-transform 75ms cubic-bezier(.55,.055,.675,.19) .12s;bottom:-.308em}.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner,.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:after,.pp-menu-toggle .pp-hamburger .pp-hamburger-box .pp-hamburger-inner:before{background-color:#000;position:absolute;width:100%;height:.154em;-webkit-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.15s;transition-duration:.15s;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;border-radius:.154em}.pp-menu-toggle.pp-active .pp-hamburger .pp-hamburger-inner{-webkit-transition-delay:.12s;transition-delay:.12s;-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:rotate(45deg);transform:rotate(45deg)}.pp-menu-toggle.pp-active .pp-hamburger .pp-hamburger-inner:before{top:0;-webkit-transition:top 75ms ease,opacity 75ms ease .12s;transition:top 75ms ease,opacity 75ms ease .12s;opacity:0}.pp-menu-toggle.pp-active .pp-hamburger .pp-hamburger-inner:after{bottom:0;-webkit-transition:bottom 75ms ease,-webkit-transform 75ms cubic-bezier(.215,.61,.355,1) .12s;transition:bottom 75ms ease,-webkit-transform 75ms cubic-bezier(.215,.61,.355,1) .12s;transition:bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;transition:bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s,-webkit-transform 75ms cubic-bezier(.215,.61,.355,1) .12s;-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.pp-menu-toggle-label-left .pp-menu-toggle-label{margin-right:10px}.pp-menu-toggle-label-right .pp-menu-toggle-label{margin-left:10px}.pp-advanced-menu--dropdown.pp-advanced-menu__container{margin-top:10px}.pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-sub-item{font-size:.85em;-webkit-transition:color .2s ease-in-out,background-color .2s ease-in-out;transition:color .2s ease-in-out,background-color .2s ease-in-out}.pp-advanced-menu--dropdown a{color:#494c4f;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.pp-advanced-menu--dropdown a.current{background:#373a3c;color:#fff}.pp-advanced-menu--dropdown a.disabled{color:#b3b3b3}ul.pp-advanced-menu--dropdown a{text-shadow:none;border-left:8px solid transparent}ul.pp-advanced-menu--dropdown a:focus,ul.pp-advanced-menu--dropdown a:hover{text-shadow:none;border-left:8px solid transparent}.pp-advanced-menu--dropdown{background-color:#fff;font-size:13px}.pp-advanced-menu-main-wrapper:not(.pp-advanced-menu--toggle) .pp-menu-toggle:not(.pp-menu-toggle-on-all){display:none}.pp-advanced-menu__text-align-center .pp-advanced-menu--dropdown .pp-advanced-menu a{box-pack:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pp-advanced-menu--toggle .pp-menu-toggle:not(.pp-active)+.pp-advanced-menu__container:not(.pp-menu-full-screen){display:none}.pp-advanced-menu--stretch .pp-advanced-menu__container.pp-advanced-menu--dropdown{position:absolute;z-index:9998}.pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-item{background-color:transparent}.pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-item:hover{background-color:transparent}.pp-advanced-menu__submenu-visible-always .pp-advanced-menu ul{display:block!important}.pp-advanced-menu--type-full-screen .pp-menu-toggle.pp-active{visibility:hidden}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container{position:fixed;width:100%;height:100%;top:0;left:0;z-index:999999;margin-top:0;background-color:rgba(0,0,0,.5);opacity:0;visibility:hidden;-webkit-transform:scale(.9);transform:scale(.9);-webkit-transition:opacity .4s linear,-webkit-transform .4s;transition:opacity .4s linear,-webkit-transform .4s;transition:transform .4s,opacity .4s linear;transition:transform .4s,opacity .4s linear,-webkit-transform .4s;overflow-y:auto}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container.pp-menu-open{opacity:1;visibility:visible;-webkit-transform:scale(1);transform:scale(1)}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container>ul{top:50%;height:60%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-close-wrap{position:absolute;right:20px;top:20px;z-index:9999999}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-close{width:40px;height:40px;overflow:hidden;border:none;font-size:40px;color:#fff;outline:0;text-align:center;cursor:pointer}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-close:after,.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-close:before{content:"";position:absolute;left:50%;width:2px;height:40px;background-color:#fff;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:translateY(0) rotate(45deg);transform:translateY(0) rotate(45deg)}.pp-advanced-menu--type-full-screen .pp-advanced-menu--dropdown.pp-advanced-menu__container .pp-menu-close:after{-webkit-transform:translateY(0) rotate(-45deg);transform:translateY(0) rotate(-45deg)}.pp-advanced-menu--type-full-screen ul.pp-advanced-menu--dropdown a,.pp-advanced-menu--type-full-screen ul.pp-advanced-menu--dropdown a:hover{border-left:0}.pp-menu-clear{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9;background:rgba(0,0,0,.1);display:none;-webkit-transition:all .5s ease-in-out;transition:all .5s ease-in-out}.pp-advanced-menu--dropdown.pp-menu-off-canvas{width:300px;height:100%;position:fixed;top:0;left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);padding:60px 0 0;z-index:999998;margin-top:0;-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;overflow-y:auto}.pp-advanced-menu--dropdown.pp-menu-off-canvas.pp-menu-off-canvas-right{left:auto;right:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.pp-advanced-menu--dropdown.pp-menu-off-canvas.pp-menu-off-canvas-right .pp-menu-close-wrap{right:auto;left:20px}.pp-advanced-menu--dropdown.pp-menu-open{display:block}.pp-advanced-menu--dropdown .pp-menu-close-wrap{position:absolute;right:20px;top:20px;z-index:9999999}.pp-advanced-menu--dropdown .pp-menu-close{width:30px;height:30px;overflow:hidden;border:none;font-size:40px;color:#fff;outline:0;text-align:center;cursor:pointer}.pp-advanced-menu--dropdown .pp-menu-close:after,.pp-advanced-menu--dropdown .pp-menu-close:before{content:"";position:absolute;left:50%;width:2px;height:30px;background-color:#fff;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:translateY(0) rotate(45deg);transform:translateY(0) rotate(45deg)}.pp-advanced-menu--dropdown .pp-menu-close:after{-webkit-transform:translateY(0) rotate(-45deg);transform:translateY(0) rotate(-45deg)}body.pp-menu--off-canvas.pp-menu-open .pp-menu-open.pp-menu-off-canvas{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}body.pp-menu--off-canvas.pp-menu-open .pp-menu-open.pp-menu-off-canvas-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}ul.pp-advanced-menu--dropdown a,ul.pp-advanced-menu--dropdown a:hover{border-left:0}.pp-advanced-menu--layout-horizontal .pp-advanced-menu>li{display:-webkit-box;display:-ms-flexbox;display:flex}.pp-advanced-menu--layout-horizontal .pp-advanced-menu>li:not(:last-child):after{content:var(--pp-nav-menu-divider-content,none);border-left-width:var(--pp-nav-menu-divider-width,2px);border-left-style:var(--pp-nav-menu-divider-style,solid);height:var(--pp-nav-menu-divider-height,35%);border-color:var(--pp-nav-menu-divider-color,#000);-ms-flex-item-align:center;align-self:center}.pp-advanced-menu--layout-horizontal .pp-advanced-menu>li ul{top:100%!important}@media (min-width:768px){.pp-advanced-menu--dropdown-mobile .pp-menu-toggle:not(.pp-menu-toggle-on-all){display:none}}@media only screen and (min-width:1025px){.pp-advanced-menu--dropdown-tablet .pp-menu-toggle:not(.pp-menu-toggle-on-all){display:none}}@media (max-width:1024px){.pp-advanced-menu--dropdown-tablet .pp-advanced-menu--main{display:none}.pp-advanced-menu--dropdown-tablet .pp-menu-toggle{display:-webkit-box;display:-ms-flexbox;display:flex}}@media only screen and (max-width:767px){.pp-advanced-menu--dropdown-mobile .pp-advanced-menu--main{display:none}.pp-advanced-menu--dropdown-mobile .pp-menu-toggle{display:-webkit-box;display:-ms-flexbox;display:flex}}.premium-nav-widget-container{--pa-menu-width:300px}.premium-nav-widget-container ul{list-style:none;margin:0;padding:0}.premium-nav-widget-container .premium-main-nav-menu{display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%}.premium-nav-ver .premium-ver-inner-container{width:45%;position:relative}.premium-nav-ver .premium-nav-menu-container,.premium-nav-ver .premium-ver-toggler{width:100%}.premium-nav-ver .premium-nav-menu-container{background-color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.1)}.premium-nav-ver .premium-main-nav-menu{position:relative;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children .premium-sub-menu{visibility:hidden;opacity:0;position:absolute;min-width:250px}.premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children.premium-item-hovered .premium-mega-content-container,.premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children.premium-item-hovered>.premium-sub-menu{opacity:1;visibility:visible}.premium-nav-ver .premium-nav-menu-item{width:100%}.premium-nav-ver:not(.premium-hamburger-menu).premium-vertical-right .premium-mega-content-container,.premium-nav-ver:not(.premium-hamburger-menu).premium-vertical-right .premium-nav-menu-item.menu-item-has-children .premium-sub-menu{left:100%;top:0}.premium-nav-ver:not(.premium-hamburger-menu).premium-vertical-left .premium-mega-content-container,.premium-nav-ver:not(.premium-hamburger-menu).premium-vertical-left .premium-nav-menu-item.menu-item-has-children .premium-sub-menu{right:100%;top:0}.premium-nav-ver:not(.premium-hamburger-menu).premium-vertical-left .premium-menu-link{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.premium-nav-ver:not(.premium-hamburger-menu).pa-align-top .premium-main-nav-menu,.premium-nav-ver:not(.premium-hamburger-menu).pa-align-top .premium-nav-menu-item.menu-item-has-children{position:static}.premium-nav-hor>.zst-el-widget-container>.premium-nav-widget-container>.premium-ver-inner-container>.premium-nav-menu-container{height:60px}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-sub-menu{visibility:hidden;opacity:0;position:absolute;min-width:220px}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item>.premium-mega-content-container,.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item>.premium-sub-menu{top:100%}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item>.premium-sub-menu .premium-sub-menu{inset-inline-start:100%;top:0}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-mega-content-container,.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-sub-menu{visibility:visible;opacity:1;pointer-events:auto}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-mega-item-static .premium-mega-content-container{left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:not(.premium-mega-item-static) .premium-mega-content-container{left:0}.premium-nav-hor:not(.premium-hamburger-menu) .premium-item-badge,.premium-nav-hor:not(.premium-nav-dropdown) .premium-item-badge,.premium-nav-hor:not(.premium-nav-slide) .premium-item-badge{position:relative;margin:8px}.premium-mega-nav-item{position:relative}.premium-mega-nav-item.premium-item-hovered>.premium-mega-content-container{visibility:visible;opacity:1;pointer-events:auto}.premium-mega-nav-item>.premium-sub-menu{display:none}.premium-mega-content-container{visibility:hidden;position:absolute;z-index:9999;opacity:0;pointer-events:none}.premium-hamburger-menu .premium-mega-content-container,.premium-nav-dropdown .premium-mega-content-container,.premium-nav-slide .premium-mega-content-container{display:none;visibility:visible;position:relative;opacity:1;pointer-events:auto}.premium-mobile-menu-outer-container .premium-mobile-menu-close,.premium-nav-widget-container .premium-hamburger-toggle{text-decoration:none;cursor:pointer}.premium-nav-widget-container .premium-hamburger-toggle{display:none;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.premium-nav-widget-container .premium-hamburger-toggle i{padding:.25em;font-size:22px}.premium-nav-widget-container .premium-hamburger-toggle svg{width:22px;height:22px}.premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close,.premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,.premium-nav-widget-container .premium-hamburger-toggle i{color:#494c4f}.premium-nav-widget-container .premium-hamburger-toggle svg,.premium-nav-widget-container .premium-hamburger-toggle svg path{fill:#494c4f}.premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close,.premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text{margin:2px}.premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close{display:none}.premium-mobile-menu-container{width:100%}.premium-mobile-menu-container .premium-main-mobile-menu{width:100%}.premium-mobile-menu-container ul{list-style:none;margin:0;padding:0}.premium-mobile-menu-container .premium-mobile-menu,.premium-mobile-menu-container .premium-sub-menu{display:none;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.premium-mobile-menu-container .premium-nav-menu-item{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.premium-mobile-menu-container .premium-item-badge{top:50%;right:0;left:unset;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.premium-nav-hor .premium-mobile-menu-container .premium-item-badge{top:0;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.premium-mobile-menu-outer-container{opacity:0}.premium-mobile-menu-outer-container.premium-vertical-toggle-open{opacity:1}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container{background-color:#f7f7f7;width:var(--pa-menu-width);height:100%;position:fixed;top:0;overflow-x:hidden;z-index:10002;-webkit-transition:.5s;transition:.5s;padding-top:50px}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu{display:-webkit-flex;display:-ms-flexbox;display:flex}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container{margin-top:50px}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container .premium-item-badge{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close{position:absolute;top:2%;right:5px;padding:0 9px;z-index:10000;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;color:#494c4f;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close .premium-toggle-close{margin:5px}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close svg{width:22px;height:22px;fill:#494c4f}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close svg path{fill:#494c4f}.premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close i{font-size:22px}.premium-ver-hamburger-menu .premium-vertical-toggle-open{-webkit-transform:translateX(0)!important;-ms-transform:translateX(0)!important;transform:translateX(0)!important;-webkit-transition:.5s;transition:.5s}.premium-slide-left .premium-mobile-menu-outer-container,body:not(.rtl) .premium-slide-auto .premium-mobile-menu-outer-container{left:0;-webkit-transform:translateX(-webkit-calc(-1 * var(--pa-menu-width)));-ms-transform:translateX(calc(-1 * var(--pa-menu-width)));transform:translateX(calc(-1 * var(--pa-menu-width)))}.premium-slide-right .premium-mobile-menu-outer-container,body.rtl .premium-slide-auto .premium-mobile-menu-outer-container{right:0;-webkit-transform:translateX(var(--pa-menu-width));-ms-transform:translateX(var(--pa-menu-width));transform:translateX(var(--pa-menu-width))}.premium-ver-toggle-yes .premium-nav-menu-container{height:auto}.premium-ver-toggle-yes .premium-ver-toggler{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding:15px 20px 15px 20px;background:#eee;color:#042551;cursor:pointer}.premium-ver-toggle-yes .premium-ver-toggler .premium-ver-toggler-btn,.premium-ver-toggle-yes .premium-ver-toggler .premium-ver-toggler-title{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.premium-ver-toggle-yes .premium-ver-toggler .premium-ver-toggler-txt{text-indent:5px}.premium-ver-toggle-yes .premium-ver-toggler:hover{background:#54595f;color:#fff}.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-close svg,.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-close svg path,.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-open svg,.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-open svg path,.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-title-icon svg,.premium-ver-toggle-yes .premium-ver-toggler:hover .premium-ver-title-icon svg path{fill:#fff}.premium-ver-toggle-yes .premium-nav-menu-container,.premium-ver-toggle-yes .premium-ver-close,.premium-ver-toggle-yes .premium-ver-open,.premium-ver-toggle-yes .premium-ver-toggler{-webkit-transition:all .3s linear 0s;transition:all .3s linear 0s}.premium-ver-toggle-yes .premium-nav-menu-container i,.premium-ver-toggle-yes .premium-nav-menu-container svg,.premium-ver-toggle-yes .premium-ver-close i,.premium-ver-toggle-yes .premium-ver-close svg,.premium-ver-toggle-yes .premium-ver-open i,.premium-ver-toggle-yes .premium-ver-open svg,.premium-ver-toggle-yes .premium-ver-toggler i,.premium-ver-toggle-yes .premium-ver-toggler svg{-webkit-transition:color .3s linear 0s;transition:color .3s linear 0s}.premium-ver-toggle-yes .premium-ver-toggler-txt{-webkit-transition:all .3s linear 0s;transition:all .3s linear 0s}.premium-ver-toggle-yes .premium-ver-close,.premium-ver-toggle-yes .premium-ver-open,.premium-ver-toggle-yes .premium-ver-title-icon{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.premium-ver-toggle-yes .premium-ver-close i,.premium-ver-toggle-yes .premium-ver-open i,.premium-ver-toggle-yes .premium-ver-title-icon i{font-size:16px}.premium-ver-toggle-yes .premium-ver-close svg,.premium-ver-toggle-yes .premium-ver-open svg,.premium-ver-toggle-yes .premium-ver-title-icon svg{width:17px;height:17px;fill:#042551}.premium-ver-toggle-yes .premium-ver-close svg path,.premium-ver-toggle-yes .premium-ver-open svg path,.premium-ver-toggle-yes .premium-ver-title-icon svg path{fill:#042551}.premium-ver-toggle-yes.premium-ver-always .premium-ver-open{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.premium-ver-toggle-yes .premium-ver-collapsed .premium-nav-menu-container{visibility:hidden;opacity:0}.premium-ver-toggle-yes .premium-ver-collapsed .premium-ver-close{display:none}.premium-ver-toggle-yes .premium-ver-collapsed .premium-ver-open{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.premium-ver-toggle-yes.premium-ver-hover .premium-nav-menu-container{position:absolute;z-index:10002}.premium-ver-toggle-yes.premium-ver-click .premium-nav-menu-container{position:absolute;z-index:10001}.premium-ver-toggle-yes .premium-nav-menu-container,.premium-ver-toggle-yes.premium-ver-hover .premium-ver-inner-container:hover .premium-nav-menu-container{visibility:visible;opacity:1}.premium-ver-toggle-yes .premium-ver-open,.premium-ver-toggle-yes.premium-ver-hover .premium-ver-inner-container:hover .premium-ver-open{display:none}.premium-ver-toggle-yes .premium-ver-close,.premium-ver-toggle-yes .premium-ver-title-icon,.premium-ver-toggle-yes.premium-ver-hover .premium-ver-inner-container:hover .premium-ver-close,.premium-ver-toggle-yes.premium-ver-hover .premium-ver-inner-container:hover .premium-ver-title-icon{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.premium-sticky-parent{position:fixed;z-index:10003;-webkit-transition:all .3s linear;transition:all .3s linear}.premium-sticky-scroll-yes.premium-sticky-parent.headroom--not-top{will-change:transform;-webkit-transition:-webkit-transform .5s linear!important;transition:-webkit-transform .5s linear!important;transition:transform .5s linear!important;transition:transform .5s linear,-webkit-transform .5s linear!important;-webkit-transition-delay:1s;transition-delay:1s}.premium-sticky-scroll-yes.premium-sticky-parent.headroom--not-top.slideDown{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.premium-sticky-scroll-yes.premium-sticky-parent.headroom--not-top.slideUp{-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.premium-ham-dropdown .premium-stretch-dropdown .premium-mobile-menu-container,.premium-nav-sticky-yes.premium-sticky-active.premium-ham-dropdown .premium-mobile-menu-container{max-height:400px;overflow-y:auto}.premium-nav-slide-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:rgba(0,0,0,.6);z-index:10002}.premium-nav-slide-overlay.premium-vertical-toggle-open{display:block}.premium-active-menu,.premium-active-menu.premium-mega-nav-item>.premium-mega-content-container,.premium-active-menu:not(.premium-mega-nav-item)>.premium-sub-menu{display:-webkit-flex!important;display:-ms-flexbox!important;display:flex!important;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.premium-active-menu .premium-toggle-close{display:block}.premium-nav-menu-container .premium-sub-menu{background-color:#fff}.premium-mobile-menu-container li,.premium-mobile-menu-container li>.premium-mega-content-container{width:100%!important}i.premium-item-icon,i.premium-sub-item-icon{font-size:13px}svg.premium-item-icon,svg.premium-sub-item-icon{width:20px;height:20px}.premium-item-icon,.premium-sub-item-icon{margin:0 7px;display:-webkit-flex;display:-ms-flexbox;display:flex}.premium-item-icon svg,.premium-sub-item-icon svg{width:20px;height:20px}.premium-item-icon.premium-lottie-animation,.premium-sub-item-icon.premium-lottie-animation{width:20px;height:20px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.premium-item-icon.dashicons,.premium-sub-item-icon.dashicons{width:13px;height:13px}.premium-nav-menu-item{position:relative}.premium-nav-menu-item .premium-dropdown-icon,.premium-nav-menu-item .premium-menu-link{-webkit-transition:.3s all ease-in-out;transition:.3s all ease-in-out}.premium-nav-menu-item .premium-menu-link{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:100%;padding:7px 10px;text-decoration:none;position:relative}.premium-nav-menu-item .premium-dropdown-icon{margin:5px}.premium-nav-menu-item.menu-item-has-children{position:relative}.premium-nav-menu-item.menu-item-has-children .premium-sub-menu{z-index:9999}.premium-nav-menu-item.menu-item-has-children .premium-sub-menu .premium-sub-menu-link{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.premium-nav-menu-item.pa-item-gradient>.premium-menu-link>.premium-item-text-wrapper .premium-menu-text,.premium-nav-menu-item.pa-item-gradient>.premium-menu-link>:not(.premium-item-text-wrapper){-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-image:-webkit-linear-gradient(left,#ffa648,#f17cc1,#4da9fd);background-image:linear-gradient(to right,#ffa648,#f17cc1,#4da9fd);-webkit-animation:pa-menu-text-gradient 8s infinite;animation:pa-menu-text-gradient 8s infinite}.premium-nav-menu-item .premium-menu-link{position:relative;text-decoration:none}.premium-nav-menu-item .premium-mega-content-container,.premium-nav-menu-item .premium-sub-menu{-webkit-transition:.5s all ease-in-out;transition:.5s all ease-in-out;-webkit-transition-delay:0.1s;transition-delay:0.1s}.premium-item-badge,.premium-rn-badge,.premium-sub-item-badge{position:absolute;padding:1px 6px;min-width:35px;text-align:center;font-size:10px;border-radius:4px;line-height:1.8;white-space:nowrap}.premium-nav-dropdown .premium-sub-item-badge,.premium-nav-hor .premium-sub-item-badge,.premium-nav-slide .premium-sub-item-badge,.premium-nav-ver.premium-vertical-right .premium-item-badge,.premium-nav-ver.premium-vertical-right .premium-sub-item-badge{top:50%;right:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.premium-nav-ver.premium-vertical-left .premium-item-badge,.premium-nav-ver.premium-vertical-left .premium-sub-item-badge{top:50%;left:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.premium-hamburger-menu .premium-nav-menu-container,.premium-nav-dropdown .premium-nav-menu-container,.premium-nav-slide .premium-nav-menu-container{display:none}.premium-hamburger-menu .premium-hamburger-toggle,.premium-nav-dropdown .premium-hamburger-toggle,.premium-nav-slide .premium-hamburger-toggle{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.premium-mega-item-static{position:static!important}.premium-hidden-icon-yes.premium-hamburger-menu .premium-item-icon,.premium-hidden-icon-yes.premium-hamburger-menu .premium-sub-item-icon,.premium-hidden-icon-yes.premium-nav-dropdown .premium-item-icon,.premium-hidden-icon-yes.premium-nav-dropdown .premium-sub-item-icon,.premium-hidden-icon-yes.premium-nav-slide .premium-item-icon,.premium-hidden-icon-yes.premium-nav-slide .premium-sub-item-icon{display:none}.premium-hidden-badge-yes.premium-hamburger-menu .premium-item-badge,.premium-hidden-badge-yes.premium-hamburger-menu .premium-rn-badge,.premium-hidden-badge-yes.premium-hamburger-menu .premium-sub-item-badge,.premium-hidden-badge-yes.premium-nav-dropdown .premium-item-badge,.premium-hidden-badge-yes.premium-nav-dropdown .premium-rn-badge,.premium-hidden-badge-yes.premium-nav-dropdown .premium-sub-item-badge,.premium-hidden-badge-yes.premium-nav-slide .premium-item-badge,.premium-hidden-badge-yes.premium-nav-slide .premium-rn-badge,.premium-hidden-badge-yes.premium-nav-slide .premium-sub-item-badge{display:none}.premium-ham-dropdown .premium-mobile-menu-container,.premium-nav-dropdown .premium-mobile-menu-container{display:-webkit-flex;display:-ms-flexbox;display:flex}.premium-ham-dropdown .premium-toggle-opened .premium-toggle-close,.premium-nav-dropdown .premium-toggle-opened .premium-toggle-close{display:inline!important}.premium-ham-dropdown .premium-toggle-opened .premium-toggle-text,.premium-nav-dropdown .premium-toggle-opened .premium-toggle-text{display:none!important}.premium-stretch-dropdown .premium-mobile-menu-container{position:absolute;z-index:9999}.premium-nav-default{display:none}.premium-hamburger-toggle{width:100%}.premium-hamburger-toggle *{-webkit-transition:.3s all ease-in-out;transition:.3s all ease-in-out}.premium-menu-link-parent::after,.premium-menu-link-parent::before{display:block;position:absolute;-webkit-transition:all .3s cubic-bezier(.58, .3, .005, 1);transition:all .3s cubic-bezier(.58, .3, .005, 1)}.premium-nav-pointer-double-line .premium-menu-link-parent::after,.premium-nav-pointer-underline .premium-menu-link-parent::after{content:"";bottom:0}.premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-underline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after{width:10px;inset-inline-start:100%}.premium-nav-pointer-double-line .premium-menu-link-parent::before,.premium-nav-pointer-overline .premium-menu-link-parent::before{content:"";top:0}.premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-overline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{width:10px;left:-20px}.premium-nav-pointer-double-line .premium-menu-link-parent::after,.premium-nav-pointer-double-line .premium-menu-link-parent::before,.premium-nav-pointer-overline .premium-menu-link-parent::after,.premium-nav-pointer-overline .premium-menu-link-parent::before,.premium-nav-pointer-underline .premium-menu-link-parent::after,.premium-nav-pointer-underline .premium-menu-link-parent::before{height:3px;width:100%;left:0;background-color:#55595c;z-index:2}.premium-nav-pointer-double-line.premium-nav-animation-none,.premium-nav-pointer-overline.premium-nav-animation-none,.premium-nav-pointer-underline.premium-nav-animation-none{-webkit-transition-duration:0s;transition-duration:0s}.premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent,.premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::after,.premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::before,.premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:focus,.premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:hover,.premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent,.premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::after,.premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::before,.premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:focus,.premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:hover,.premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent,.premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::after,.premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::before,.premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:focus,.premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:hover{-webkit-transition-duration:0s;transition-duration:0s}.premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{height:0;width:0;left:50%}.premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{top:-10px}.premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after{bottom:-10px}.premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before,.premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{top:10px}.premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after{bottom:10px}.premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::after,.premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{opacity:0}.premium-nav-pointer-framed .premium-menu-link-parent::before{content:""}.premium-nav-pointer-framed .premium-menu-link-parent::after,.premium-nav-pointer-framed .premium-menu-link-parent::before{border-radius:inherit;background:0 0;left:0;top:0;bottom:0;right:0;border:3px solid #55595c}.premium-nav-pointer-framed.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{-webkit-transform:scale(.75);-ms-transform:scale(.75);transform:scale(.75)}.premium-nav-pointer-framed.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{-webkit-transform:scale(1.25);-ms-transform:scale(1.25);transform:scale(1.25)}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before{width:3px;height:3px}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before{border-width:0 0 3px 3px;-webkit-transition:width .1s .2s,height .1s .3s,opacity .12s .22s;transition:width .1s .2s,height .1s .3s,opacity .12s .22s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after{content:"";top:auto;bottom:0;left:auto;right:0;border-width:3px 3px 0 0;-webkit-transition:width .1s,height .1s .1s,opacity 20ms .18s;transition:width .1s,height .1s .1s,opacity 20ms .18s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before{width:100%;height:100%}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before{-webkit-transition:opacity 20ms,height .1s,width .1s .1s;transition:opacity 20ms,height .1s,width .1s .1s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after{-webkit-transition:opacity 20ms .2s,height .1s .2s,width .1s .3s;transition:opacity 20ms .2s,height .1s .2s,width .1s .3s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before{-webkit-transition:opacity 20ms,height .1s,width .1s .1s;transition:opacity 20ms,height .1s,width .1s .1s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after{-webkit-transition:opacity 20ms .2s,height .1s .2s,width .1s .3s;transition:opacity 20ms .2s,height .1s .2s,width .1s .3s}.premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after,.premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before{width:100%;height:100%}.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before{border-width:3px 0 0 3px}.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after{content:"";top:auto;bottom:0;left:auto;right:0;border-width:0 3px 3px 0}.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after,.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before{width:3px;height:3px}.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::after,.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::before,.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::after,.premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::before{width:100%;height:100%;-webkit-transition:opacity 2ms,width .4s,height .4s;transition:opacity 2ms,width .4s,height .4s}.premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::after,.premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::before{width:100%;height:100%;-webkit-transition:opacity 2ms,width .4s,height .4s;transition:opacity 2ms,width .4s,height .4s}.premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:hover{-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)}.premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:hover{-webkit-transform:scale(.8);-ms-transform:scale(.8);transform:scale(.8)}.premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:hover{-webkit-transform:translateY(8px);-ms-transform:translateY(8px);transform:translateY(8px)}.premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:hover{-webkit-transform:translateY(-8px);-ms-transform:translateY(-8px);transform:translateY(-8px)}.premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:hover{-webkit-transform:skew(-8deg);-ms-transform:skew(-8deg);transform:skew(-8deg)}.premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:focus,.premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:hover{-webkit-transform:rotate(6deg);-ms-transform:rotate(6deg);transform:rotate(6deg)}.premium-nav-pointer-background .premium-menu-link-parent::before{top:0;left:0;right:0;bottom:0;background:#55595c;background-color:#55595c;z-index:-1}.premium-nav-pointer-background .premium-menu-link-parent::after,.premium-nav-pointer-background .premium-menu-link-parent::before{content:"";border-radius:inherit;-webkit-transition:.3s;transition:.3s}.premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent::before{-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}.premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:focus::before,.premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:hover::before{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.premium-nav-pointer-background.premium-nav-animation-grow .premium-active-item .premium-menu-link-parent::before{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.premium-nav-pointer-background.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2);-webkit-transition:.3;transition:.3}.premium-nav-pointer-background.premium-nav-animation-sweep-left .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{left:100%}.premium-nav-pointer-background.premium-nav-animation-sweep-right .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{right:100%}.premium-nav-pointer-background.premium-nav-animation-sweep-up .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{top:100%}.premium-nav-pointer-background.premium-nav-animation-sweep-down .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{bottom:100%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after,.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after{top:0;left:0;right:0;bottom:0;background:#55595c;background-color:#55595c;z-index:-1}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::before{top:0;bottom:100%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after{top:100%;bottom:0}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::before,.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::before{bottom:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::after,.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::after{top:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::before{bottom:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::after{top:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-out-vertical .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{bottom:50%;top:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::before{right:0;left:100%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after{right:100%;left:0}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::before,.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::before{left:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::after,.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::after{right:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::before{left:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::after{right:50%}.premium-nav-pointer-background.premium-nav-animation-shutter-out-horizontal .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover,:focus)::before{left:50%;right:50%}.premium-active-item::after,.premium-active-item::before,.premium-menu-link-parent:focus::after,.premium-menu-link-parent:focus::before,.premium-menu-link-parent:hover::after,.premium-menu-link-parent:hover::before{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}[class*=premium-nav-slide-].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-mega-content-container,[class*=premium-nav-slide-].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-sub-menu,[class*=premium-nav-slide-].premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu.premium-item-hovered>.premium-sub-menu,[class*=premium-nav-slide-].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-mega-content-container,[class*=premium-nav-slide-].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-item-hovered>.premium-sub-menu,[class*=premium-nav-slide-].premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu.premium-item-hovered>.premium-sub-menu{-webkit-transform:translate(0);-ms-transform:translate(0);transform:translate(0)}.premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,.premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}.premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,.premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu{-webkit-transform:translateY(-10px);-ms-transform:translateY(-10px);transform:translateY(-10px)}.premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,.premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}.premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,.premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container,.premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}.premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container{-webkit-transform:translateX(-50%) translateY(10px);-ms-transform:translateX(-50%) translateY(10px);transform:translateX(-50%) translateY(10px)}.premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateX(-50%) translateY(0);-ms-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}.premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container{-webkit-transform:translateX(-50%) translateY(-10px);-ms-transform:translateX(-50%) translateY(-10px);transform:translateX(-50%) translateY(-10px)}.premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateX(-50%) translateY(0);-ms-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}.premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container{-webkit-transform:translateX(-45%);-ms-transform:translateX(-45%);transform:translateX(-45%)}.premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container{-webkit-transform:translateX(-55%);-ms-transform:translateX(-55%);transform:translateX(-55%)}.premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container,.premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container,.premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static.premium-item-hovered .premium-mega-content-container{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.premium-mega-content-container .premium-rn-badge,.premium-rn-badge{position:absolute;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);top:50%;right:10px;-webkit-transition:all .3s;transition:all .3s}.premium-nav-ver.premium-vertical-left .premium-rn-badge{top:50%;left:10px;right:unset;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.premium-nav-ver.premium-vertical-left .premium-mega-content-container .premium-rn-badge{left:unset;right:10px}.has-pa-badge:hover{-webkit-transition:all .3s;transition:all .3s}.premium-sub-item-badge{-webkit-transition:all .3s;transition:all .3s}.premium-mega-content-container .premium-badge-dot .premium-rn-badge,.premium-mega-content-container .premium-badge-dot .premium-sub-item-badge,.premium-sub-menu .premium-badge-dot .premium-rn-badge,.premium-sub-menu .premium-badge-dot .premium-sub-item-badge{font-size:0;min-width:1px;padding:3px;border-radius:50%;-webkit-transition:all .3s;transition:all .3s}.premium-mega-content-container .premium-badge-pulse:hover .premium-rn-badge,.premium-mega-content-container .premium-badge-pulse:hover .premium-sub-item-badge,.premium-sub-menu .premium-badge-pulse:hover .premium-rn-badge,.premium-sub-menu .premium-badge-pulse:hover .premium-sub-item-badge{-webkit-animation:badge-pulse-grow .5s alternate infinite ease-in-out;animation:badge-pulse-grow .5s alternate infinite ease-in-out}.premium-mega-content-container .premium-badge-buzz:hover .premium-rn-badge,.premium-mega-content-container .premium-badge-buzz:hover .premium-sub-item-badge,.premium-sub-menu .premium-badge-buzz:hover .premium-rn-badge,.premium-sub-menu .premium-badge-buzz:hover .premium-sub-item-badge{-webkit-animation:badge-buzz .5s alternate infinite ease-in-out;animation:badge-buzz .5s alternate infinite ease-in-out}.premium-mega-content-container .premium-badge-slide-right .premium-rn-badge,.premium-mega-content-container .premium-badge-slide-right .premium-sub-item-badge,.premium-sub-menu .premium-badge-slide-right .premium-rn-badge,.premium-sub-menu .premium-badge-slide-right .premium-sub-item-badge{-webkit-transform:translateY(-50%) translateX(-5px);-ms-transform:translateY(-50%) translateX(-5px);transform:translateY(-50%) translateX(-5px);-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.premium-mega-content-container .premium-badge-slide-right:hover .premium-rn-badge,.premium-mega-content-container .premium-badge-slide-right:hover .premium-sub-item-badge,.premium-sub-menu .premium-badge-slide-right:hover .premium-rn-badge,.premium-sub-menu .premium-badge-slide-right:hover .premium-sub-item-badge{-webkit-transform:translateY(-50%) translateX(5px);-ms-transform:translateY(-50%) translateX(5px);transform:translateY(-50%) translateX(5px)}.premium-mega-content-container .premium-badge-slide-left .premium-rn-badge,.premium-mega-content-container .premium-badge-slide-left .premium-sub-item-badge,.premium-sub-menu .premium-badge-slide-left .premium-rn-badge,.premium-sub-menu .premium-badge-slide-left .premium-sub-item-badge{-webkit-transform:translateY(-50%) translateX(5px);-ms-transform:translateY(-50%) translateX(5px);transform:translateY(-50%) translateX(5px);-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.premium-mega-content-container .premium-badge-slide-left:hover .premium-rn-badge,.premium-mega-content-container .premium-badge-slide-left:hover .premium-sub-item-badge,.premium-sub-menu .premium-badge-slide-left:hover .premium-rn-badge,.premium-sub-menu .premium-badge-slide-left:hover .premium-sub-item-badge{-webkit-transform:translateY(-50%) translateX(-5px);-ms-transform:translateY(-50%) translateX(-5px);transform:translateY(-50%) translateX(-5px)}.premium-mega-content-container .premium-badge-expand .premium-rn-badge,.premium-mega-content-container .premium-badge-expand .premium-sub-item-badge,.premium-sub-menu .premium-badge-expand .premium-rn-badge,.premium-sub-menu .premium-badge-expand .premium-sub-item-badge{-webkit-transform:translateY(-50%) scaleX(0);-ms-transform:translateY(-50%) scaleX(0);transform:translateY(-50%) scaleX(0);-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.premium-mega-content-container .premium-badge-expand:hover .premium-rn-badge,.premium-mega-content-container .premium-badge-expand:hover .premium-sub-item-badge,.premium-sub-menu .premium-badge-expand:hover .premium-rn-badge,.premium-sub-menu .premium-badge-expand:hover .premium-sub-item-badge{-webkit-transform:translateY(-50%) scaleX(1);-ms-transform:translateY(-50%) scaleX(1);transform:translateY(-50%) scaleX(1)}@-webkit-keyframes badge-pulse-grow{to{-webkit-transform:translateY(-50%) scale(1.07);transform:translateY(-50%) scale(1.07)}}@keyframes badge-pulse-grow{to{-webkit-transform:translateY(-50%) scale(1.07);transform:translateY(-50%) scale(1.07)}}@keyframes badge-pulse-grow{to{-webkit-transform:translateY(-50%) scale(1.07);transform:translateY(-50%) scale(1.07)}}@-webkit-keyframes badge-buzz{50%{-webkit-transform:translateY(-50%) translateX(3px) rotate(2deg);transform:translateY(-50%) translateX(3px) rotate(2deg)}100%{-webkit-transform:translateY(-50%) translateX(-3px) rotate(-2deg);transform:translateY(-50%) translateX(-3px) rotate(-2deg)}}@keyframes badge-buzz{50%{-webkit-transform:translateY(-50%) translateX(3px) rotate(2deg);transform:translateY(-50%) translateX(3px) rotate(2deg)}100%{-webkit-transform:translateY(-50%) translateX(-3px) rotate(-2deg);transform:translateY(-50%) translateX(-3px) rotate(-2deg)}}@keyframes badge-buzz{50%{-webkit-transform:translateY(-50%) translateX(3px) rotate(3deg);transform:translateY(-50%) translateX(3px) rotate(3deg)}100%{-webkit-transform:translateY(-50%) translateX(-3px) rotate(-3deg);transform:translateY(-50%) translateX(-3px) rotate(-3deg)}}body.premium-scroll-disabled{overflow-y:hidden;height:100vh;margin:0}.zst-el-sticky__spacer .premium-nav-widget-container{visibility:unset!important;opacity:unset!important}.zst-el-sticky__spacer .premium-mega-content-container{visibility:hidden!important;opacity:0!important}@-webkit-keyframes pa-menu-text-gradient{0%,100%{-webkit-filter:hue-rotate(0deg);filter:hue-rotate(0deg)}50%{-webkit-filter:hue-rotate(360deg);filter:hue-rotate(360deg)}}@keyframes pa-menu-text-gradient{0%,100%{-webkit-filter:hue-rotate(0deg);filter:hue-rotate(0deg)}50%{-webkit-filter:hue-rotate(360deg);filter:hue-rotate(360deg)}}

/* --- ZST-CKZiU NATIVE DESKTOP SUBMENU HOVER SUPPORT --- */
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

.premium-sub-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-sub-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
    left: 100% !important;
    top: 0 !important;
    transform: translate(0) !important;
    pointer-events: auto !important;
}

/* ==========================================================================
   ZST-CKZiU OFFICIAL 1:1 REPRODUCED HEADER & MENU STYLING (PERFECT FIDELITY)
   ========================================================================== */

/* 1. Header Global Containers */
.zst-el-36056 {
    position: relative !important;
    z-index: 999999 !important;
    background: #0b1736 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    width: 100% !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.zst-el-36056 .zst-el-container {
    width: 100% !important;
    max-width: 1720px !important;
    margin: 0 auto !important;
    padding-left: clamp(16px, 3vw, 40px) !important;
    padding-right: clamp(16px, 3vw, 40px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
}

/* 2. Top Bar (Sekcja górna - teleadresowa i dostępność) */
.zst-el-element-42294e3 {
    background: #070e22 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 6px 0 !important;
    font-size: 13px !important;
}

.zst-el-element-42294e3 .zst-el-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.zst-el-element-42294e3 .zst-el-column {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
}

.zst-el-element-42294e3 .zst-el-element-236f61e {
    justify-content: flex-end !important;
}

.zst-el-element-42294e3 ul.zst-el-icon-list-items {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 18px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.zst-el-element-42294e3 .zst-el-icon-list-item {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.zst-el-element-42294e3 .zst-el-icon-list-item a,
.zst-el-element-42294e3 .zst-el-icon-list-text,
.zst-el-element-42294e3 .zst-el-icon-list-icon,
.zst-el-element-42294e3 .zst-el-icon-list-icon i {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    transition: color 0.2s ease !important;
}

.zst-el-element-42294e3 .zst-el-icon-list-icon {
    margin-right: 6px !important;
    font-size: 12px !important;
}

.zst-el-element-42294e3 .zst-el-icon-list-item a:hover,
.zst-el-element-42294e3 .zst-el-icon-list-item a:hover .zst-el-icon-list-text,
.zst-el-element-42294e3 .zst-el-icon-list-item a:hover .zst-el-icon-list-icon i {
    color: #ffb300 !important;
}

/* 3. Main Navigation Bar (Sekcja z logo i menu głównym) */
.zst-el-element-c71ee80 {
    background: #0b1736 !important;
    padding: 10px 0 !important;
}

.zst-el-element-c71ee80 .zst-el-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
}

/* Logo Column */
.zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
}

.zst-el-element-c71ee80 .zst-el-widget-image {
    margin: 0 !important;
}

.zst-el-element-c71ee80 .zst-el-widget-image img {
    height: 62px !important;
    width: auto !important;
    max-height: 62px !important;
    display: block !important;
}

/* Navigation Menu Column */
.zst-el-element-c71ee80 .zst-el-element-8871457 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 1 1 auto !important;
    width: auto !important;
}

.zst-el-element-8871457 .premium-nav-menu-container {
    width: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.zst-el-element-8871457 ul.premium-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 2px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item {
    position: relative !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Menu Top-level Links */
.zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link {
    color: #ffffff !important;
    font-family: 'Montserrat', 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.2px !important;
    text-decoration: none !important;
    padding: 6px 5px !important;
    border-radius: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    background: transparent !important;
    transition: all 0.22s ease !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link i.premium-dropdown-icon {
    font-size: 11px !important;
    margin-left: 3px !important;
    color: #ffffff !important;
    transition: transform 0.2s ease !important;
}

/* Hover & Active Capsule Highlight */
.zst-el-element-8871457 li.premium-nav-menu-item:hover > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.current-menu-item > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.current-menu-ancestor > a.premium-menu-link {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: #ffffff !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item:hover > a.premium-menu-link i.premium-dropdown-icon,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > a.premium-menu-link i.premium-dropdown-icon {
    transform: rotate(180deg) !important;
    color: #ffb300 !important;
}

/* 4. Submenu Dropdown Styling */
.zst-el-element-8871457 ul.premium-sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 250px !important;
    background: #0b1736 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    padding: 8px 0 !important;
    margin: 8px 0 0 0 !important;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.55) !important;
    list-style: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    z-index: 999999 !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item:hover > ul.premium-sub-menu,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > ul.premium-sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
    display: block !important;
}

.zst-el-element-8871457 ul.premium-sub-menu li.premium-sub-menu-item {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.zst-el-element-8871457 ul.premium-sub-menu li.premium-sub-menu-item a.premium-sub-menu-link {
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    padding: 10px 20px !important;
    display: block !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 0 !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    white-space: normal !important;
}

.zst-el-element-8871457 ul.premium-sub-menu li.premium-sub-menu-item:last-child a.premium-sub-menu-link {
    border-bottom: none !important;
}

.zst-el-element-8871457 ul.premium-sub-menu li.premium-sub-menu-item a.premium-sub-menu-link:hover {
    background-color: #162a5c !important;
    color: #ffb300 !important;
    padding-left: 24px !important;
}

/* Responsive Breakpoints for Navigation */
@media (min-width: 1025px) {
    .zst-el-hidden-desktop {
        display: none !important;
    }
}

@media (max-width: 1024px) {
    .zst-el-hidden-tablet {
        display: none !important;
    }
    .zst-el-element-42294e3 {
        display: none !important;
    }
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-f9afbcc {
        display: block !important;
    }
}

@media (max-width: 767px) {
    .zst-el-hidden-mobile {
        display: none !important;
    }
}

/* ==========================================================================
   FIX: Force vertical (column) dropdown submenus instead of horizontal
   ========================================================================== */

/* Override the premium-nav-hor flex row rule with higher specificity */
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.premium-sub-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-sub-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > ul.premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 260px !important;
    max-width: 320px !important;
    width: auto !important;
    background: #0b1736 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    padding: 8px 0 !important;
    margin: 4px 0 0 0 !important;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.55) !important;
    z-index: 999999 !important;
}

/* Also catch any ul.premium-sub-menu globally */
ul.premium-sub-menu {
    flex-direction: column !important;
}

/* Submenu children - full width block items */
.premium-nav-hor .premium-sub-menu > li.premium-sub-menu-item,
.premium-nav-hor .premium-sub-menu > li.premium-nav-menu-item,
ul.premium-sub-menu > li {
    display: block !important;
    width: 100% !important;
    float: none !important;
}

/* Submenu links - block, full width, proper padding */
ul.premium-sub-menu li a.premium-sub-menu-link,
ul.premium-sub-menu li a.premium-menu-link {
    display: block !important;
    width: 100% !important;
    padding: 10px 20px !important;
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    white-space: normal !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    box-sizing: border-box !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
}

ul.premium-sub-menu li:last-child a.premium-sub-menu-link,
ul.premium-sub-menu li:last-child a.premium-menu-link {
    border-bottom: none !important;
}

ul.premium-sub-menu li a.premium-sub-menu-link:hover,
ul.premium-sub-menu li a.premium-menu-link:hover {
    background-color: #162a5c !important;
    color: #ffb300 !important;
    padding-left: 24px !important;
}

/* ==========================================================================
   FIX: Bridge the gap between menu item and dropdown to prevent mouseout
   ========================================================================== */

/* Remove margin gap - use padding instead to keep hover zone continuous */
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > ul.premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu,
.zst-el-element-8871457 li.premium-nav-menu-item:hover > ul.premium-sub-menu,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > ul.premium-sub-menu,
ul.premium-sub-menu {
    margin-top: 0px !important;
    padding-top: 8px !important;
}

/* Invisible bridge pseudo-element to connect parent LI to submenu */
.zst-el-element-8871457 li.premium-nav-menu-item.menu-item-has-children > ul.premium-sub-menu::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: -15px !important;
    left: 0 !important;
    width: 100% !important;
    height: 15px !important;
    background: transparent !important;
}

/* Ensure parent LI has enough hover zone */
.zst-el-element-8871457 li.premium-nav-menu-item.menu-item-has-children {
    padding-bottom: 5px !important;
}

/* FIX: Dropdown background color #10265c */
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children:hover > ul.premium-sub-menu,
.zst-el-element-8871457 .premium-nav-hor .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu,
.zst-el-element-8871457 li.premium-nav-menu-item:hover > ul.premium-sub-menu,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > ul.premium-sub-menu,
ul.premium-sub-menu {
    background: #10265c !important;
    background-color: #10265c !important;
}

/* ==========================================================================
   FIX: Nested sub-submenu flyout (right/left depending on space)
   ========================================================================== */

/* Nested submenu (sub-sub-menu) - fly out to the RIGHT */
ul.premium-sub-menu ul.premium-sub-menu,
.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu,
li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu {
    position: absolute !important;
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    margin-top: 0 !important;
    margin-left: 4px !important;
    min-width: 240px !important;
    max-width: 320px !important;
    background: #10265c !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    padding: 8px 0 !important;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.55) !important;
    z-index: 1000000 !important;
    flex-direction: column !important;
}

/* Hover bridge for nested submenus */
li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: -10px !important;
    width: 10px !important;
    height: 100% !important;
    background: transparent !important;
}

/* Show nested submenu on hover */
li.premium-sub-menu-item.menu-item-has-children:hover > ul.premium-sub-menu,
li.premium-sub-menu-item.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu {
    display: flex !important;
    flex-direction: column !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

/* Hide nested submenu by default */
li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Arrow indicator for items with nested submenus */
li.premium-sub-menu-item.menu-item-has-children > a.premium-sub-menu-link::after,
li.premium-sub-menu-item.menu-item-has-children > a.premium-menu-link::after {
    content: '\203A' !important;
    float: right !important;
    margin-left: 10px !important;
    font-size: 18px !important;
    line-height: 1 !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

/* If submenu would overflow right edge, flip to left side */
@media (max-width: 1400px) {
    ul.premium-sub-menu ul.premium-sub-menu,
    .premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu,
    li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu {
        left: auto !important;
        right: 100% !important;
        margin-left: 0 !important;
        margin-right: 4px !important;
    }
    li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu::before {
        left: auto !important;
        right: -10px !important;
    }
}

/* ==========================================================================
   FIX: Main navigation bar background color -> #10265c
   ========================================================================== */

/* Main header container */
.zst-el-36056,
.zst-el-36056 .zst-el-section,
.zst-el-36056 .zst-el-top-section {
    background: #10265c !important;
    background-color: #10265c !important;
}

/* Top bar */
.zst-el-element-42294e3 {
    background: #0d1e4a !important;
    background-color: #0d1e4a !important;
}

/* Main nav row */
.zst-el-element-c71ee80 {
    background: #10265c !important;
    background-color: #10265c !important;
}

/* ==========================================================================
   FIX: Nested sub-submenu flyout - override with HIGHEST specificity
   Position: to the RIGHT (left: 100%, top: 0) instead of below (left: 0, top: 100%)
   ========================================================================== */

/* Nested submenus: fly out RIGHT, not below */
.premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children:hover > ul.premium-sub-menu,
.zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu {
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    margin-top: 0 !important;
    margin-left: 4px !important;
    min-width: 240px !important;
    max-width: 320px !important;
    flex-direction: column !important;
    background: #10265c !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.55) !important;
    z-index: 1000000 !important;
}

/* If would overflow right side of viewport, flip to LEFT */
@media (max-width: 1400px) {
    .premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
    .premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
    .premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children:hover > .premium-sub-menu,
    .premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
    .zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children:hover > ul.premium-sub-menu,
    .zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu {
        left: auto !important;
        right: 100% !important;
        margin-left: 0 !important;
        margin-right: 4px !important;
    }
}

/* ==========================================================================
   FIX: Hover bridge for nested flyout submenus (right-side)
   ========================================================================== */

/* Remove margin gap, use transparent bridge instead */
.premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-sub-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
.premium-nav-hor .premium-sub-menu .premium-nav-menu-item.menu-item-has-children.premium-item-hovered > .premium-sub-menu,
.zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children:hover > ul.premium-sub-menu,
.zst-el-element-8871457 .premium-sub-menu li.menu-item-has-children.premium-item-hovered > ul.premium-sub-menu {
    margin-left: 0px !important;
    padding-left: 8px !important;
}

/* Invisible bridge on LEFT side of flyout to connect to parent */
.premium-sub-menu li.menu-item-has-children > ul.premium-sub-menu::before,
li.premium-sub-menu-item.menu-item-has-children > ul.premium-sub-menu::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: -20px !important;
    width: 20px !important;
    height: 100% !important;
    background: transparent !important;
    z-index: 999999 !important;
}

/* Extend parent LI hover zone to the right */
.premium-sub-menu li.premium-sub-menu-item.menu-item-has-children,
.premium-sub-menu li.premium-nav-menu-item.menu-item-has-children {
    position: relative !important;
    padding-right: 10px !important;
}

/* FIX: Top bar - darker background to match footer copyright */
.zst-el-element-42294e3,
.zst-el-element-42294e3.zst-el-section,
.zst-el-element-42294e3.zst-el-top-section,
.zst-el-36056 .zst-el-element-42294e3 {
    background: #060d1f !important;
    background-color: #060d1f !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* FIX: Copyright footer - small, delicate, subtle */
.zst-el-element-5feb0ee,
.zst-el-element-5feb0ee.zst-el-section {
    padding: 8px 0 !important;
    background: #060d1f !important;
    border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.zst-el-element-5feb0ee *,
.zst-el-element-5feb0ee p,
.zst-el-element-5feb0ee span,
.zst-el-element-5feb0ee div,
.zst-el-element-5feb0ee .zst-el-widget-container,
.zst-el-element-5feb0ee .zst-el-heading-title {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.3) !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
}
/* ==========================================================================
   LIVE PRODUCTION - NATIVE RESPONSIVE MOBILE DRAWER & HEADER (ZST-CKZiU)
   ========================================================================== */

/* Top bar on mobile: display clean contact info bar */
@media (max-width: 1024px) {
    .zst-el-element-42294e3 {
        display: block !important;
        background: #060d1f !important;
        padding: 6px 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }
    .zst-el-element-42294e3 .zst-el-element-e749f82 {
        display: none !important;
    }
    .zst-el-element-42294e3 .zst-el-element-236f61e {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .zst-el-element-42294e3 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-item,
    .zst-el-element-42294e3 .zst-el-icon-list-text,
    .zst-el-element-42294e3 .zst-el-icon-list-item a {
        font-size: 11.5px !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-icon {
        display: none !important;
    }

    /* Main Navigation Bar */
    .zst-el-element-c71ee80 {
        padding: 8px 0 !important;
        background: #10265c !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Logo */
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 img {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        display: block !important;
    }

    /* Hide desktop nav */
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-f9afbcc {
        display: none !important;
    }

    /* Hamburger column */
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        width: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* 7a340c0 (Hamburger Button) */
    .zst-el-element-7a340c0 {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
    }
    .zst-el-element-7a340c0 .pp-advanced-menu--main,
    .zst-el-element-7a340c0 .pp-advanced-menu--dropdown {
        display: none !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 46px !important;
        height: 44px !important;
        background: #162a5c !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle:hover {
        background: #1c3674 !important;
        border-color: #ffb300 !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-box {
        width: 24px !important;
        height: 18px !important;
        display: inline-block !important;
        position: relative !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner,
    .zst-el-element-7a340c0 .pp-hamburger-inner::before,
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        width: 24px !important;
        height: 2.5px !important;
        background-color: #ffffff !important;
        border-radius: 2px !important;
        position: absolute !important;
        transition: transform 0.15s ease !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::before {
        content: "" !important;
        top: -7px !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        content: "" !important;
        bottom: -7px !important;
    }

    /* Mobile Hero Banner */
    .zst-el-element-27a1745 {
        display: block !important;
    }
}

/* ==========================================================================
   SLIDE-OVER MOBILE DRAWER (Bumerang / Drawer Menu)
   ========================================================================== */
#zst-mobile-nav-drawer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 9999999 !important;
    display: none;
    pointer-events: none;
}

#zst-mobile-nav-drawer.zst-drawer-open {
    display: block !important;
    pointer-events: auto !important;
}

.zst-mobile-nav-backdrop {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(4, 9, 20, 0.7) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    opacity: 0;
    transition: opacity 0.3s ease !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-backdrop {
    opacity: 1;
}

.zst-mobile-nav-panel {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(340px, 86vw) !important;
    height: 100% !important;
    background: #0b1736 !important;
    box-shadow: -8px 0 35px rgba(0, 0, 0, 0.6) !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateX(100%) !important;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-sizing: border-box !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-panel {
    transform: translateX(0) !important;
}

.zst-mobile-nav-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: #060d1f !important;
}

.zst-mobile-nav-school {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
}

.zst-mobile-nav-close {
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    font-size: 28px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    padding: 0 4px !important;
}

.zst-mobile-nav-close:hover {
    color: #ffb300 !important;
}

.zst-mobile-nav-items {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    padding: 12px 0 30px 0 !important;
}

/* Tree styling */
.zst-mobile-menu-tree {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 20px !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.zst-mobile-menu-tree li > a:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #ffb300 !important;
}

.zst-mobile-menu-tree .zst-mob-caret {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    margin-left: 8px !important;
    font-size: 14px !important;
    color: #ffb300 !important;
    transition: transform 0.25s ease !important;
}

.zst-mobile-menu-tree li.zst-mob-open > a .zst-mob-caret {
    transform: rotate(180deg) !important;
}

/* Submenu dropdown */
.zst-mobile-menu-tree ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #071026 !important;
    display: none !important;
}

.zst-mobile-menu-tree li.zst-mob-open > ul {
    display: block !important;
}

.zst-mobile-menu-tree ul li a {
    padding: 10px 20px 10px 34px !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.85) !important;
}

.zst-mobile-menu-tree ul ul li a {
    padding-left: 48px !important;
    font-size: 12.5px !important;
}
/* ==========================================================================
   LIVE PRODUCTION - PERFECT RESPONSIVE MOBILE DRAWER & BANNER OVERRIDES
   ========================================================================== */

/* 1. Mobile top bar */
@media (max-width: 1024px) {
    .zst-el-element-42294e3,
    .zst-el-36056 .zst-el-element-42294e3 {
        display: block !important;
        background: #060d1f !important;
        padding: 6px 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }
    .zst-el-element-42294e3 .zst-el-element-e749f82 {
        display: none !important;
    }
    .zst-el-element-42294e3 .zst-el-element-236f61e {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .zst-el-element-42294e3 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-item,
    .zst-el-element-42294e3 .zst-el-icon-list-text,
    .zst-el-element-42294e3 .zst-el-icon-list-item a {
        font-size: 11.5px !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-icon {
        display: none !important;
    }

    /* 2. Main bar c71ee80 on mobile */
    .zst-el-element-c71ee80,
    .zst-el-36056 .zst-el-element-c71ee80 {
        padding: 8px 0 !important;
        background: #10265c !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Logo */
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 img {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        display: block !important;
    }

    /* Hide desktop navs */
    .zst-el-element-c71ee80 .zst-el-element-8871457,
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f9afbcc,
    .zst-el-element-f9afbcc {
        display: none !important;
    }

    /* Hamburger Column & Button */
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        width: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Override zst-el-hidden-desktop/tablet/mobile on 7a340c0 */
    .zst-el-element.zst-el-element-7a340c0,
    .zst-el-element-7a340c0 {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        visibility: visible !important;
    }
    .zst-el-element-7a340c0 .pp-advanced-menu--main,
    .zst-el-element-7a340c0 .pp-advanced-menu--dropdown {
        display: none !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        height: 44px !important;
        background: #162a5c !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        visibility: visible !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle:hover {
        background: #1c3674 !important;
        border-color: #ffb300 !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger {
        display: block !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-box {
        width: 24px !important;
        height: 18px !important;
        display: inline-block !important;
        position: relative !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner,
    .zst-el-element-7a340c0 .pp-hamburger-inner::before,
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        width: 24px !important;
        height: 2.5px !important;
        background-color: #ffffff !important;
        border-radius: 2px !important;
        position: absolute !important;
        transition: transform 0.15s ease !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::before {
        content: "" !important;
        top: -7px !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        content: "" !important;
        bottom: -7px !important;
    }

    /* 3. Mobile Hero Banner 27a1745 */
    .zst-el-section.zst-el-element-27a1745,
    .zst-el-element-27a1745 {
        display: block !important;
        visibility: visible !important;
    }
}

/* ==========================================================================
   GLOBAL OVERFLOW & DESKTOP NAVBAR AUTO-FIT (PREVENTS "ROZJEŻDŻANIE SIĘ")
   ========================================================================== */

/* 1. Prevent global horizontal spill on any device */
html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 2. Desktop Header Bar: strict width containment & alignment */
.zst-el-element-c71ee80,
.zst-el-36056 .zst-el-element-c71ee80 {
    width: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 999999 !important;
}

.zst-el-element-c71ee80 > .zst-el-container,
.zst-el-element-c71ee80 .zst-el-element-2f4d7d6,
.zst-el-element-c71ee80 .zst-el-element-8871457,
.zst-el-element-8871457 .premium-nav-menu-container {
    overflow: visible !important;
}

.zst-el-element-c71ee80 > .zst-el-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 1380px !important;
    margin: 0 auto !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
}

/* Logo Column */
.zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 310px !important;
}

/* Nav Menu Column */
.zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
    width: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
}

/* Desktop Menu Widget & Items */
.zst-el-element-8871457 {
    width: auto !important;
    max-width: 100% !important;
}

.zst-el-element-8871457 ul.pp-advanced-menu,
.zst-el-element-8871457 ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.zst-el-element-8871457 ul > li {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.zst-el-element-8871457 ul > li > a {
    padding: 6px 5px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
    letter-spacing: -0.01em !important;
}

/* For laptop/desktop viewports 1025px - 1320px */
@media (min-width: 1025px) and (max-width: 1320px) {
    .zst-el-element-8871457 ul > li > a {
        padding: 8px 6px !important;
        font-size: 12px !important;
    }
}

/* ==========================================================================
   SUBPAGE & CALENDAR SPECIFIC REPAIR
   ========================================================================== */

/* 1. Calendar Download Banner: White bold title, clean button, no overrides */
.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-title,
.zst-cal-download-banner .zst-cal-banner-title {
    color: #ffffff !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important;
}

.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-subtitle,
.zst-cal-download-banner .zst-cal-banner-subtitle {
    color: #e2e8f0 !important;
    font-size: 13px !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn,
.zst-cal-download-banner a.zst-cal-pdf-btn {
    background: #ef4444 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(239, 68, 68, 0.4) !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn:hover,
.zst-cal-download-banner a.zst-cal-pdf-btn:hover {
    background: #dc2626 !important;
    color: #ffffff !important;
}

/* 2. Month Selector Tabs: Horizontal scroll bar styling */
.zst-month-tabs {
    display: flex !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 8px !important;
    padding: 4px 2px 10px 2px !important;
    margin-bottom: 20px !important;
    scrollbar-width: thin !important;
    scrollbar-color: #cbd5e1 #f8fafc !important;
}

.zst-month-tabs::-webkit-scrollbar {
    height: 6px !important;
}

.zst-month-tabs::-webkit-scrollbar-track {
    background: #f8fafc !important;
    border-radius: 4px !important;
}

.zst-month-tabs::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 4px !important;
}

.zst-month-tabs .zst-m-btn {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

/* 3. Mobile responsiveness for Calendar */
@media (max-width: 768px) {
    .zst-cal-download-banner {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 16px !important;
        padding: 16px !important;
        text-align: left !important;
    }
    .zst-cal-download-banner a.zst-cal-pdf-btn {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }
    .zst-calendar-card-box {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 14px 10px !important;
    }
    .zst-month-view {
        min-width: 480px !important;
    }
    .zst-weekdays-row > div {
        font-size: 11px !important;
        padding: 4px 1px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
}

/* 4. Subpages: eliminate double breadcrumbs */
.zst-kontakt-wrap .zst-crumbs-bar {
    display: none !important;
}

/* 5. Subpage content container padding check */
@media (max-width: 768px) {
    .zst-page-content-container,
    .zst-single-content-container {
        padding: 14px 12px 40px !important;
    }
    .zst-page-header-card {
        padding: 14px 16px !important;
    }
    .zst-page-title-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }
    .zst-page-title-row .zst-actions {
        width: 100% !important;
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }
}

/* Unconditional elimination of ghost menu and obsolete f9afbcc widget */
.zst-el-element-f9afbcc,
.premium-mobile-menu-container,
.premium-mobile-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    pointer-events: none !important;
    z-index: -9999 !important;
}

@media (min-width: 1025px) {
    .zst-el-element-7a340c0 {
        display: none !important;
    }
}

/* Force PDF button text and icon color to pure white */
.zst-page-content-wrap a.zst-cal-pdf-btn,
a.zst-cal-pdf-btn,
.zst-cal-pdf-btn {
    color: #ffffff !important;
    background: #ef4444 !important;
}
.zst-page-content-wrap a.zst-cal-pdf-btn *,
a.zst-cal-pdf-btn * {
    color: #ffffff !important;
}

/* Fix: Desktop submenus must remain hidden unless parent item is hovered */
.zst-el-element-8871457 ul.premium-sub-menu {
    display: none !important;
    position: absolute !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2) !important;
    z-index: 99999 !important;
}

.zst-el-element-8871457 li:hover > ul.premium-sub-menu {
    display: flex !important;
    flex-direction: column !important;
}

/* Ensure top level ul is flex, but children items are vertical in submenus */
.zst-el-element-8871457 ul.premium-sub-menu > li {
    display: block !important;
    width: 100% !important;
}

.zst-el-element-8871457 ul.premium-sub-menu > li > a {
    display: block !important;
    width: 100% !important;
    padding: 10px 16px !important;
    font-size: 12.5px !important;
    white-space: normal !important;
}

@media (min-width: 1025px) and (max-width: 1366px) {
    .zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link {
        padding: 6px 5px !important;
        font-size: 11.5px !important;
        letter-spacing: -0.02em !important;
    }
    .zst-el-element-8871457 ul.premium-nav-menu {
        gap: 2px !important;
    }
    .zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link i.premium-dropdown-icon {
        margin-left: 3px !important;
        font-size: 10px !important;
    }
}

/* Mobile Page Title Fix: Prevent flex-basis 520px from inflating title height in column mode */
@media (max-width: 768px) {
    .zst-page-title-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }
    .zst-page-title {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        width: 100% !important;
    }
    .zst-page-header-card {
        padding: 16px !important;
        margin-bottom: 20px !important;
    }
    .zst-page-title-row .zst-actions {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        margin-top: 4px !important;
    }
}

/* ==========================================================================
   DESKTOP MENU: NO CIRCLE/PILL BACKGROUND & COMPACT CLOSER SPACING
   ========================================================================== */
.zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link,
.zst-el-element-8871457 ul.premium-nav-menu > li > a,
.zst-el-element-8871457 ul > li > a {
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 6px 5px !important;
    font-size: 13px !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item:hover > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.current-menu-item > a.premium-menu-link,
.zst-el-element-8871457 li.premium-nav-menu-item.current-menu-ancestor > a.premium-menu-link,
.zst-el-element-8871457 ul.premium-nav-menu > li:hover > a,
.zst-el-element-8871457 ul.premium-nav-menu > li > a:hover {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: #ffffff !important;
}

.zst-el-element-8871457 ul.premium-nav-menu {
    gap: 2px !important;
    justify-content: flex-end !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item > a.premium-menu-link i.premium-dropdown-icon {
    margin-left: 3px !important;
    transition: transform 0.2s ease, color 0.2s ease !important;
}

.zst-el-element-8871457 li.premium-nav-menu-item:hover > a.premium-menu-link i.premium-dropdown-icon,
.zst-el-element-8871457 li.premium-nav-menu-item.premium-item-hovered > a.premium-menu-link i.premium-dropdown-icon {
    color: #ffb300 !important;
    transform: rotate(180deg) !important;
}

/* ENSURE SUBMENU DROPDOWNS ARE FULLY VISIBLE OVER CONTENT */
.zst-el-36056,
.zst-el-element-c71ee80,
.zst-el-36056 .zst-el-element-c71ee80,
.zst-el-element-c71ee80 > .zst-el-container,
.zst-el-element-2f4d7d6,
.zst-el-element-8871457,
.zst-el-element-8871457 .premium-nav-menu-container,
.zst-el-element-8871457 ul.premium-nav-menu,
.zst-el-element-8871457 li.premium-nav-menu-item {
    overflow: visible !important;
}

.zst-el-element-8871457 ul.premium-sub-menu {
    z-index: 9999999 !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.6) !important;
}

/* ==========================================================================
   PERFECT FINAL MOBILE FIXES:
   1. 1-LINE CONTACT
   2. FULL TYPOGRAPHY BRANDING & VERTICAL ALIGNMENT (NO SHORTENING)
   3. HERO VIDEO OVERLAY WITH SHARP RECTANGLE CORNERS
   4. INTACT FOOTER STYLES
   ========================================================================== */
@media (max-width: 768px) {
        /* 1. TOPBAR: target ONLY .zst-el-element-ec02cb2, fit 1 line */
    .zst-el-element-42294e3 {
        display: block !important;
        padding: 4px 0 !important;
        background: #061126 !important;
        min-height: auto !important;
        height: auto !important;
    }
    .zst-el-element-42294e3 > .zst-el-container,
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 4px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .zst-el-element-236f61e {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }
    .zst-el-element-ec02cb2 {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }
    .zst-el-element-ec02cb2 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 2px !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-item {
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        font-size: clamp(7px, 2.1vw, 8.5px) !important; letter-spacing: -0.2px !important;
        line-height: 1 !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-item a {
        display: inline-flex !important;
        align-items: center !important;
        font-size: inherit !important;
        color: rgba(255, 255, 255, 0.88) !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-icon {
        font-size: clamp(7.5px, 2.3vw, 9px) !important;
        margin-right: 3px !important;
        color: #f5b324 !important;
        display: inline-flex !important;
        align-items: center !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-text {
        font-size: inherit !important;
        letter-spacing: -0.2px !important;
    }
    .zst-el-element-ec02cb2 .zst-hide-mobile {
        display: inline !important;
    }

    /* FOOTER MOBILE CONTACT & NAVIGATION LAYOUT */
    .zst-el-element-5e855e11 .zst-el-container {
        display: flex !important;
        flex-direction: column !important;
        padding: 24px 16px !important;
        gap: 22px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-5e855e11 .zst-footer-col-title {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #ffffff !important;
        margin-bottom: 12px !important;
        display: flex !important;
        align-items: center !important;
        border-bottom: 2px solid #f5b324 !important;
        padding-bottom: 6px !important;
    }
    .zst-el-element-50796328 {
        width: 100% !important;
    }
    .zst-el-element-50796328 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        white-space: normal !important;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-item {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-icon {
        flex: 0 0 20px !important;
        width: 20px !important;
        margin-top: 2px !important;
        margin-right: 8px !important;
        color: #f5b324 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-text {
        flex: 1 1 auto !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        color: rgba(255, 255, 255, 0.9) !important;
        word-break: break-word !important;
        text-align: left !important;
    }
    .zst-el-element-50796328 a {
        color: #ffffff !important;
        text-decoration: underline !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list li a {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        color: rgba(255, 255, 255, 0.9) !important;
        text-decoration: none !important;
        font-size: 13px !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list li a i {
        color: #f5b324 !important;
        width: 16px !important;
        text-align: center !important;
    }

    /* 2. NAVBAR: DELICATE HEIGHT, NO ORANGE LINE, GENTLE SHADOW */
    .zst-el-element-c71ee80,
    .zst-el-36056 .zst-el-element-c71ee80 {
        position: relative !important;
        z-index: 25 !important;
        background: linear-gradient(180deg, #091a3e 0%, #0d2352 100%) !important;
        border-bottom: none !important;
        padding: 8px 0 !important;
        min-height: 72px !important;
        max-height: none !important;
        height: auto !important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.45) !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container,
    .zst-el-element-c71ee80 .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: auto !important;
        max-height: none !important;
        height: auto !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-f0f2e74 {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-f0f2e74 > .zst-el-widget-wrap,
    .zst-el-element-f0f2e74 .zst-el-widget-wrap,
    .zst-el-element-f0f2e74 .zst-el-widget {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .zst-el-element-2f4d7d6 {
        flex: 0 0 auto !important;
        margin: 0 0 0 8px !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }
    .zst-el-element-2f4d7d6 > .zst-el-widget-wrap,
    .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-f9afbcc,
    .zst-el-element-8871457,
    .zst-el-element-2f4d7d6 .zst-el-element-f9afbcc,
    .zst-el-element-2f4d7d6 .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-7a340c0,
    .zst-el-element-2f4d7d6 .zst-el-element-7a340c0 {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 3. FULL LOGO BRANDING (1:1 MOCKUP) + VERTICAL CENTERING */
    .zst-header-branding-link {
        text-decoration: none !important;
        display: flex !important;
        align-items: center !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-branding {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-emblem {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        max-width: 44px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
        display: block !important;
        filter: drop-shadow(0 2px 4px rgba(0,0,0,0.35)) !important;
        margin: 0 !important;
    }
    .zst-header-text {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        min-width: 0 !important;
        gap: 1px !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-text::after {
        display: none !important;
        content: none !important;
    }
    .zst-header-title {
        font-size: 13.5px !important;
        font-weight: 800 !important;
        color: #ffffff !important;
        letter-spacing: -0.2px !important;
        line-height: 1.15 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 3px rgba(0,0,0,0.5) !important;
    }
    .zst-header-sub {
        display: block !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        color: #ffffff !important;
        letter-spacing: -0.1px !important;
        line-height: 1.15 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    }
    .zst-header-patron {
        display: block !important;
        font-size: 9px !important;
        font-weight: 400 !important;
        font-style: italic !important;
        color: rgba(255, 255, 255, 0.85) !important;
        letter-spacing: -0.1px !important;
        line-height: 1.15 !important;
        margin: 1px 0 0 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        width: 38px !important;
        height: 38px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
        border-radius: 6px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2) !important;
        margin: 0 !important;
        align-self: center !important;
    }

    /* 4. HERO VIDEO: CRISP RECTANGLE & OVERLAY ON VIDEO */
    .zst-mobile-hero-stage {
        position: relative !important;
        width: 100% !important;
        aspect-ratio: 16 / 9 !important;
        min-height: 215px !important;
        border-radius: 0 !important;
        overflow: hidden !important;
        box-shadow: 0 4px 20px rgba(0,0,0,0.35) !important;
        margin-bottom: 14px !important;
        background: #0b1736 !important;
    }
    .zst-mobile-hero-stage .zst-mobile-video-wrap {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        border-radius: 0 !important;
        z-index: 1 !important;
    }
    .zst-mobile-hero-stage .zst-mobile-video-wrap iframe,
    .zst-mobile-hero-stage .zst-mobile-video-wrap video {
        width: 100% !important;
        height: 100% !important;
        border: none !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 0 !important;
    }
    .zst-mobile-video-overlay {
        position: absolute !important;
        inset: 0 !important;
        background: linear-gradient(180deg, rgba(8, 22, 54, 0.25) 0%, rgba(8, 22, 54, 0.85) 100%) !important;
        z-index: 2 !important;
        pointer-events: none !important;
        border-radius: 0 !important;
    }
    .zst-mobile-hero-content-card {
        position: absolute !important;
        inset: 0 !important;
        z-index: 3 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-end !important;
        align-items: flex-start !important;
        padding: 10px 14px !important;
        background: none !important;
        box-shadow: none !important;
        border: none !important;
        pointer-events: auto !important;
    }
    .zst-mobile-hero-content-card .zst-hero-badge {
        font-size: 8px !important;
        padding: 2px 7px !important;
        margin-bottom: 4px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        border-radius: 4px !important;
        background: #f6c343 !important;
        color: #0b1736 !important;
        display: inline-block !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-title {
        font-size: clamp(14px, 4.2vw, 18px) !important;
        font-weight: 900 !important;
        color: #ffffff !important;
        line-height: 1.15 !important;
        margin: 0 0 3px 0 !important;
        text-shadow: 0 2px 8px rgba(0,0,0,0.8) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-subtitle {
        font-size: clamp(9px, 2.7vw, 11px) !important;
        font-weight: 700 !important;
        color: #f6c343 !important;
        line-height: 1.2 !important;
        margin: 0 0 8px 0 !important;
        text-shadow: 0 1px 4px rgba(0,0,0,0.8) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-buttons {
        display: flex !important;
        gap: 6px !important;
        width: 100% !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn {
        flex: 1 1 0 !important;
        padding: 5px 8px !important;
        font-size: 9.5px !important;
        font-weight: 800 !important;
        text-align: center !important;
        border-radius: 4px !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.5) !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn.zst-btn-accent {
        background: #c61a1a !important;
        color: #ffffff !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn.zst-btn-outline {
        background: rgba(11, 23, 54, 0.75) !important;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.8) !important;
        backdrop-filter: blur(4px) !important;
    }
}

@media (max-width: 375px) {
    .zst-header-emblem {
        height: 48px !important;
        max-height: 48px !important;
        max-width: 40px !important;
    }
    .zst-header-title {
        font-size: 12.5px !important;
    }
    .zst-header-sub {
        font-size: 9.5px !important;
    }
    .zst-header-patron {
        font-size: 8.5px !important;
    }
}

/* ==========================================================================
   5. JEDNOSTKA ORGANIZACYJNA MIASTA LESZNA I HERBY W JEDNEJ LINII (MOBILE)
   ========================================================================== */
@media (max-width: 768px) {
    .zst-el-element-8e318b9,
    .zst-el-section.zst-el-element-8e318b9,
    section.zst-el-element-8e318b9 {
        min-height: auto !important;
        height: auto !important;
        padding: 10px 0 !important;
        background: #ffffff !important;
        border-top: 1px solid #e2e8f0 !important;
        border-bottom: 1px solid #e2e8f0 !important;
        display: block !important;
        box-sizing: border-box !important;
    }
    .zst-el-element.zst-el-element-8e318b9 > .zst-el-container,
    .zst-el-element-8e318b9 > .zst-el-container,
    .zst-el-section.zst-el-element-8e318b9 > .zst-el-container {
        min-height: auto !important;
        height: auto !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 14px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        gap: 8px !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-410b647 {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-410b647 .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-jednostka-box {
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
        text-align: left !important;
        width: 100% !important;
    }
    .zst-el-element-8e318b9 .zst-jednostka-l1,
    .zst-el-element-8e318b9 .zst-jednostka-l2 {
        font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
        font-size: clamp(11.5px, 3.4vw, 13.5px) !important;
        font-weight: 800 !important;
        color: #0b1736 !important;
        letter-spacing: 0.25px !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        text-transform: uppercase !important;
        display: block !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-d16c92b,
    .zst-el-element-8e318b9 .zst-el-element-d16c92b .zst-el-widget-container {
        font-size: clamp(11.5px, 3.4vw, 13.5px) !important;
        font-weight: 800 !important;
        color: #0b1736 !important;
        line-height: 1.25 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.25px !important;
        text-align: left !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-170e590,
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-897a26d {
        flex: 0 0 44px !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-170e590 .zst-el-widget-wrap,
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-897a26d .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-71b0351,
    .zst-el-element-8e318b9 .zst-el-element-074f7c5 {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-170e590 .zst-el-widget-container img,
    .zst-el-element-8e318b9 .zst-el-element-897a26d .zst-el-widget-container img,
    .zst-el-element-8e318b9 .zst-el-element-71b0351 img,
    .zst-el-element-8e318b9 .zst-el-element-074f7c5 img {
        height: 38px !important;
        max-height: 38px !important;
        width: auto !important;
        max-width: 42px !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-6622188 {
        display: none !important;
    }
}

/* ==========================================================================
   KOMPLEKSOWA OPTYMALIZACJA MOBILNA: NAGŁÓWKI WPISÓW, DOKUMENTY ORAZ PDF
   ========================================================================== */

/* 1. Poprawka czytelności przycisków wydruku na desktop */
@media (min-width: 769px) {
    .zst-btn-print,
    .zst-btn-print-fixed {
        background: #ffffff !important;
        color: #1e293b !important;
        border: 1px solid #cbd5e1 !important;
        font-weight: 600 !important;
    }
    .zst-btn-print i,
    .zst-btn-print svg,
    .zst-btn-print-fixed i,
    .zst-btn-print-fixed svg {
        color: #0b1e48 !important;
    }
    .zst-btn-print:hover,
    .zst-btn-print-fixed:hover {
        background: #f1f5f9 !important;
        color: #0b1e48 !important;
        border-color: #94a3b8 !important;
    }
}

/* 2. Zoptymalizowana, estetyczna i kompaktowa część informacyjna na mobile */
@media (max-width: 768px) {
    .zst-single-content-container,
    .site-main.zst-post-main {
        padding: 0 10px !important;
    }

    /* Karta nagłówka wpisu / dokumentu - zredukowana wysokość, elegancka ramka */
    .zst-post-header-card,
    .zst-page-header-card {
        padding: 10px 12px 12px 12px !important;
        margin: 6px 0 12px 0 !important;
        border-radius: 10px !important;
        border: 1px solid #e2e8f0 !important;
        border-left: 4px solid #0b1e48 !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(11, 30, 72, 0.05) !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-crumbs {
        font-size: 11px !important;
        margin-bottom: 4px !important;
        color: #64748b !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }
    .zst-crumbs a {
        color: #64748b !important;
        text-decoration: none !important;
    }

    .zst-el-heading-title.zst-el-size-default,
    .zst-post-header-card h1,
    .zst-post-header-card .zst-el-heading-title,
    .zst-page-header-card h1,
    .zst-page-header-card .zst-el-heading-title {
        font-size: clamp(17px, 4.8vw, 20px) !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #0b1736 !important;
        margin: 2px 0 6px 0 !important;
    }

    .zst-meta-row-wrap,
    .zst-page-title-row {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 6px !important;
        margin-top: 4px !important;
        flex-wrap: wrap !important;
    }

    .zst-meta {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        font-size: 11px !important;
        color: #64748b !important;
    }

    .zst-tag {
        font-size: 9.5px !important;
        font-weight: 700 !important;
        padding: 2px 7px !important;
        border-radius: 4px !important;
        letter-spacing: 0.2px !important;
        background: #0b1e48 !important;
        color: #ffffff !important;
        text-decoration: none !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 3px !important;
        white-space: nowrap !important;
    }

    .zst-date {
        font-size: 10.5px !important;
        color: #64748b !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 3px !important;
        white-space: nowrap !important;
    }

    /* CAŁKOWICIE UKRYWAMY PRZYCISKI WYDRUKU I ZAPISU DO PDF NA TELEFONIE */
    .zst-btn-print,
    .zst-btn-print-fixed,
    .zst-btn-pdf,
    .zst-btn-pdf-fixed,
    .zst-actions .zst-btn-print,
    .zst-actions .zst-btn-print-fixed,
    .zst-actions .zst-btn-pdf,
    .zst-actions .zst-btn-pdf-fixed {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .zst-actions {
        width: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 4px !important;
    }

    .zst-action-btn.zst-btn-fb {
        padding: 2px 8px !important;
        font-size: 10.5px !important;
        border-radius: 4px !important;
        height: 22px !important;
        line-height: 1 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        background: #1877f2 !important;
        color: #ffffff !important;
        border: none !important;
        font-weight: 600 !important;
    }

    .zst-read,
    .zst-meta .zst-dot:last-of-type {
        display: none !important;
    }

    /* 3. Szeroki i nowoczesny blok dokumentu i podglądu PDF na mobile */
    .zst-wpdm-wrapper {
        margin: 8px auto 16px auto !important;
        padding: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-wpdm-card {
        padding: 8px 8px 14px 8px !important;
        border-radius: 12px !important;
        box-shadow: 0 2px 12px rgba(11, 30, 72, 0.05) !important;
        border: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        width: 100% !important;
    }

    .zst-wpdm-viewer-frame {
        border-radius: 8px !important;
        overflow: hidden !important;
        margin-bottom: 8px !important;
        width: 100% !important;
        background: #f8fafc !important;
    }

    .zst-wpdm-viewer-frame iframe {
        height: clamp(380px, 58vh, 500px) !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 8px !important;
        margin-bottom: 0 !important;
        display: block !important;
        width: 100% !important;
    }

    /* Pasek akcji pobierania i metadanych pod PDF */
    .zst-wpdm-bottom-bar {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid #f1f5f9 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-wpdm-download-bar {
        width: 100% !important;
        margin: 0 !important;
    }

    .zst-wpdm-download-bar a.wpdm-download-link {
        width: 100% !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 12px 18px !important;
        font-size: 14.5px !important;
        font-weight: 700 !important;
        border-radius: 8px !important;
        background: linear-gradient(135deg, #0b1e48 0%, #153b82 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 12px rgba(11, 30, 72, 0.18) !important;
        text-align: center !important;
        letter-spacing: 0.3px !important;
    }

    .zst-wpdm-meta-row {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .zst-wpdm-badge {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        background: #f8fafc !important;
        color: #475569 !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        padding: 5px 9px !important;
        border-radius: 6px !important;
        border: 1px solid #e2e8f0 !important;
    }

    .zst-wpdm-badge.zst-badge-pdf {
        background: #fef2f2 !important;
        color: #b91c1c !important;
        border-color: #fecaca !important;
    }

    /* Przycisk powrotu */
    .zst-back-news-wrap {
        margin: 14px 0 6px 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .zst-back-news-btn {
        display: inline-flex !important;
        width: 100% !important;
        justify-content: center !important;
        align-items: center !important;
        box-sizing: border-box !important;
        padding: 10px 14px !important;
        font-size: 13px !important;
        border-radius: 8px !important;
    }
}

/* Gwarancja jednej linii dla numeru telefonu w stopce na telefonach */
.zst-el-element-50796328 .zst-el-icon-list-item a[href^="tel:"],
.zst-el-element-50796328 .zst-footer-phone-item,
.zst-el-element-50796328 .zst-footer-phone-item .zst-el-icon-list-text,
.zst-footer-phone-link {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    display: inline-block !important;
}

@media (max-width: 768px) {
    .zst-el-element-50796328 .zst-el-icon-list-item:nth-child(2) .zst-el-icon-list-text,
    .zst-el-element-50796328 .zst-footer-phone-item .zst-el-icon-list-text {
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
    }
}

/* Header logo proportion enhancement - matches school name height / slightly above */
@media (min-width: 769px) {
    .zst-el-element-c71ee80 .zst-el-widget-image img.zst-header-emblem,
    .zst-el-element-c71ee80 img.zst-header-emblem,
    .zst-header-branding img.zst-header-emblem,
    .zst-header-emblem {
        height: 76px !important;
        max-height: 76px !important;
        width: auto !important;
        max-width: 68px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
    }
    .zst-header-branding {
        align-items: center !important;
    }
}
@media (max-width: 768px) {
    .zst-el-element-c71ee80 .zst-el-widget-image img.zst-header-emblem,
    .zst-el-element-c71ee80 img.zst-header-emblem,
    .zst-header-branding img.zst-header-emblem,
    .zst-header-emblem {
        height: 62px !important;
        max-height: 62px !important;
        width: auto !important;
        max-width: 53px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
    }
    .zst-header-branding {
        align-items: center !important;
    }
}

/* ==========================================================================
   PERFECT RESPONSIVE FULL CALENDAR (/plan-roku-szkolnego/)
   ========================================================================== */
@media (min-width: 769px) {
    .zst-wk-short { display: none !important; }
    .zst-wk-full { display: inline !important; }
}

@media (max-width: 768px) {
    .zst-wk-full { display: none !important; }
    .zst-wk-short { display: inline !important; font-weight: 800 !important; }

    .zst-calendar-app-wrapper {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    /* 1. Compact Modern Download Banner */
    .zst-cal-download-banner {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 12px 14px !important;
        gap: 10px !important;
        border-radius: 12px !important;
        margin-bottom: 12px !important;
        height: auto !important;
    }
    .zst-cal-banner-left {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
    .zst-cal-banner-icon {
        font-size: 24px !important;
        flex: 0 0 auto !important;
    }
    .zst-cal-banner-title {
        font-size: 13.5px !important;
        margin: 0 0 2px 0 !important;
        line-height: 1.3 !important;
    }
    .zst-cal-banner-subtitle {
        font-size: 11px !important;
        margin: 0 !important;
        opacity: 0.85 !important;
    }
    .zst-cal-pdf-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 8px 12px !important;
        font-size: 12.5px !important;
        box-sizing: border-box !important;
        border-radius: 8px !important;
    }

    /* 2. Month Selector Tabs */
    .zst-month-tabs {
        gap: 6px !important;
        padding: 4px 0 10px !important;
        margin-bottom: 10px !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }
    .zst-month-tabs::-webkit-scrollbar {
        display: none !important;
    }
    .zst-m-btn {
        padding: 6px 12px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
        border-radius: 8px !important;
        flex: 0 0 auto !important;
    }
    .zst-m-badge {
        font-size: 10px !important;
        padding: 1px 5px !important;
        margin-left: 4px !important;
    }

    /* 3. Card Box & Month View (Eliminate 480px overflow) */
    .zst-calendar-card-box {
        padding: 14px 10px !important;
        border-radius: 12px !important;
        overflow-x: hidden !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-month-view {
        min-width: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 4. Month Header */
    .zst-cal-header {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        margin-bottom: 12px !important;
        padding-bottom: 10px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        gap: 8px !important;
    }
    .zst-cal-header-left {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 4px !important;
    }
    .zst-cal-title {
        font-size: 16px !important;
        font-weight: 800 !important;
        margin: 0 !important;
        padding-left: 8px !important;
        line-height: 1.2 !important;
        border-left: 3px solid #132c6b !important;
        color: #0f172a !important;
    }
    .zst-cal-tag {
        font-size: 10px !important;
        padding: 2px 7px !important;
        border-radius: 4px !important;
        white-space: normal !important;
        line-height: 1.25 !important;
    }
    .zst-cal-nav-buttons {
        display: flex !important;
        gap: 4px !important;
        align-self: flex-start !important;
    }
    .zst-nav-btn {
        width: 30px !important;
        height: 30px !important;
        font-size: 11px !important;
        border-radius: 6px !important;
    }

    /* 5. Weekdays (7 columns fit 100% width) */
    .zst-weekdays-row {
        display: grid !important;
        grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
        gap: 3px !important;
        width: 100% !important;
        margin-bottom: 5px !important;
        box-sizing: border-box !important;
    }
    .zst-weekdays-row > div {
        font-size: 11px !important;
        font-weight: 800 !important;
        padding: 6px 1px !important;
        text-align: center !important;
        background: #f8fafc !important;
        border-radius: 4px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        color: #475569 !important;
        line-height: 1.2 !important;
    }
    .zst-weekdays-row .zst-wk-sun {
        color: #dc2626 !important;
        background: #fef2f2 !important;
    }

    /* 6. Days Grid (7 columns fit 100% width) */
    .zst-days-grid {
        display: grid !important;
        grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
        gap: 3px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-cal-cell {
        min-height: 52px !important;
        padding: 4px 2px !important;
        border-radius: 6px !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        border: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
    }
    .zst-day-num {
        font-size: 11.5px !important;
        font-weight: 800 !important;
        margin-bottom: 2px !important;
        text-align: center !important;
        line-height: 1 !important;
    }
    .zst-cal-weekend {
        background: #fff8f8 !important;
        border-color: #fee2e2 !important;
    }
    .zst-cal-weekend .zst-day-num {
        color: #dc2626 !important;
    }
    .zst-cal-dim {
        background: #f8fafc !important;
        opacity: 0.45 !important;
    }
    .zst-event-tag {
        font-size: 7.5px !important;
        line-height: 1.1 !important;
        padding: 1.5px 2px !important;
        border-radius: 3px !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-weight: 700 !important;
        margin-top: auto !important;
    }

    /* 7. Agenda / Wykaz oficjalnych terminów */
    .zst-month-agenda {
        margin-top: 16px !important;
        padding-top: 14px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-agenda-header {
        font-size: 11.5px !important;
        letter-spacing: 0.02em !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
        white-space: normal !important;
        word-break: break-word !important;
    }
    .zst-agenda-row {
        flex-direction: column !important;
        gap: 2px !important;
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
    .zst-agenda-date {
        min-width: 0 !important;
        font-size: 11.5px !important;
        color: #132c6b !important;
    }
    .zst-agenda-desc {
        font-size: 11.5px !important;
        line-height: 1.35 !important;
    }

    /* 8. Legend */
    .zst-calendar-legend {
        gap: 6px 12px !important;
        margin-top: 14px !important;
        padding-top: 10px !important;
        font-size: 10.5px !important;
    }
    .zst-leg-item {
        font-size: 10.5px !important;
    }
}

/* ==========================================================================
   HARMONIZED CALENDAR DOWNLOAD BANNER (Spójna biała karta z granatem)
   ========================================================================== */
.zst-page-content-wrap .zst-cal-download-banner,
.zst-cal-download-banner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #132c6b !important;
    padding: 16px 22px !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 16px rgba(19, 44, 107, 0.04) !important;
    margin-bottom: 20px !important;
    color: #0f172a !important;
}

.zst-cal-download-banner .zst-cal-banner-left {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.zst-cal-download-banner .zst-cal-banner-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #1e40af !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    flex: 0 0 auto !important;
}

.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-title,
.zst-cal-download-banner .zst-cal-banner-title {
    margin: 0 0 2px 0 !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-subtitle,
.zst-cal-download-banner .zst-cal-banner-subtitle {
    margin: 0 !important;
    font-size: 12.5px !important;
    color: #64748b !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn,
.zst-cal-download-banner a.zst-cal-pdf-btn,
.zst-cal-pdf-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #132c6b !important;
    color: #ffffff !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;
    transition: all 0.2s ease !important;
    border: none !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn:hover,
.zst-cal-download-banner a.zst-cal-pdf-btn:hover {
    background: #0b1a40 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.3) !important;
}

@media (max-width: 768px) {
    .zst-page-content-wrap .zst-cal-download-banner,
    .zst-cal-download-banner {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 14px !important;
        gap: 12px !important;
        margin-bottom: 12px !important;
    }
    .zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn,
    .zst-cal-download-banner a.zst-cal-pdf-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 9px 14px !important;
        font-size: 13px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   CLEAN SINGLE PDF DOWNLOAD BUTTON (BEZ BANERA)
   ========================================================================== */
.zst-cal-download-wrap {
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 0 16px 0 !important;
    width: 100% !important;
}

.zst-page-content-wrap a.zst-cal-pdf-btn,
.zst-cal-download-wrap a.zst-cal-pdf-btn,
a.zst-cal-pdf-btn,
.zst-cal-pdf-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #132c6b !important;
    color: #ffffff !important;
    padding: 10px 22px !important;
    border-radius: 8px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;
    transition: all 0.2s ease !important;
    border: none !important;
    width: auto !important;
}

.zst-page-content-wrap a.zst-cal-pdf-btn:hover,
.zst-cal-download-wrap a.zst-cal-pdf-btn:hover,
a.zst-cal-pdf-btn:hover,
.zst-cal-pdf-btn:hover {
    background: #0b1a40 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.3) !important;
}

.zst-cal-pdf-btn i {
    color: #ffffff !important;
    font-size: 15px !important;
}

@media (max-width: 768px) {
    .zst-cal-download-wrap {
        margin: 0 0 12px 0 !important;
    }
    .zst-page-content-wrap a.zst-cal-pdf-btn,
    .zst-cal-download-wrap a.zst-cal-pdf-btn,
    a.zst-cal-pdf-btn,
    .zst-cal-pdf-btn {
        width: 100% !important;
        padding: 11px 16px !important;
        font-size: 13.5px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   STOPKA MOBILE: ZMNIEJSZENIE ODSTĘPÓW TOP/BOTTOM I USUNIĘCIE PODKREŚLENIA
   ========================================================================== */
/* Usunięcie podkreślenia z numeru telefonu w stopce */
.zst-footer-phone-link,
a.zst-footer-phone-link,
.zst-el-element-50796328 a[href^="tel"],
.zst-el-element-50796328 a {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.zst-footer-phone-link:hover,
a.zst-footer-phone-link:hover,
.zst-el-element-50796328 a[href^="tel"]:hover {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: none !important;
}

@media (max-width: 767px) {
    /* Zmniejszenie górnego i dolnego odstępu (padding) w sekcji stopki */
    .zst-el-element-5e855e11 {
        padding-top: 24px !important;
        padding-bottom: 20px !important;
    }

    .zst-el-element-5e855e11 .zst-el-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Zmniejszenie odstępów między kolumnami stopki */
    .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {
        width: 100% !important;
        padding: 0 !important;
        margin-bottom: 20px !important;
    }

    /* Ostatnia kolumna (Informacje prawne) nie generuje nadmiarowego odstępu na dole */
    .zst-el-element-5e855e11 .zst-el-column.zst-el-element-737b0917 {
        margin-bottom: 0 !important;
    }

    /* Dopasowanie nagłówków sekcji stopki */
    .zst-footer-col-title {
        font-size: 15px !important;
        margin: 0 0 12px 0 !important;
        padding-bottom: 8px !important;
    }

    /* Kompaktowe odstępy listy danych kontaktowych */
    .zst-el-element-50796328 .zst-el-icon-list-item {
        margin-bottom: 5px !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
    }

    /* Kompaktowe odstępy linków informacji prawnych */
    .zst-footer-links-list li {
        margin-bottom: 7px !important;
    }

    .zst-footer-links-list a {
        padding: 2px 0 !important;
        font-size: 13px !important;
    }

    /* Przycisk powrotu na górę */
    .zst-footer-top-link {
        margin-top: 14px !important;
        padding: 7px 14px !important;
        font-size: 12px !important;
    }
}


/* Source: livepl-site-facelift.css */
/* ==========================================================================

   ZST LESZNO - PROFESJONALNY LIFTING WIZUALNY BEZ ZMIANY UKŁADU

   100% zachowane oryginalne sekcje, tła, banery i tożsamość szkoły!

   Dokładnie 6 wpisów w siatce aktualności + Nowoczesny pasek filtrów ze strzałkami

   Zbalansowana 3-kolumnowa stopka bez pustych przestrzeni

   ========================================================================== */

/* Płynne przewijanie i ochrona przed poziomym paskiem */

html, body {

  scroll-behavior: smooth;

  -webkit-font-smoothing: antialiased;

  overflow-x: hidden !important;

  max-width: 100vw !important;

  width: 100% !important;

  position: relative !important;

}

.zst-el-section,

.zst-el-element-521df90,

.zst-el-element-bc1878c,

.pp-post-filters-container,

.zst-el-element-a7cfc96 {

  max-width: 100% !important;

  box-sizing: border-box !important;

}

/* 1. Header & Menu */

.zst-el-36056,

.zst-el-36056 .zst-el-container,

.zst-el-36056 .zst-el-row,

.zst-el-36056 .zst-el-column,

.zst-el-36056 .zst-el-widget-wrap,

.zst-el-36056 .zst-el-widget,

.zst-el-36056 .zst-el-widget-container,

.zst-el-36056 .premium-nav-widget-container,

.zst-el-36056 .premium-ver-inner-container,

.zst-el-36056 .premium-nav-menu-container {

  overflow: visible !important;

}

.zst-el-36056 {

  position: relative !important;

  z-index: 999999 !important;

  background: linear-gradient(180deg, #09173a 0%, #10265c 100%) !important;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;

  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;

}

.zst-el-36056 .zst-el-container {

  width: 100% !important;

  padding-left: clamp(20px, 3.5vw, 50px) !important;

  padding-right: clamp(20px, 3.5vw, 50px) !important;

  box-sizing: border-box !important;

}

/* Górna belka informacyjna (Top Bar) oraz Nagłówek główny (Header)

   Dopasowanie do rozdzielczości:

   - Zwykłe monitory i laptopy (< 1920px): od samej lewej krawędzi ekranu (szerokość 100% z bezpiecznym marginesem 24px)

   - Bardzo szerokie monitory (1920px+, 2560px+, 4K): dopasowane do wyśrodkowanej siatki treści (1380px / 1560px) */

.zst-el-element-42294e3 .zst-el-container {

  display: flex !important;

  justify-content: space-between !important;

  align-items: center !important;

}

@media (max-width: 1919px) and (min-width: 1025px) {

  .zst-el-element-42294e3 .zst-el-container,

  .zst-el-element-c71ee80 .zst-el-container {

    max-width: 100% !important;

    width: 100% !important;

    margin-left: 0 !important;

    margin-right: 0 !important;

    padding-left: 24px !important;

    padding-right: 24px !important;

    box-sizing: border-box !important;

  }

}

@media (max-width: 1024px) {

  .zst-el-element-42294e3 .zst-el-container {

    max-width: 100% !important;

    width: 100% !important;

    padding-left: 16px !important;

    padding-right: 16px !important;

    box-sizing: border-box !important;

  }

}

@media (min-width: 1920px) {

  .zst-el-element-42294e3 .zst-el-container,

  .zst-el-element-c71ee80 .zst-el-container {

    max-width: 1380px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 15px !important;

    padding-right: 15px !important;

    box-sizing: border-box !important;

  }

}

@media (min-width: 2560px) {

  .zst-el-element-42294e3 .zst-el-container,

  .zst-el-element-c71ee80 .zst-el-container {

    max-width: 1560px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 15px !important;

    padding-right: 15px !important;

    box-sizing: border-box !important;

  }

}

.zst-el-element-e749f82 {

  width: auto !important;

  flex: 1 1 auto !important;

}

.zst-el-element-236f61e {

  width: auto !important;

  flex: 0 0 auto !important;

}

.zst-el-element-236f61e .zst-el-icon-list-items {

  justify-content: flex-end !important;

}

/* Główny pasek menu: Logo po lewej, Menu po prawej (z zachowaniem zdrowego marginesu) */

@media (min-width: 1025px) {

  .zst-el-element-c71ee80 .zst-el-container {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    flex-wrap: nowrap !important;

  }

  .zst-el-element-f0f2e74 {

    width: auto !important;

    flex: 0 0 auto !important;

  }

  .zst-el-element-f0f2e74 img:not(.zst-header-emblem) {

    max-width: 100% !important;

    height: auto !important;

  }

  .zst-el-element-2f4d7d6 {

    width: auto !important;

    flex: 1 1 auto !important;

    display: flex !important;

    justify-content: flex-end !important;

  }

  .zst-el-element-2f4d7d6 .premium-nav-widget-container,

  .zst-el-element-2f4d7d6 .premium-nav-menu-container,

  .zst-el-element-2f4d7d6 .premium-nav-menu-container > ul {

    display: flex !important;

    justify-content: flex-end !important;

    margin-left: auto !important;

  }

  .zst-el-element-8871457 .premium-nav-menu-container > ul {

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    white-space: nowrap !important;

  }

}

/* === NOWY BRANDING SZKOŁY W NAGŁÓWKU === */

.zst-header-branding-link {

  text-decoration: none !important;

  display: inline-flex !important;

  align-items: center !important;

  padding: 4px 0 !important;

}

.zst-header-branding {

  display: flex !important;

  align-items: center !important;

  gap: 16px !important;

}

.zst-header-emblem {

  height: 88px !important;

  width: auto !important;

  max-width: 78px !important;

  object-fit: contain !important;

  flex-shrink: 0 !important;

  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.35)) !important;

  transition: none !important;

}

.zst-header-branding-link:hover .zst-header-emblem {

  transform: none !important;

}

.zst-header-text {

  display: flex !important;

  flex-direction: column !important;

  justify-content: center !important;

  text-align: left !important;

  line-height: 1.22 !important;

}

.zst-header-title {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 17.5px !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  letter-spacing: 0.2px !important;

  margin-bottom: 2px !important;

  white-space: nowrap !important;

}

.zst-header-sub {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 13.5px !important;

  font-weight: 600 !important;

  color: rgba(255, 255, 255, 0.95) !important;

  white-space: nowrap !important;

}

.zst-header-patron {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 11.5px !important;

  font-weight: 400 !important;

  color: rgba(255, 255, 255, 0.82) !important;

  letter-spacing: 0.2px !important;

  margin-top: 2px !important;

  white-space: nowrap !important;

  font-style: italic !important;

}

@media (max-width: 1280px) and (min-width: 1025px) {

  .zst-header-emblem { height: 76px !important; max-width: 68px !important; }

  .zst-header-title { font-size: 15.5px !important; }

  .zst-header-sub { font-size: 12px !important; }

  .zst-header-patron { font-size: 10.5px !important; }

  .zst-header-branding { gap: 12px !important; }

}

@media (max-width: 1024px) {

  .zst-el-element-c71ee80 .zst-el-container {

    display: flex !important;

    flex-direction: row !important;

    justify-content: space-between !important;

    align-items: center !important;

    padding: 8px 16px !important;

    box-sizing: border-box !important;

    width: 100% !important;

    max-width: 100vw !important;

  }

  .zst-el-element-f0f2e74 {

    width: auto !important;

    max-width: 80% !important;

    flex: 0 1 auto !important;

  }

  .zst-el-element-f0f2e74 .zst-el-widget-image {

    margin: 0 !important;

  }

  .zst-header-emblem {

    height: 58px !important;

    max-width: 52px !important;

  }

  .zst-header-branding {

    gap: 10px !important;

  }

  .zst-header-title {

    font-size: 13.5px !important;

  }

  .zst-header-sub {

    font-size: 10.5px !important;

  }

  .zst-header-patron {

    font-size: 9.5px !important;

    margin-top: 1px !important;

  }

  .zst-el-element-2f4d7d6 {

    width: auto !important;

    flex: 0 0 auto !important;

  }

  .zst-el-element-f9afbcc {

    width: auto !important;

  }

  .zst-el-element-f9afbcc .premium-nav-widget-container {

    width: auto !important;

  }

  .zst-el-element-f9afbcc .premium-hamburger-toggle {

    width: 44px !important;

    height: 44px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    background: rgba(255, 255, 255, 0.12) !important;

    border-radius: 8px !important;

    cursor: pointer !important;

  }

  .zst-el-element-f9afbcc .premium-hamburger-toggle i {

    font-size: 22px !important;

    color: #ffffff !important;

    margin: 0 !important;

  }

  .zst-el-element-f9afbcc .premium-nav-menu-container:not(.open) {

    display: none !important;

  }

  /* Usability and comfort for mobile navigation */

  .zst-el-element-f9afbcc .premium-mobile-menu-container {

    max-height: 82vh !important;

    overflow-y: auto !important;

    -webkit-overflow-scrolling: touch !important;

    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45) !important;

    border-bottom: 2px solid rgba(255, 255, 255, 0.15) !important;

  }

  .premium-mobile-menu-container .premium-menu-link {

    font-size: 15px !important;

    padding: 12px 16px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    touch-action: manipulation !important;

    -webkit-tap-highlight-color: rgba(255, 255, 255, 0.1) !important;

  }

  .premium-mobile-menu-container .premium-sub-menu {

    background: rgba(10, 25, 60, 0.98) !important;

    border-left: 3px solid #2563eb !important;

    margin-left: 12px !important;

    margin-right: 12px !important;

    margin-top: 4px !important;

    margin-bottom: 8px !important;

    border-radius: 8px !important;

    padding: 6px 0 !important;

  }

  .premium-mobile-menu-container .premium-sub-menu .premium-sub-menu-link {

    font-size: 13.5px !important;

    padding: 11px 16px !important;

    color: #e2e8f0 !important;

    display: block !important;

    touch-action: manipulation !important;

    -webkit-tap-highlight-color: rgba(255, 255, 255, 0.15) !important;

  }

  .premium-mobile-menu-container .premium-dropdown-icon {

    font-size: 16px !important;

    padding: 6px 10px !important;

    transition: transform 0.25s ease !important;

  }

}

@media (max-width: 480px) {

  .zst-header-emblem {

    height: 52px !important;

    max-width: 46px !important;

  }

  .zst-header-branding {

    gap: 8px !important;

  }

  .zst-header-title {

    font-size: 12px !important;

  }

  .zst-header-sub {

    font-size: 9.5px !important;

  }

  .zst-header-patron {

    font-size: 8.5px !important;

  }

}

/* Ukrycie sekcji powielających się (stary pasek BIP) */

.zst-el-element-7d18e5d2 {

  display: none !important;

}

.premium-nav-menu .premium-menu-link {

  transition: all 0.2s ease !important;

  border-radius: 0 !important;

  font-weight: 600 !important;

  letter-spacing: 0.1px !important;

  white-space: nowrap !important;

}

.premium-nav-menu .premium-menu-link:hover {
  background: transparent !important;
  color: #ffffff !important;
}

@media (max-width: 1366px) and (min-width: 1025px) {

  .premium-nav-menu .premium-menu-link {

    padding: 8px 6px !important;

    font-size: 12.5px !important;

  }

}

.premium-nav-menu .premium-sub-menu {

  border-radius: 10px !important;

  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.4) !important;

  border: 1px solid rgba(255, 255, 255, 0.15) !important;

  padding: 8px !important;

  background: #0d1e47 !important;

  z-index: 999999 !important;

  overflow: visible !important;

}

.premium-nav-menu .premium-sub-menu .premium-sub-menu-link {

  border-radius: 0 !important;

  transition: background 0.15s ease, padding-left 0.15s ease !important;

  color: #f1f5f9 !important;

  font-size: 13px !important;

  padding: 8px 12px !important;

}

.premium-nav-menu .premium-sub-menu .premium-sub-menu-link:hover {

  background: rgba(255, 255, 255, 0.15) !important;

  color: #ffffff !important;

  padding-left: 15px !important;

}

.premium-nav-menu .premium-nav-menu-item:nth-last-child(-n+3) .premium-sub-menu {

  left: auto !important;

  right: 0 !important;

}

/* 2. Hero Section - uniwersalna baza dla każdego typu tła (pojedyncze zdjęcie, slider, film) */

.zst-el-element-3abdd9df {

  margin-top: 0 !important;

  background-color: #0b1736 !important;

  position: relative !important;

  overflow: hidden !important;

}

/* Zwykłe monitory i laptopy (< 1920px): tło od samej lewej krawędzi ekranu */

.zst-el-element-3abdd9df,

.zst-el-element-3abdd9df .zst-el-background-slideshow__slide__image,

.zst-el-element-3abdd9df .zst-el-motion-effects-element,

.zst-el-element-3abdd9df > .zst-el-background-overlay {

  background-position: left center !important;

  background-size: cover !important;

  background-repeat: no-repeat !important;

  background-color: #0b1736 !important;

}

/* Szerokie i bardzo szerokie monitory (1920px+, 2560px+, 4K):

   dopasowana elegancka pusta przestrzeń z lewej strony, by grafika była blisko treści */

@media (min-width: 1920px) {

  .zst-el-element-3abdd9df,

  .zst-el-element-3abdd9df .zst-el-background-slideshow__slide__image,

  .zst-el-element-3abdd9df .zst-el-motion-effects-element {

    background-size: auto 100% !important;

    background-position: calc((100vw - 1380px) / 2) center !important;

    background-repeat: no-repeat !important;

  }

}

@media (min-width: 2560px) {

  .zst-el-element-3abdd9df,

  .zst-el-element-3abdd9df .zst-el-background-slideshow__slide__image,

  .zst-el-element-3abdd9df .zst-el-motion-effects-element {

    background-size: auto 100% !important;

    background-position: calc((100vw - 1560px) / 2) center !important;

    background-repeat: no-repeat !important;

  }

}

/* Pełne wsparcie dla wideo w tle (HTML5 wideo lub osadzenie YouTube / Vimeo) */

.zst-el-element-3abdd9df .zst-el-background-video-container {

  position: absolute !important;

  top: 0 !important;

  left: 0 !important;

  width: 100% !important;

  height: 100% !important;

  overflow: hidden !important;

  z-index: 0 !important;

  pointer-events: none !important;

}

.zst-el-element-3abdd9df .zst-el-background-video-hosted,

.zst-el-element-3abdd9df .zst-el-background-video-container video,

.zst-el-element-3abdd9df .zst-el-background-video-embed iframe {

  position: absolute !important;

  top: 50% !important;

  left: 0 !important;

  transform: translateY(-50%) !important;

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  object-position: left center !important;

}

@media (min-width: 1920px) {

  .zst-el-element-3abdd9df .zst-el-background-video-hosted,

  .zst-el-element-3abdd9df .zst-el-background-video-container video {

    left: calc((100vw - 1380px) / 2) !important;

    width: 1380px !important;

    max-width: 100% !important;

  }

}

@media (min-width: 2560px) {

  .zst-el-element-3abdd9df .zst-el-background-video-hosted,

  .zst-el-element-3abdd9df .zst-el-background-video-container video {

    left: calc((100vw - 1560px) / 2) !important;

    width: 1560px !important;

    max-width: 100% !important;

  }

}

/* Przyciski w kolumnie bocznej hero */

.zst-el-element-1d6ae1e .zst-el-button,

.zst-el-element-1b54ae3 .zst-el-button,

.zst-el-element-1145caa .zst-el-button {

  padding: 9px 14px !important;

  font-size: 12px !important;

  border-radius: 8px !important;

  margin-top: 6px !important;

  box-shadow: 0 3px 8px rgba(0,0,0,0.1) !important;

  transition: transform 0.2s ease, box-shadow 0.2s ease !important;

  display: block !important;

  text-align: center !important;

}

.zst-el-element-1d6ae1e .zst-el-button:hover,

.zst-el-element-1b54ae3 .zst-el-button:hover,

.zst-el-element-1145caa .zst-el-button:hover {

  transform: translateY(-2px) !important;

  box-shadow: 0 6px 16px rgba(0,0,0,0.2) !important;

}

/* Szmaragdowy Guzik */

.zst-el-element-d7f8901 img {

  border-radius: 8px !important;

  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;

  transition: none !important;

}

.zst-el-element-d7f8901:hover img {

  transform: scale(1.02) !important;

}

/* 3. ZPE & Vulcan Banners */

.zst-el-element-3aa54026 {

  position: relative !important;

  z-index: 1 !important;

}

.zst-el-element-3aa54026 img {

  border-radius: 10px !important;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease !important;

}

.zst-el-element-3aa54026 img:hover {

  transform: translateY(-2px) !important;

  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;

}

/* 4. Naturalny, jednolity prawy panel boczny (#21397d) - bez sztucznych nakładek psujących baner */

@media (min-width: 768px) {

  .zst-el-element-644d4792 {

    position: relative !important;

    background: #ffffff !important;

    z-index: 5 !important;

    margin-bottom: 0 !important;

  }

  /* Górna część prawego panelu (Szmaragdowy Guzik, Terroryzm, Dokumenty, Dyplomy) */

  .zst-el-element-494eeaaf > .zst-el-widget-wrap,

  .zst-el-element-494eeaaf .zst-el-widget-wrap {

    background: #21397DF5 !important;

    border-radius: 3px 3px 0 0 !important;

  }

  /* Dolna część prawego panelu (AED, certyfikaty itp.) */

  .zst-el-element-e9fa1cd > .zst-el-widget-wrap {

    background: #21397d !important;

    border-radius: 0 0 3px 3px !important;

    padding-bottom: 20px !important;

  }

}

.zst-el-element-e5914ca {

  position: relative !important;

  z-index: 10 !important;

}

/* Usunięcie zaokrągleń w tym fragmencie (Certyfikat i styk kolumny bocznej) */

.zst-el-element-e9fa1cd .zst-el-widget-image img,

.zst-el-element-1cb4553 img {

  border-radius: 0 !important;

  transition: none !important;

}

.zst-el-element-e9fa1cd .zst-el-widget-image:hover img {

  transform: scale(1.02) !important;

}

/* 5. Tagi filtrów aktualności - Nowoczesna belka ze strzałkami i pełnym menu rozwijanym */

.pp-post-filters-container {

  margin-bottom: 24px !important;

  position: relative !important;

  background: #ffffff !important;

  padding: 6px 8px !important;

  border-radius: 30px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;

  display: flex !important;

  align-items: center !important;

  gap: 6px !important;

}

.pp-post-filters-wrap {

  flex: 1 1 auto !important;

  min-width: 0 !important;

  overflow: hidden !important;

  position: relative !important;

  display: flex !important;

  align-items: center !important;

}

.pp-post-filters {

  display: flex !important;

  flex-wrap: nowrap !important;

  overflow-x: auto !important;

  gap: 8px !important;

  padding: 2px !important;

  margin: 0 !important;

  scrollbar-width: none !important;

  -ms-overflow-style: none !important;

  -webkit-overflow-scrolling: touch !important;

  scroll-behavior: smooth !important;

}

.pp-post-filters::-webkit-scrollbar {

  display: none !important;

}

.pp-post-filter {

  flex-shrink: 0 !important;

  white-space: nowrap !important;

  background: #f8fafc !important;

  color: #475569 !important;

  border-radius: 20px !important;

  padding: 7px 16px !important;

  font-size: 13px !important;

  font-weight: 600 !important;

  border: 1px solid #e2e8f0 !important;

  cursor: pointer !important;

  transition: all 0.2s ease !important;

  line-height: 1.4 !important;

  user-select: none !important;

}

.pp-post-filter:hover {

  background: #e2e8f0 !important;

  color: #0f172a !important;

  transform: translateY(-1px) !important;

}

.pp-post-filter.pp-filter-current {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

  box-shadow: 0 3px 10px rgba(19, 44, 107, 0.3) !important;

}

.zst-filter-nav-btn {

  width: 34px !important;

  min-width: 34px !important;

  max-width: 34px !important;

  height: 34px !important;

  padding: 0 !important;

  border-radius: 50% !important;

  background: #f1f5f9 !important;

  border: 1px solid #cbd5e1 !important;

  color: #1e293b !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  cursor: pointer !important;

  font-size: 12px !important;

  transition: all 0.2s ease !important;

  flex-shrink: 0 !important;

  box-shadow: 0 2px 5px rgba(0,0,0,0.05) !important;

}

.zst-filter-nav-btn:hover:not(.disabled) {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

  transform: scale(1.08) !important;

}

.zst-filter-nav-btn.disabled {

  opacity: 0.35 !important;

  cursor: default !important;

  pointer-events: none !important;

}

@media (max-width: 767px) {

  .zst-filter-nav-btn {

    display: none !important;

  }

}

.zst-filter-more-toggle {

  height: 36px !important;

  padding: 0 16px !important;

  border-radius: 20px !important;

  background: #f8fafc !important;

  border: 1px solid #cbd5e1 !important;

  color: #1e293b !important;

  font-size: 13px !important;

  font-weight: 700 !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  cursor: pointer !important;

  transition: all 0.2s ease !important;

  flex-shrink: 0 !important;

  white-space: nowrap !important;

}

@media (max-width: 767px) {

  .zst-filter-more-toggle {

    padding: 0 12px !important;

    font-size: 12px !important;

    height: 32px !important;

  }

  .pp-post-filter {

    padding: 6px 12px !important;

    font-size: 12px !important;

  }

}

.zst-filter-more-toggle:hover, .zst-filter-more-toggle.active {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

  box-shadow: 0 3px 10px rgba(19, 44, 107, 0.25) !important;

}

.zst-filter-dropdown-menu {

  display: none;

  position: absolute !important;

  top: calc(100% + 8px) !important;

  right: 0 !important;

  left: 0 !important;

  background: #ffffff !important;

  border-radius: 16px !important;

  border: 1px solid #cbd5e1 !important;

  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.15) !important;

  padding: 18px !important;

  z-index: 1000 !important;

}

.zst-filter-dropdown-menu.open {

  display: block !important;

  animation: zstFadeDown 0.2s ease-out !important;

}

@keyframes zstFadeDown {

  from { opacity: 0; transform: translateY(-8px); }

  to { opacity: 1; transform: translateY(0); }

}

.zst-dropdown-header {

  display: flex !important;

  justify-content: space-between !important;

  align-items: center !important;

  padding-bottom: 12px !important;

  border-bottom: 1px solid #f1f5f9 !important;

  margin-bottom: 14px !important;

  color: #0f172a !important;

  font-size: 14px !important;

}

.zst-dropdown-close {

  background: none !important;

  border: none !important;

  font-size: 22px !important;

  cursor: pointer !important;

  color: #64748b !important;

  line-height: 1 !important;

}

.zst-dropdown-close:hover {

  color: #0f172a !important;

}

.zst-dropdown-grid {

  display: grid !important;

  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;

  gap: 8px !important;

  max-height: 320px !important;

  overflow-y: auto !important;

  padding-right: 4px !important;

}

.zst-dropdown-item {

  background: #f8fafc !important;

  border: 1px solid #e2e8f0 !important;

  border-radius: 8px !important;

  padding: 8px 12px !important;

  text-align: left !important;

  font-size: 12.5px !important;

  font-weight: 600 !important;

  color: #334155 !important;

  cursor: pointer !important;

  transition: all 0.15s ease !important;

  display: flex !important;

  align-items: center !important;

  white-space: nowrap !important;

  overflow: hidden !important;

  text-overflow: ellipsis !important;

}

.zst-dropdown-item:hover {

  background: #e2e8f0 !important;

  color: #0f172a !important;

  border-color: #cbd5e1 !important;

  transform: none !important;

}

.zst-dropdown-item.active {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

  box-shadow: 0 2px 8px rgba(19, 44, 107, 0.25) !important;

}

@media (max-width: 767px) {

  .zst-dropdown-grid {

    grid-template-columns: 1fr 1fr !important;

    max-height: 260px !important;

  }

  .zst-filter-dropdown-menu {

    padding: 12px !important;

  }

  .zst-dropdown-item {

    font-size: 11px !important;

    padding: 6px 8px !important;

  }

}

/* 6. Siatka aktualności - 6 wpisów - SPÓJNY SYSTEM DLA ZDJĘĆ PIONOWYCH I POZIOMYCH (SREBRNE OBRAMOWANIE) */

.zst-el-widget-pp-posts .pp-post {

  background: #ffffff !important;

  border-radius: 14px !important;

  overflow: hidden !important;

  border: 1px solid #cbd5e1 !important; /* Czyste srebrne obramowanie (silver) */

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

  height: 460px !important;

  box-sizing: border-box !important;

  margin-bottom: 24px !important;

}

.zst-el-widget-pp-posts .pp-post:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 16px 32px rgba(19, 44, 107, 0.16) !important;

  border-color: #94a3b8 !important;

}

/* Wyśrodkowana plakietka daty */

.zst-el-widget-pp-posts .pp-post-event-date {

  position: absolute !important;

  top: 12px !important;

  left: 12px !important;

  bottom: auto !important;

  right: auto !important;

  transform: none !important;

  margin: 0 !important;

  width: 52px !important;

  height: 52px !important;

  min-width: 52px !important;

  min-height: 52px !important;

  padding: 0 !important;

  background: rgba(19, 44, 107, 0.94) !important;

  backdrop-filter: blur(4px) !important;

  color: #ffffff !important;

  border-radius: 10px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: center !important;

  align-items: center !important;

  text-align: center !important;

  line-height: 1 !important;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;

  border: 1px solid rgba(255, 255, 255, 0.25) !important;

  z-index: 10 !important;

  box-sizing: border-box !important;

}

.zst-el-widget-pp-posts .pp-post-event-date .pp-post-day {

  font-size: 18px !important;

  font-weight: 800 !important;

  color: #f5b324 !important;

  order: 1 !important;

  line-height: 1 !important;

  margin: 0 0 3px 0 !important;

  padding: 0 !important;

  display: block !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post-event-date .pp-post-month {

  font-size: 11px !important;

  font-weight: 700 !important;

  text-transform: uppercase !important;

  letter-spacing: 0.8px !important;

  color: #ffffff !important;

  order: 2 !important;

  line-height: 1 !important;

  margin: 0 !important;

  padding: 0 !important;

  display: block !important;

  text-align: center !important;

}

/* === 6A. KARTY Z PIONOWYM ZDJĘCIEM / PLAKATEM (Full-bleed poster + szkliste pole z tekstem) === */

.zst-el-widget-pp-posts .pp-post.zst-card-vertical {

  position: relative !important;

  height: 460px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: flex-end !important;

  overflow: hidden !important;

  border-radius: 14px !important;

  background: #ffffff !important;

  border: 1px solid #cbd5e1 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail {

  position: absolute !important;

  top: 0 !important;

  left: 0 !important;

  right: 0 !important;

  bottom: 0 !important;

  width: 100% !important;

  height: 100% !important;

  z-index: 1 !important;

  border-radius: 14px 14px 0 0 !important;

  margin: 0 !important;

  background: #ffffff !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail a {

  display: block !important;

  width: 100% !important;

  height: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail img {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  object-position: center top !important;

  transition: transform 0.4s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-thumbnail img {

  transform: scale(1.03) !important;

}

/* Półprzezroczyste białe pole z tekstem na tle plakatu (Glassmorphism) */

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-content-wrap {

  position: relative !important;

  z-index: 3 !important;

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, #ffffff 100%) !important;

  backdrop-filter: blur(14px) saturate(160%) !important;

  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;

  border-radius: 16px 16px 0 0 !important;

  border-top: 1px solid rgba(255, 255, 255, 0.9) !important;

  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.12) !important;

  padding: 12px 16px 14px 16px !important;

  margin: 0 !important;

  flex: 0 0 auto !important;

  text-align: center !important;

  transition: all 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-content-wrap {

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.97) 100%) !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title {

  font-size: 14.5px !important;

  font-weight: 700 !important;

  line-height: 1.35 !important;

  min-height: auto !important;

  max-height: 40px !important;

  margin-top: 0 !important;

  margin-bottom: 5px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title a {

  color: #0f172a !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-title a {

  color: #132c6b !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-excerpt {

  font-size: 12px !important;

  line-height: 1.4 !important;

  color: #1e293b !important;

  margin-bottom: 8px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more-wrap {

  margin: 0 !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more {

  padding: 5px 14px !important;

  font-size: 11.5px !important;

  height: 30px !important;

  line-height: 28px !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

}

/* === 6B. KARTY ZE ZDJĘCIEM POZIOMYM (Spójne z resztą, pełna szerokość bez ucinania postaci, szkliste pole) === */

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) {

  height: 460px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: space-between !important;

  border-radius: 14px !important;

  overflow: hidden !important;

  background: #ffffff !important;

  border: 1px solid #cbd5e1 !important;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 16px 32px rgba(19, 44, 107, 0.16) !important;

  border-color: #94a3b8 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail {

  position: relative !important;

  height: 275px !important;

  width: 100% !important;

  flex: 0 0 275px !important;

  margin: 0 !important;

  overflow: hidden !important;

  background: #f1f5f9 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail a {

  display: block !important;

  width: 100% !important;

  height: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail img,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail img {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  object-position: center top !important; /* 100% szerokości, ochrona wszystkich osób od lewej do prawej i głów u góry */

  transition: transform 0.4s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-thumbnail img,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-thumbnail img {

  transform: scale(1.03) !important;

}

/* Szkliste pole z tekstem (Glassmorphism) - zgrabnie nachodzi na dół zdjęcia */

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-content-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-content-wrap {

  position: relative !important;

  z-index: 3 !important;

  margin-top: -24px !important;

  flex: 1 1 auto !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: space-between !important;

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, #ffffff 100%) !important;

  backdrop-filter: blur(14px) saturate(160%) !important;

  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;

  border-radius: 18px 18px 0 0 !important;

  border-top: 1px solid rgba(255, 255, 255, 0.95) !important;

  box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.12) !important;

  padding: 13px 16px 14px 16px !important;

  text-align: center !important;

  transition: all 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-content-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-content-wrap {

  background: #ffffff !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-title,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-title {

  font-size: 14.5px !important;

  font-weight: 700 !important;

  line-height: 1.35 !important;

  min-height: auto !important;

  max-height: 40px !important;

  margin-top: 0 !important;

  margin-bottom: 5px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-title a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-title a {

  color: #0f172a !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-title a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-title a {

  color: #132c6b !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-excerpt,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-excerpt {

  font-size: 12px !important;

  line-height: 1.4 !important;

  color: #334155 !important;

  margin-bottom: 8px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-read-more-wrap,

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-read-more-wrap {

  margin: 0 auto !important;

  text-align: center !important;

  display: flex !important;

  justify-content: center !important;

  align-items: center !important;

  width: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-read-more,

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-read-more {

  padding: 5px 14px !important;

  font-size: 11.5px !important;

  height: 30px !important;

  line-height: 28px !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin: 0 auto !important;

}

@media (max-width: 767px) {

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical,

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal,

  .zst-el-widget-pp-posts .pp-post {

    height: 460px !important;

  }

  /* Na telefonie czytelny fragment tekstu (zajawka) wyśrodkowany pod tytułem */

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-excerpt,

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-excerpt,

  .zst-el-widget-pp-posts .pp-post .pp-post-excerpt {

    display: -webkit-box !important;

    -webkit-line-clamp: 2 !important;

    -webkit-box-orient: vertical !important;

    overflow: hidden !important;

    font-size: 11.5px !important;

    line-height: 1.35 !important;

    color: #334155 !important;

    margin-top: 2px !important;

    margin-bottom: 8px !important;

    text-align: center !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-content-wrap {

    padding: 10px 14px 12px 14px !important;

    border-radius: 16px 16px 0 0 !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title {

    font-size: 14px !important;

    margin-bottom: 6px !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail {

    height: 250px !important;

    flex: 0 0 250px !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-content-wrap {

    padding: 10px 14px 12px 14px !important;

    margin-top: -20px !important;

  }

}

.zst-el-widget-pp-posts .pp-posts-button {

  background: #132c6b !important;

  color: #ffffff !important;

  border-radius: 8px !important;

  font-weight: 700 !important;

  font-size: 11.5px !important;

  letter-spacing: 0.5px !important;

  padding: 8px 18px !important;

  transition: all 0.25s ease !important;

  align-self: center !important;

  margin-left: auto !important;

  margin-right: auto !important;

  margin-top: auto !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  text-align: center !important;

  text-decoration: none !important;

}

.zst-el-widget-pp-posts .pp-posts-button:hover {

  background: #d9222a !important;

  box-shadow: 0 4px 14px rgba(217, 34, 42, 0.35) !important;

  transform: translateY(-2px) !important;

  color: #ffffff !important;

}

.pp-posts-pagination-wrap {

  margin-top: 15px !important;

  margin-bottom: 25px !important;

  padding: 0 !important;

}

.pp-post-load-more {

  background: #132c6b !important;

  color: #ffffff !important;

  border-radius: 8px !important;

  font-weight: 700 !important;

  font-size: 13px !important;

  letter-spacing: 0.8px !important;

  padding: 11px 26px !important;

  transition: all 0.25s ease !important;

  text-transform: uppercase !important;

  box-shadow: 0 4px 12px rgba(19, 44, 107, 0.2) !important;

}

.pp-post-load-more:hover {

  background: #09173a !important;

  color: #ffffff !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 8px 20px rgba(9, 23, 58, 0.3) !important;

}

/* 7. Egzaminy i praktyki (Hub) & Prawy pasek boczny z linkami */

.zst-el-element-43a8284f {

  background: #21397d !important;

  padding: 45px 0 !important;

  position: relative !important;

  z-index: 6 !important;

  margin-top: 0 !important;

  margin-bottom: 0 !important;

  border-radius: 0 !important;

  border-top-left-radius: 0 !important;

  border-top-right-radius: 0 !important;

  border-bottom-left-radius: 0 !important;

  border-bottom-right-radius: 0 !important;

}

.zst-el-element-43a8284f .zst-el-container {

  width: 100% !important;

  padding-left: clamp(20px, 3.5vw, 50px) !important;

  padding-right: clamp(20px, 3.5vw, 50px) !important;

  box-sizing: border-box !important;

}

.zst-el-element-1b2031cc {

  display: none !important;

}

.zst-exam-hub {

  background: transparent !important;

  box-shadow: none !important;

  border: none !important;

  border-radius: 0 !important;

  padding: 0 !important;

  margin: 0 !important;

}

.zst-exam-hub .zst-exam-header {

  background: transparent !important;

  padding: 0 0 24px 0 !important;

  color: #ffffff !important;

}

.zst-exam-hub .zst-exam-header h2 {

  color: #ffffff !important;

  font-size: 26px !important;

  font-weight: 700 !important;

  margin: 0 0 8px 0 !important;

}

.zst-exam-hub .zst-exam-header p {

  color: rgba(255, 255, 255, 0.8) !important;

  font-size: 14px !important;

  margin: 0 !important;

}

.zst-exam-body {

  padding: 0 !important;

  background: transparent !important;

}

.zst-exam-options {

  display: grid !important;

  grid-template-columns: repeat(3, 1fr) !important;

  gap: 18px !important;

}

.zst-exam-hub .zst-exam-option {

  background: #ffffff !important;

  color: #0f172a !important;

  border: none !important;

  border-radius: 14px !important;

  padding: 24px 20px !important;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

  align-items: flex-start !important;

  cursor: pointer !important;

  width: 100% !important;

  box-sizing: border-box !important;

  text-align: left !important;

}

.zst-exam-hub .zst-exam-option:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28) !important;

  background: #ffffff !important;

}

.zst-exam-symbol {

  width: 44px !important;

  height: 44px !important;

  border-radius: 10px !important;

  background: #eef2ff !important;

  color: #21397d !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  font-size: 20px !important;

  margin-bottom: 16px !important;

}

.zst-exam-name {

  font-size: 18px !important;

  font-weight: 700 !important;

  color: #0f172a !important;

  margin-bottom: 8px !important;

}

.zst-exam-desc {

  color: #64748b !important;

  font-size: 13px !important;

  line-height: 1.55 !important;

  margin-bottom: 20px !important;

  flex-grow: 1 !important;

}

.zst-exam-action {

  display: flex !important;

  align-items: center !important;

  gap: 8px !important;

  font-size: 13px !important;

  font-weight: 700 !important;

  color: #21397d !important;

  margin-top: auto !important;

  transition: transform 0.2s ease, color 0.2s ease !important;

}

.zst-exam-hub .zst-exam-option:hover .zst-exam-action {

  color: #d9222a !important;

  transform: translateX(4px) !important;

}

.zst-exam-panel {

  background: #ffffff !important;

  border-radius: 16px !important;

  padding: 28px !important;

  margin-top: 24px !important;

  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.22) !important;

  color: #0f172a !important;

}

.zst-exam-panel .zst-exam-panel-heading {

  display: none !important;

}

.zst-el-element-4cdab61d {

  display: flex !important;

  flex-direction: column !important;

  justify-content: flex-end !important;

}

.zst-el-element-4cdab61d .zst-el-widget-wrap {

  padding-top: 0 !important;

  padding-bottom: 0 !important;

  border: none !important;

  border-left: none !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-items {

  padding: 0 !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item {

  margin-bottom: 8px !important;

  transition: all 0.2s ease !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a {

  display: flex !important;

  align-items: center !important;

  padding: 10px 14px !important;

  border-radius: 8px !important;

  background: rgba(255, 255, 255, 0.08) !important;

  color: #ffffff !important;

  font-weight: 600 !important;

  font-size: 13px !important;

  letter-spacing: 0.3px !important;

  text-decoration: none !important;

  transition: all 0.2s ease !important;

  border: 1px solid rgba(255, 255, 255, 0.12) !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover {

  background: rgba(255, 255, 255, 0.2) !important;

  color: #ffffff !important;

  transform: none !important;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-icon {

  margin-right: 10px !important;

  color: #f5b324 !important;

  font-size: 10px !important;

}

@media (max-width: 900px) {

  .zst-exam-options {

    grid-template-columns: 1fr !important;

    gap: 14px !important;

  }

  .zst-el-element-43a8284f {

    padding: 30px 0 !important;

  }

}

/* 8. Partnerzy / Karuzela sponsorów */

.zst-el-element-521df90 {

  margin-top: 30px !important;

  padding: 20px 0 !important;

}

/* 9. Dyskretny baner cookie */

.cmplz-cookiebanner, #cmplz-cookiebanner-1-optin, #cmplz-cookiebanner {

  bottom: 20px !important;

  right: 20px !important;

  top: auto !important;

  left: auto !important;

  transform: none !important;

  max-width: 400px !important;

  border-radius: 16px !important;

  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.25) !important;

}

/* ==========================================================================

   9.5. NOWOCZESNA KARUZELA PARTNERÓW / SPONSORÓW (Sekcja 521df90, Widget bc1878c)

   Elegancki nagłówek "Nasi partnerzy", zwarta wysokość, srebrne kafelki i równy rytm

   ========================================================================== */

.zst-el-element-521df90 {

  padding: 22px 0 24px 0 !important;

  margin: 0 !important;

  background: #f8fafc !important; /* Świeże, jasne tło eksponujące białe kafelki */

  border-top: 1px solid #e2e8f0 !important;

  border-bottom: 1px solid #e2e8f0 !important;

}

/* Nagłówek sekcji Partnerzy */

.zst-partners-header {

  width: 100% !important;

  display: block !important;

  text-align: left !important;

  margin-bottom: 16px !important;

  padding-left: 2px !important;

}

.zst-partners-title {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 22px !important;

  font-weight: 700 !important;

  color: #10265c !important;

  letter-spacing: -0.2px !important;

  margin: 0 !important;

  display: inline-block !important;

  text-align: left !important;

  position: relative !important;

}

.zst-partners-title .zst-partners-nasi {

  position: relative !important;

  display: inline-block !important;

  padding-bottom: 6px !important;

}

.zst-partners-title .zst-partners-nasi::after {

  content: '' !important;

  position: absolute !important;

  bottom: 0 !important;

  left: 0 !important;

  width: 100% !important;

  height: 3px !important;

  background: #f5b324 !important; /* Złoty akcent ZST pod "Nasi" */

  border-radius: 2px !important;

}

.zst-el-element-bc1878c {

  padding: 0 !important;

}

.zst-el-element-bc1878c .swiper-wrapper {

  align-items: center !important;

  padding: 6px 0 10px 0 !important;

}

/* Równe odstępy między slajdami - logotypy nigdy się nie stykają */

.zst-el-element-bc1878c .swiper-slide {

  padding: 0 10px !important;

  box-sizing: border-box !important;

  height: auto !important;

  display: flex !important;

  justify-content: center !important;

  align-items: center !important;

}

/* Dedykowany, smuklejszy kafelek dla każdego logotypu */

.zst-el-element-bc1878c .swiper-slide-inner {

  background: #ffffff !important;

  border: 1px solid #cbd5e1 !important; /* Srebrne obramowanie spójne z kartami aktualności */

  border-radius: 10px !important;

  padding: 10px 18px !important;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;

  height: 74px !important;

  width: 100% !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  box-sizing: border-box !important;

  transition: all 0.25s ease !important;

  position: relative !important;

  overflow: hidden !important;

}

.zst-el-element-bc1878c .swiper-slide:hover .swiper-slide-inner {

  transform: none !important;

  box-shadow: 0 4px 12px rgba(19, 44, 107, 0.08) !important;

  border-color: #94a3b8 !important;

}

/* Znormalizowana skala i proporcje logotypów w kafelku */

.zst-el-element-bc1878c .swiper-slide-image {

  max-height: 48px !important;

  max-width: 85% !important;

  width: auto !important;

  height: auto !important;

  object-fit: contain !important;

  margin: auto !important;

  display: block !important;

  transition: none !important;

}

.zst-el-element-bc1878c .swiper-slide:hover .swiper-slide-image {

  transform: none !important;

}

/* Okrągłe, czytelne przyciski nawigacyjne po bokach */

.zst-el-element-bc1878c .zst-el-swiper-button {

  width: 36px !important;

  height: 36px !important;

  background: #ffffff !important;

  border: 1px solid #cbd5e1 !important;

  border-radius: 50% !important;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;

  color: #132c6b !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  transition: all 0.2s ease !important;

  z-index: 10 !important;

}

.zst-el-element-bc1878c .zst-el-swiper-button:hover {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

  transform: scale(1.06) !important;

  box-shadow: 0 6px 16px rgba(19, 44, 107, 0.22) !important;

}

.zst-el-element-bc1878c .zst-el-swiper-button-prev {

  left: -8px !important;

}

.zst-el-element-bc1878c .zst-el-swiper-button-next {

  right: -8px !important;

}

.zst-el-element-bc1878c .zst-el-swiper-button i,

.zst-el-element-bc1878c .zst-el-swiper-button svg {

  font-size: 13px !important;

  width: 13px !important;

  height: 13px !important;

}

/* Nowoczesne kropki paginacji z aktywną pigułką */

.zst-el-element-bc1878c .swiper-pagination-bullets {

  margin-top: 8px !important;

  display: flex !important;

  justify-content: center !important;

  align-items: center !important;

  gap: 5px !important;

}

.zst-el-element-bc1878c .swiper-pagination-bullet {

  width: 7px !important;

  height: 7px !important;

  background: #94a3b8 !important;

  opacity: 0.45 !important;

  border-radius: 4px !important;

  transition: all 0.25s ease !important;

  margin: 0 !important;

}

.zst-el-element-bc1878c .swiper-pagination-bullet-active {

  width: 22px !important;

  background: #132c6b !important;

  opacity: 1 !important;

  box-shadow: 0 2px 6px rgba(19, 44, 107, 0.3) !important;

}

/* Ukrycie separatora ce8d159 */

.zst-el-element-ce8d159 {

  display: none !important;

}

@media (max-width: 767px) {

  .zst-el-element-521df90 {

    padding: 18px 0 20px 0 !important;

  }

  .zst-partners-title {

    font-size: 19px !important;

    text-align: left !important;

  }

  .zst-partners-header {

    margin-bottom: 12px !important;

    text-align: left !important;

    padding-left: 6px !important;

  }

  .zst-el-element-bc1878c .swiper-slide {

    padding: 0 35px !important;

  }

  .zst-el-element-bc1878c .swiper-slide-inner {

    height: 68px !important;

    padding: 8px 14px !important;

  }

  .zst-el-element-bc1878c .swiper-slide-image {

    max-height: 44px !important;

  }

  .zst-el-element-bc1878c .zst-el-swiper-button {

    width: 30px !important;

    height: 30px !important;

  }

  .zst-el-element-bc1878c .zst-el-swiper-button-prev {

    left: 2px !important;

  }

  .zst-el-element-bc1878c .zst-el-swiper-button-next {

    right: 2px !important;

  }

  .zst-el-element-bc1878c .zst-el-swiper-button i,

  .zst-el-element-bc1878c .zst-el-swiper-button svg {

    font-size: 11px !important;

    width: 11px !important;

    height: 11px !important;

  }

}

/* ==========================================================================

   9.6. CZYTELNE, NOWOCZESNE PRZYCISKI MOBILNE: TERRORYZM, DOKUMENTY, DYPLOMY

   Koniec ze zgniecionymi, 33-procentowymi kolumnami i łamaniem liter!

   ========================================================================== */

@media (max-width: 767px) {

  .zst-el-element-a7cfc96 {

    padding: 14px 16px !important;

    margin: 15px 0 !important;

    box-sizing: border-box !important;

  }

  .zst-el-element-a7cfc96 .zst-el-container {

    display: flex !important;

    flex-direction: column !important;

    gap: 10px !important;

    width: 100% !important;

    max-width: 100% !important;

    padding: 0 !important;

    margin: 0 !important;

  }

  .zst-el-element-a7cfc96 .zst-el-column {

    width: 100% !important;

    flex: 0 0 100% !important;

    max-width: 100% !important;

    padding: 0 !important;

    margin: 0 !important;

  }

  .zst-el-element-a7cfc96 .zst-el-widget-wrap {

    padding: 0 !important;

    margin: 0 !important;

  }

  .zst-el-element-a7cfc96 .premium-button {

    width: 100% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    height: 46px !important;

    min-height: 46px !important;

    border-radius: 12px !important;

    padding: 0 16px !important;

    box-sizing: border-box !important;

    text-decoration: none !important;

    font-weight: 700 !important;

    font-size: 13px !important;

    letter-spacing: 0.5px !important;

    text-transform: uppercase !important;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;

    transition: transform 0.2s ease, box-shadow 0.2s ease !important;

  }

  .zst-el-element-a7cfc96 .premium-button:active {

    transform: scale(0.98) !important;

  }

  .zst-el-element-a7cfc96 .premium-button-text-icon-wrapper {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 100% !important;

  }

  .zst-el-element-a7cfc96 .premium-button span {

    white-space: nowrap !important;

    display: inline-flex !important;

    align-items: center !important;

  }

  /* Przycisk 1: Terroryzm - Stopnie alarmowe (bezpieczeństwo / alert) */

  .zst-el-element-25a2167 .premium-button {

    background: linear-gradient(135deg, #dc2626 0%, #991b1b 100%) !important;

    color: #ffffff !important;

    border: 1px solid #b91c1c !important;

  }

  .zst-el-element-25a2167 .premium-button span::before {

    content: "\f132\00a0\00a0";

    font-family: "Font Awesome 5 Free";

    font-weight: 900;

    font-size: 14px;

  }

  /* Przycisk 2: Dokumenty szkolne (oficjalne / granat) */

  .zst-el-element-ead82d6 .premium-button {

    background: linear-gradient(135deg, #132c6b 0%, #0d1e48 100%) !important;

    color: #ffffff !important;

    border: 1px solid #132c6b !important;

  }

  .zst-el-element-ead82d6 .premium-button span::before {

    content: "\f15c\00a0\00a0";

    font-family: "Font Awesome 5 Free";

    font-weight: 900;

    font-size: 14px;

  }

  /* Przycisk 3: Dyplomy i podziękowania (sukcesy / prestiż) */

  .zst-el-element-288358b .premium-button {

    background: linear-gradient(135deg, #1e3a8a 0%, #1e293b 100%) !important;

    color: #ffffff !important;

    border: 1px solid #1e3a8a !important;

  }

  .zst-el-element-288358b .premium-button span::before {

    content: "\f091\00a0\00a0";

    font-family: "Font Awesome 5 Free";

    font-weight: 900;

    font-size: 14px;

  }

}

/* ==========================================================================

   10. NOWOCZESNA, ZBALANSOWANA STOPKA (Sekcja 5e855e11)

   Usunięcie pustki, równe marginesy i profesjonalny 3-kolumnowy układ

   ========================================================================== */

.zst-el-element-5e855e11 {

  background: #10265c !important;

  padding: 50px 0 45px 0 !important;

  color: #ffffff !important;

  position: relative !important;

  z-index: 10 !important;

}

.zst-el-element-5e855e11 .zst-el-container {

  width: 100% !important;

  padding-left: clamp(20px, 3.5vw, 50px) !important;

  padding-right: clamp(20px, 3.5vw, 50px) !important;

  box-sizing: border-box !important;

  display: flex !important;

  flex-wrap: wrap !important;

  align-items: flex-start !important;

}

/* Wyrównanie szerokości kolumn */

.zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {

  width: 33.333% !important;

  padding: 0 24px !important;

  box-sizing: border-box !important;

}

@media (max-width: 991px) and (min-width: 768px) {

  .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {

    width: 50% !important;

    margin-bottom: 25px !important;

  }

  .zst-el-element-5e855e11 .zst-el-column.zst-el-element-737b0917 {

    width: 100% !important;

  }

}

@media (max-width: 767px) {

  .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {

    width: 100% !important;

    padding: 0 5px !important;

    margin-bottom: 30px !important;

  }

}

/* Kolumna 1: Dane kontaktowe i tożsamość */

.zst-el-element-d3ac455 .zst-el-widget-wrap {

  padding: 0 !important;

}

.zst-el-element-73092ff7 {

  margin-top: 15px !important;

  margin-bottom: 18px !important;

}

.zst-el-element-6ed902b0 {

  width: 75px !important;

  flex: 0 0 75px !important;

}

.zst-el-element-6ed902b0 img {

  width: 68px !important;

  height: auto !important;

  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.3)) !important;

}

.zst-el-element-34b6c66 {

  width: calc(100% - 85px) !important;

  flex: 1 1 auto !important;

  padding-left: 12px !important;

}

.zst-el-element-64059775 p {

  color: #ffffff !important;

  font-size: 13.5px !important;

  line-height: 1.4 !important;

  margin: 0 !important;

}

/* Blok herbu i nazwy szkoły w stopce (Desktop) */

.zst-el-element-73092ff7 {

  display: block !important;

  margin-top: 0 !important;

  margin-bottom: 6px !important;

}

.zst-footer-branding {

  display: flex !important;

  align-items: center !important;

  gap: 12px !important;

  padding-bottom: 2px !important;

  border-bottom: none !important;

}

.zst-footer-branding-logo {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
}

.zst-footer-branding-text {

  display: flex !important;

  flex-direction: column !important;

  line-height: 1.25 !important;

}

.zst-footer-branding-title {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 14.5px !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  letter-spacing: 0.2px !important;

  margin-bottom: 1px !important;

  white-space: nowrap !important;

}

.zst-footer-branding-sub {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 12px !important;

  font-weight: 600 !important;

  color: rgba(255, 255, 255, 0.95) !important;

  white-space: nowrap !important;

}

.zst-footer-branding-patron {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 10.5px !important;

  font-weight: 400 !important;

  color: rgba(255, 255, 255, 0.8) !important;

  margin-top: 2px !important;

  font-style: italic !important;

  white-space: nowrap !important;

}

@media (max-width: 1200px) and (min-width: 768px) {

  .zst-footer-branding-title { font-size: 13px !important; }

  .zst-footer-branding-sub { font-size: 11px !important; }

  .zst-footer-branding-patron { font-size: 10px !important; }

  .zst-footer-branding-logo {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
}

}

@media (max-width: 767px) {

  .zst-el-element-73092ff7 {

    display: none !important;

  }

}

.zst-el-element-50796328 .zst-el-icon-list-items {

  margin-top: 4px !important;

}

.zst-el-element-50796328 .zst-el-icon-list-item {

  color: rgba(255, 255, 255, 0.88) !important;

  font-size: 13px !important;

  line-height: 1.35 !important;

  margin-bottom: 6px !important;

  display: flex !important;

  align-items: flex-start !important;

}

.zst-el-element-50796328 .zst-el-icon-list-icon {

  width: 18px !important;

  min-width: 18px !important;

  max-width: 18px !important;

  height: 20px !important;

  margin: 1px 8px 0 0 !important;

  padding: 0 !important;

  display: flex !important;

  justify-content: center !important;

  align-items: center !important;

  flex-shrink: 0 !important;

}

.zst-el-element-50796328 .zst-el-icon-list-icon i,

.zst-el-element-50796328 .zst-el-icon-list-icon span {

  color: #f5b324 !important;

  font-size: 13.5px !important;

  margin: 0 !important;

  padding: 0 !important;

  text-align: center !important;

}

.zst-el-element-50796328 .zst-el-icon-list-text {

  padding: 0 !important;

  margin: 0 !important;

  color: rgba(255, 255, 255, 0.88) !important;

  font-size: 13.5px !important;

  line-height: 1.5 !important;

}

.zst-el-element-50796328 a {

  color: #ffffff !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}

.zst-el-element-50796328 a:hover {

  color: #f5b324 !important;

}

/* Nagłówki sekcji stopki we WSZYSTKICH 3 kolumnach */

.zst-footer-col-title {

  color: #ffffff !important;

  font-size: 16px !important;

  font-weight: 700 !important;

  text-transform: uppercase !important;

  letter-spacing: 0.6px !important;

  margin: 0 0 18px 0 !important;

  padding-bottom: 10px !important;

  border-bottom: 2px solid rgba(255, 255, 255, 0.12) !important;

  display: flex !important;

  align-items: center !important;

  position: relative !important;

}

.zst-footer-col-title::after {

  content: '' !important;

  position: absolute !important;

  bottom: -2px !important;

  left: 0 !important;

  width: 36px !important;

  height: 2px !important;

  background: #f5b324 !important;

}

/* Listy linków w stopce */

.zst-footer-links-list {

  list-style: none !important;

  padding: 0 !important;

  margin: 0 !important;

}

.zst-footer-links-list li {

  margin-bottom: 10px !important;

}

.zst-footer-links-list a {

  color: rgba(255, 255, 255, 0.82) !important;

  text-decoration: none !important;

  font-size: 13.5px !important;

  display: flex !important;

  align-items: center !important;

  transition: all 0.2s ease !important;

  padding: 4px 0 !important;

}

.zst-footer-links-list a i {

  color: #f5b324 !important;

  font-size: 12px !important;

  width: 18px !important;

  margin-right: 8px !important;

  transition: transform 0.2s ease !important;

}

.zst-footer-links-list a:hover {

  color: #ffffff !important;

  transform: translateX(4px) !important;

}

.zst-footer-links-list a:hover i {

  transform: scale(1.15) !important;

}

/* Karta BIP w kolumnie 3 */

.zst-footer-bip-card {

  display: flex !important;

  align-items: center !important;

  background: rgba(255, 255, 255, 0.08) !important;

  border: 1px solid rgba(255, 255, 255, 0.18) !important;

  border-radius: 12px !important;

  padding: 12px 14px !important;

  text-decoration: none !important;

  transition: all 0.25s ease !important;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;

}

.zst-footer-bip-card:hover {

  background: rgba(255, 255, 255, 0.14) !important;

  border-color: #f5b324 !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25) !important;

}

.zst-bip-badge-box {

  width: 44px !important;

  height: 44px !important;

  background: #cc0000 !important;

  border-radius: 8px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin-right: 12px !important;

  flex-shrink: 0 !important;

  box-shadow: 0 2px 8px rgba(204, 0, 0, 0.4) !important;

}

.zst-bip-badge-text {

  color: #ffffff !important;

  font-family: 'Segoe UI', Roboto, sans-serif !important;

  font-size: 20px !important;

  font-weight: 900 !important;

  letter-spacing: 0.5px !important;

  line-height: 1 !important;

}

.zst-bip-info-box {

  display: flex !important;

  flex-direction: column !important;

}

.zst-bip-name {

  color: #ffffff !important;

  font-size: 13.5px !important;

  font-weight: 700 !important;

  line-height: 1.3 !important;

}

.zst-bip-sub {

  color: rgba(255, 255, 255, 0.7) !important;

  font-size: 11.5px !important;

  margin-top: 2px !important;

}

.zst-footer-bip-card:hover .zst-bip-sub {

  color: #f5b324 !important;

}

/* Przycisk Powrót na górę */

.zst-footer-top-link {

  display: inline-flex !important;

  align-items: center !important;

  gap: 8px !important;

  margin-top: 18px !important;

  color: rgba(255, 255, 255, 0.8) !important;

  font-size: 12.5px !important;

  font-weight: 600 !important;

  text-decoration: none !important;

  padding: 8px 16px !important;

  background: rgba(255, 255, 255, 0.07) !important;

  border: 1px solid rgba(255, 255, 255, 0.15) !important;

  border-radius: 20px !important;

  transition: all 0.2s ease !important;

}

.zst-footer-top-link:hover {

  background: #f5b324 !important;

  color: #10265c !important;

  border-color: #f5b324 !important;

  transform: translateY(-2px) !important;

}

/* Dolny pasek praw autorskich */

.zst-el-element-5feb0ee {

  background: #09173a !important;

  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;

  padding: 16px 0 !important;

  text-align: center !important;

}

.zst-el-element-5feb0ee p {

  margin: 0 !important;

  color: rgba(255, 255, 255, 0.6) !important;

  font-size: 12.5px !important;

  letter-spacing: 0.3px !important;

}

/* =========================================================

   HARMONIZACJA SZEROKOŚCI KONTENERÓW DLA RÓŻNYCH PRZEKĄTNYCH (DESKTOP, QHD, 4K)

   Spójna siatka dla nagłówka, banera, aktualności, egzaminów, karuzeli i stopki

   ========================================================= */

@media (min-width: 1200px) {

  .zst-el-element-3abdd9df .zst-el-container,

  .zst-el-element-3aa54026 .zst-el-container,

  .zst-el-element-644d4792 .zst-el-container,

  .zst-el-element-43a8284f .zst-el-container,

  .zst-el-element-521df90 .zst-el-container,

  .zst-el-element-5e855e11 .zst-el-container {

    max-width: 1245px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 15px !important;

    padding-right: 15px !important;

    box-sizing: border-box !important;

  }

}

@media (min-width: 1920px) {

  .zst-el-element-3abdd9df .zst-el-container,

  .zst-el-element-3aa54026 .zst-el-container,

  .zst-el-element-644d4792 .zst-el-container,

  .zst-el-element-43a8284f .zst-el-container,

  .zst-el-element-521df90 .zst-el-container,

  .zst-el-element-5e855e11 .zst-el-container {

    max-width: 1380px !important;

  }

}

@media (min-width: 2560px) {

  .zst-el-element-3abdd9df .zst-el-container,

  .zst-el-element-3aa54026 .zst-el-container,

  .zst-el-element-644d4792 .zst-el-container,

  .zst-el-element-43a8284f .zst-el-container,

  .zst-el-element-521df90 .zst-el-container,

  .zst-el-element-5e855e11 .zst-el-container {

    max-width: 1560px !important;

  }

}

/* Ukrycie "NA SKRÓTY" w stopce na telefonie */

@media (max-width: 767px) {

  .zst-el-element-6daf6ce9 {

    display: none !important;

  }

}

/* Na telefonie wyświetlamy dokładnie 4 wpisy w domyślnym widoku */

@media (max-width: 767px) {

  .zst-el-element-3796f42:not(.zst-filter-filtered) .pp-posts-grid .pp-post-wrap:nth-child(n+5) {

    display: none !important;

  }

}

/* ==========================================================

   MENU NO-WRAP & SMOOTH RENDERING

   ========================================================== */

.zst-el-36056 .pp-advanced-menu .pp-menu-item a,

.zst-el-36056 .elementskit-navbar-nav > li > a {

    white-space: nowrap !important;

}

/* ==========================================================

   SINGLE POST LAYOUT & TYPOGRAPHY (.single-post, zst-el-76)

   Dopasowanie 1:1 do nagłówka (od lewej krawędzi logo do prawej menu)

   ========================================================== */

/* Kontenery sekcji w szablonie wpisu - dokładnie takie same krawędzie jak w nagłówku (logo i menu) */

.zst-el-76 > .zst-el-section {

    padding-left: 0 !important;

    padding-right: 0 !important;

    margin-left: 0 !important;

    margin-right: 0 !important;

    width: 100% !important;

    max-width: 100% !important;

}

@media (max-width: 1919px) and (min-width: 1025px) {

    .zst-el-76 .zst-el-section.zst-el-section-boxed > .zst-el-container,

    .zst-el-76 .zst-el-container {

        max-width: 100% !important;

        width: 100% !important;

        margin-left: 0 !important;

        margin-right: 0 !important;

        padding-left: 34px !important;

        padding-right: 34px !important;

        box-sizing: border-box !important;

    }

}

@media (min-width: 1920px) {

    .zst-el-76 .zst-el-section.zst-el-section-boxed > .zst-el-container,

    .zst-el-76 .zst-el-container {

        max-width: 1380px !important;

        margin-left: auto !important;

        margin-right: auto !important;

        padding-left: 15px !important;

        padding-right: 15px !important;

        box-sizing: border-box !important;

    }

}

@media (min-width: 2560px) {

    .zst-el-76 .zst-el-section.zst-el-section-boxed > .zst-el-container,

    .zst-el-76 .zst-el-container {

        max-width: 1560px !important;

        margin-left: auto !important;

        margin-right: auto !important;

        padding-left: 15px !important;

        padding-right: 15px !important;

        box-sizing: border-box !important;

    }

}

@media (max-width: 1024px) {

    .zst-el-76 .zst-el-section.zst-el-section-boxed > .zst-el-container,

    .zst-el-76 .zst-el-container {

        max-width: 100% !important;

        width: 100% !important;

        padding-left: 16px !important;

        padding-right: 16px !important;

        box-sizing: border-box !important;

    }

}

/* Wewnętrzne kolumny zst-ela - pełna szerokość, brak podziałów i floatów */

.zst-el-76 .zst-el-column,

.zst-el-76 .zst-el-widget-wrap,

.zst-el-76 .zst-el-widget-wrap.zst-el-element-populated {

    width: 100% !important;

    max-width: 100% !important;

    float: none !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

}

/* Breadcrumbs (Nawigacja okruszkowa) */

.zst-post-breadcrumbs {

    max-width: 100% !important;

    width: 100% !important;

    margin: 24px 0 12px 0 !important;

    padding: 0 !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 13px !important;

    color: #64748b !important;

    display: flex !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap: 8px !important;

}

.zst-post-breadcrumbs a {

    color: #0b1e48 !important;

    text-decoration: none !important;

    font-weight: 600 !important;

    transition: color 0.2s !important;

}

.zst-post-breadcrumbs a:hover {

    color: #d97706 !important;

}

.zst-post-breadcrumbs .sep {

    color: #cbd5e1 !important;

}

.zst-post-breadcrumbs .current {

    color: #475569 !important;

    font-weight: 600 !important;

}

/* NOWOCZESNY NAGŁÓWEK ARTYKUŁU (KARTA ZE ZNAKIEM AKCENTOWYM) */

.zst-el-element-d0f2831,

.zst-el-76 .zst-el-element-d0f2831 {

    margin-top: 10px !important;

    margin-bottom: 6px !important;

}

.zst-post-header-card {

    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;

    border: 1px solid #e2e8f0 !important;

    border-left: 5px solid #0b1e48 !important;

    border-radius: 12px !important;

    padding: 14px 22px !important;

    margin: 4px 0 16px 0 !important;

    box-shadow: 0 2px 10px rgba(11, 30, 72, 0.04) !important;

}

.zst-el-76 .zst-el-widget-theme-post-title {

    position: static !important;

    margin: 0 !important;

    max-width: 100% !important;

    width: 100% !important;

    padding: 0 !important;

    text-align: left !important;

}

.zst-el-76 .zst-el-widget-theme-post-title .zst-el-heading-title,

.zst-el-76 .zst-el-widget-theme-post-title h1 {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(22px, 2.3vw, 30px) !important;

    font-weight: 750 !important;

    color: #0b1e48 !important;

    line-height: 1.2 !important;

    -webkit-text-stroke: 0 !important;

    text-shadow: none !important;

    letter-spacing: -0.015em !important;

    margin: 0 0 8px 0 !important;

    padding: 0 !important;

    text-align: left !important;

}

.zst-crumbs {

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    font-size: 12.5px !important;

    font-weight: 500 !important;

    color: #64748b !important;

    margin-bottom: 6px !important;

    font-family: 'Montserrat', sans-serif !important;

}

.zst-crumbs a {

    color: #475569 !important;

    text-decoration: none !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    transition: color 0.2s ease !important;

}

.zst-crumbs a:hover {

    color: #0b1e48 !important;

    text-decoration: underline !important;

}

.zst-crumbs i, .zst-crumbs svg {

    font-size: 12px !important;

    width: 13px !important;

    height: 13px !important;

    color: #94a3b8 !important;

}

.zst-crumbs .sep {

    color: #cbd5e1 !important;

    font-size: 14px !important;

    font-weight: 600 !important;

}

.zst-meta {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    flex-wrap: wrap !important;

    font-size: 13px !important;

    color: #64748b !important;

    font-family: 'Montserrat', sans-serif !important;

}

.zst-tag {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: #0b1e48 !important;

    color: #ffffff !important;

    padding: 4px 10px !important;

    border-radius: 0 !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    letter-spacing: 0.5px !important;

    text-transform: uppercase !important;

    text-decoration: none !important;

    transition: background 0.2s ease !important;

}

.zst-tag:hover {

    background: #143270 !important;

    color: #ffffff !important;

}

.zst-tag i, .zst-tag svg {

    font-size: 10px !important;

    width: 10px !important;

    height: 10px !important;

    color: #ffca28 !important;

}

.zst-date, .zst-read, .zst-author-item {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    color: #475569 !important;

    font-weight: 500 !important;

    font-size: 13px !important;

}

.zst-date i, .zst-date svg, .zst-read i, .zst-read svg, .zst-author-item i, .zst-author-item svg {

    font-size: 13px !important;

    width: 14px !important;

    height: 14px !important;

    color: #64748b !important;

}

.zst-author-item strong {

    font-weight: 600 !important;

    color: #0b1e48 !important;

}

.zst-dot {

    color: #cbd5e1 !important;

}

.zst-meta-row-wrap {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: 16px !important;

    flex-wrap: wrap !important;

}

.zst-actions {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

}

.zst-action-btn {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    padding: 6px 12px !important;

    border-radius: 0 !important;

    font-size: 12px !important;

    font-weight: 600 !important;

    font-family: 'Montserrat', sans-serif !important;

    text-decoration: none !important;

    cursor: pointer !important;

    border: 1px solid #cbd5e1 !important;

    background: #ffffff !important;

    color: #334155 !important;

    transition: all 0.2s ease !important;

    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;

    line-height: 1 !important;

}

.zst-action-btn i, .zst-action-btn svg {

    font-size: 12px !important;

    width: 12px !important;

    height: 12px !important;

    transition: color 0.2s ease !important;

}

.zst-action-btn:hover {

    transform: translateY(-1px) !important;

    box-shadow: 0 3px 8px rgba(0,0,0,0.08) !important;

}

.zst-btn-fb:hover {

    background: #1877f2 !important;

    border-color: #1877f2 !important;

    color: #ffffff !important;

}

.zst-btn-fb:hover i, .zst-btn-fb:hover svg {

    color: #ffffff !important;

}

.zst-btn-print:hover {

    background: #0b1e48 !important;

    border-color: #0b1e48 !important;

    color: #ffffff !important;

}

.zst-btn-print:hover i, .zst-btn-print:hover svg {

    color: #ffffff !important;

}

.zst-btn-pdf:hover {

    background: #dc2626 !important;

    border-color: #dc2626 !important;

    color: #ffffff !important;

}

.zst-btn-pdf:hover i, .zst-btn-pdf:hover svg {

    color: #ffffff !important;

}

@media (max-width: 768px) {

    .zst-post-header-card {

        padding: 16px 18px !important;

        margin: 6px 0 20px 0 !important;

        border-radius: 8px !important;

    }

    .zst-el-76 .zst-el-widget-theme-post-title .zst-el-heading-title,

    .zst-el-76 .zst-el-widget-theme-post-title h1 {

        font-size: 22px !important;

        margin-bottom: 12px !important;

    }

    .zst-meta-row-wrap {

        flex-direction: column !important;

        align-items: flex-start !important;

        gap: 12px !important;

    }

    .zst-actions {

        width: 100% !important;

        display: flex !important;

        flex-wrap: wrap !important;

        gap: 6px !important;

        justify-content: flex-end !important;

    }

    .zst-action-btn {

        padding: 5px 10px !important;

        font-size: 11.5px !important;

    }

}

/* ==========================================================

   STYLISTYKA WYDRUKU I ZAPISU DO PDF (@media print)

   ========================================================== */

@media print {

    /* 1. Ukryj całkowicie nagłówek, stopkę, pasek boczny, nawigację i banery */

    .ekit-template-content-header,

    .ekit-template-content-footer,

    .zst-el-36056,

    .zst-el-36057,

    header,

    footer,

    nav,

    .zst-el-element-64aa9c1, /* Pasek boczny na podstronach */

    .zst-crumbs,

    .zst-actions,

    .zst-back-news-wrap,

    #cmplz-cookiebanner-container,

    .cmplz-cookiebanner,

    #cmplz-manage-consent,

    .cmplz-manage-consent-container,

    #bravepop_element_tooltip,

    #bravepop_element_lightbox,

    #fb-root,

    #zst-lightbox-modal,

    .skip-link,

    .userway,

    .userway_p1,

    .userway_p2,

    .uwy,

    .userway_buttons_wrapper,

    #userwayAccessibilityIcon,

    [class*="userway"],

    .u-skiplink,

    .w3eden,

    .cli-modal,

    #cli-cookie-bar,

    .zst-el-location-header,

    .zst-el-location-footer,

    .zst-el-element-4e6d939b {

        display: none !important;

        visibility: hidden !important;

        height: 0 !important;

        margin: 0 !important;

        padding: 0 !important;

    }

    /* 2. Ukryj dopisywanie adresów URL w nawiasach po linkach */

    a[href]:after,

    abbr[title]:after {

        content: "" !important;

        display: none !important;

    }

    /* 3. Parametry kartki A4 */

    @page {

        size: A4 portrait;

        margin: 18mm 16mm 18mm 16mm;

    }

    html, body {

        background: #ffffff !important;

        color: #1e293b !important;

        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;

        font-size: 11pt !important;

        line-height: 1.55 !important;

        width: 100% !important;

        margin: 0 !important;

        padding: 0 !important;

    }

    /* 4. Kontenery na pełną szerokość bez sztucznych marginesów zst-ela */

    .zst-el-76,

    .zst-el-76 .zst-el-container,

    .zst-el-76 .zst-el-row,

    .zst-el-76 .zst-el-column,

    .zst-el-76 .zst-el-widget-wrap,

    .zst-el-34842,

    .zst-el-34842 .zst-el-container,

    .zst-el-element-3fcee37,

    .zst-el-widget-theme-post-content {

        width: 100% !important;

        max-width: 100% !important;

        margin: 0 !important;

        padding: 0 !important;

        float: none !important;

        box-shadow: none !important;

        background: transparent !important;

    }

    /* 5. Elegancki nagłówek artykułu do druku */

    .zst-post-header-card,

    .zst-page-header-card {

        background: none !important;

        border: none !important;

        border-bottom: 2px solid #0b1e48 !important;

        border-radius: 0 !important;

        box-shadow: none !important;

        padding: 0 0 12px 0 !important;

        margin: 0 0 18px 0 !important;

    }

    /* Szlachetny podpis szkoły na samej górze wydruku */

    .zst-post-header-card::before,

    .zst-page-header-card::before {

        content: "Zespół Szkół Technicznych CKZiU w Lesznie • zst-leszno.edu.pl" !important;

        display: block !important;

        font-size: 9pt !important;

        font-weight: 700 !important;

        text-transform: uppercase !important;

        letter-spacing: 0.5px !important;

        color: #0b1e48 !important;

        margin-bottom: 6px !important;

    }

    .zst-el-element-c1aecdb .zst-el-heading-title,

    .zst-el-element-f23d063 .zst-el-heading-title,

    .zst-post-header-card h2,

    .zst-post-header-card h1,

    .zst-page-header-card h2,

    .zst-page-header-card h1 {

        font-family: 'Montserrat', Arial, sans-serif !important;

        font-size: 20pt !important;

        font-weight: 700 !important;

        color: #0b1e48 !important;

        line-height: 1.25 !important;

        margin: 4px 0 10px 0 !important;

    }

    .zst-meta {

        font-size: 9pt !important;

        color: #64748b !important;

        display: flex !important;

        align-items: center !important;

        gap: 12px !important;

    }

    .zst-tag {

        background: #f1f5f9 !important;

        color: #0b1e48 !important;

        font-weight: 600 !important;

        padding: 2px 8px !important;

        border-radius: 4px !important;

        border: 1px solid #cbd5e1 !important;

    }

    /* 6. Treść artykułu */

    .zst-el-widget-theme-post-content {

        font-size: 11pt !important;

        line-height: 1.6 !important;

        color: #1e293b !important;

    }

    .zst-el-widget-theme-post-content p {

        margin-bottom: 12px !important;

    }

    /* 7. Zdjęcie wyróżniające w druku */

    .zst-featured-float-wrap {

        float: right !important;

        max-width: 240px !important;

        margin: 0 0 16px 20px !important;

        border-radius: 8px !important;

        box-shadow: none !important;

        border: 1px solid #cbd5e1 !important;

        page-break-inside: avoid !important;

        break-inside: avoid !important;

    }

    .zst-featured-float-wrap img {

        width: 100% !important;

        height: auto !important;

        border-radius: 8px !important;

    }

    /* 8. Galerie i elementy wizualne */

    .wp-block-gallery {

        page-break-inside: avoid !important;

        break-inside: avoid !important;

        margin: 16px 0 !important;

    }

    .wp-block-gallery img {

        border-radius: 0 !important;

        border: 1px solid #cbd5e1 !important;

    }

    /* 9. Prawidłowe łamanie stron */

    h1, h2, h3, h4, h5, h6 {

        page-break-after: avoid !important;

        break-after: avoid !important;

        color: #0b1e48 !important;

    }

    img, table, figure {

        page-break-inside: avoid !important;

        break-inside: avoid !important;

    }

    a {

        text-decoration: none !important;

        color: inherit !important;

    }

}

/* Ukryj oryginalną sekcję zdjęcia wyróżniającego zst-ela (przeniesione do środka treści z opływaniem) */

.zst-el-76 .zst-el-element-4e6d939b {

    display: none !important;

}

/* Zdjęcie wyróżniające opływane tekstem (Float Left) */

.zst-featured-float-wrap {

    float: left !important;

    margin: 6px 36px 24px 0 !important;

    border-radius: 12px !important;

    overflow: hidden !important;

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08) !important;

    transition: transform 0.25s ease !important;

}

.zst-featured-float-wrap:hover {

    transform: scale(1.01) !important;

}

.zst-featured-float-wrap.zst-featured-portrait {

    width: 380px !important;

    max-width: 40% !important;

}

.zst-featured-float-wrap.zst-featured-landscape {

    width: 560px !important;

    max-width: 50% !important;

}

.zst-featured-float-wrap img,

.zst-float-img {

    width: 100% !important;

    height: auto !important;

    display: block !important;

    border-radius: 12px !important;

    object-fit: cover !important;

}

@media (max-width: 900px) {

    .zst-featured-float-wrap,

    .zst-featured-float-wrap.zst-featured-portrait,

    .zst-featured-float-wrap.zst-featured-landscape {

        float: none !important;

        width: 100% !important;

        max-width: 100% !important;

        margin: 0 0 24px 0 !important;

    }

}

/* Treść wpisu (Post Content) - pełna szerokość, czytelna czcionka */

.zst-el-76 .zst-el-widget-theme-post-content {

    max-width: 100% !important;

    width: 100% !important;

    margin: 0 0 36px 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border-radius: 0 !important;

    box-shadow: none !important;

    border: none !important;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;

    font-size: 18px !important;

    line-height: 1.85 !important;

    color: #24292f !important;

}

.zst-el-76 .zst-el-widget-theme-post-content::after {

    content: '' !important;

    display: table !important;

    clear: both !important;

}

.zst-el-76 .zst-el-widget-theme-post-content p {

    margin-bottom: 22px !important;

}

.zst-el-76 .zst-el-widget-theme-post-content p strong {

    color: #0b1e48 !important;

    font-weight: 700 !important;

}

.zst-el-76 .zst-el-widget-theme-post-content p:first-of-type {

    font-size: 20px !important;

    font-weight: 500 !important;

    color: #0b1e48 !important;

    line-height: 1.7 !important;

}

/* Pojedyncze zdjęcia wewnątrz treści */

.zst-el-76 .zst-el-widget-theme-post-content :not(.wp-block-gallery) > .wp-block-image img,

.zst-el-76 .zst-el-widget-theme-post-content > img,

.zst-el-76 .zst-el-widget-theme-post-content p > img {

    border-radius: 8px !important;

    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;

    max-width: 100% !important;

    height: auto !important;

    margin: 24px 0 !important;

    display: block !important;

}

/* GALERIA ZDJĘĆ - PEŁNA SZEROKOŚĆ (4 kolumny na desktopie, 3 na laptopie, 2 na telefonie) */

.zst-el-76 .wp-block-gallery,

.zst-el-76 .wp-block-gallery.is-layout-flex,

.zst-el-76 figure.wp-block-gallery {

    float: none !important;

    clear: both !important;

    display: grid !important;

    grid-template-columns: repeat(4, 1fr) !important;

    gap: 16px !important;

    width: 100% !important;

    max-width: 100% !important;

    margin: 40px 0 36px 0 !important;

    padding: 0 !important;

    list-style: none !important;

}

.zst-el-76 .wp-block-gallery::before {

    display: none !important;

}

.zst-el-76 .wp-block-gallery > figure,

.zst-el-76 .wp-block-gallery .wp-block-image,

.zst-el-76 .wp-block-gallery figure.wp-block-image {

    width: 100% !important;

    max-width: 100% !important;

    flex-basis: auto !important;

    margin: 0 !important;

    border-radius: 10px !important;

    overflow: hidden !important;

    aspect-ratio: 4 / 3 !important;

    background: #f1f5f9 !important;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05) !important;

    transition: transform 0.25s ease, box-shadow 0.25s ease !important;

    display: block !important;

}

.zst-el-76 .wp-block-gallery > figure:hover,

.zst-el-76 .wp-block-gallery .wp-block-image:hover {

    transform: translateY(-4px) !important;

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;

}

.zst-el-76 .wp-block-gallery figure a {

    display: block !important;

    width: 100% !important;

    height: 100% !important;

}

.zst-el-76 .wp-block-gallery figure img,

.zst-el-76 .wp-block-gallery .wp-block-image img,

.zst-el-76 .wp-block-gallery figure.wp-block-image img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    display: block !important;

    margin: 0 !important;

    border-radius: 10px !important;

    box-shadow: none !important;

    transition: transform 0.3s ease !important;

}

.zst-el-76 .wp-block-gallery figure:hover img {

    transform: scale(1.04) !important;

}

.zst-el-76 .wp-block-gallery figcaption,

.zst-el-76 .wp-block-gallery .blocks-gallery-item__caption {

    display: none !important;

}

@media (max-width: 1200px) {

    .zst-el-76 .wp-block-gallery,

    .zst-el-76 .wp-block-gallery.is-layout-flex {

        grid-template-columns: repeat(3, 1fr) !important;

    }

}

@media (max-width: 768px) {

    .zst-el-76 .wp-block-gallery,

    .zst-el-76 .wp-block-gallery.is-layout-flex {

        grid-template-columns: repeat(2, 1fr) !important;

        gap: 10px !important;

    }

}

@media (max-width: 480px) {

    .zst-el-76 .wp-block-gallery,

    .zst-el-76 .wp-block-gallery.is-layout-flex {

        grid-template-columns: 1fr !important;

        gap: 10px !important;

    }

}

/* Przycisk "Wróć do aktualności" - wyrównany do prawej strony */

.zst-back-news-wrap {

    width: 100% !important;

    max-width: 100% !important;

    margin: 30px 0 40px 0 !important;

    padding: 0 !important;

    display: flex !important;

    justify-content: flex-end !important;

    text-align: right !important;

    clear: both !important;

}

.zst-back-news-btn {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: #0b1e48 !important;

    color: #ffffff !important;

    padding: 12px 24px !important;

    border-radius: 8px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-weight: 600 !important;

    font-size: 13.5px !important;

    text-decoration: none !important;

    transition: all 0.25s ease !important;

    box-shadow: 0 4px 14px rgba(11, 30, 72, 0.18) !important;

}

.zst-back-news-btn:hover {

    background: #143270 !important;

    color: #ffca28 !important;

    transform: translateX(-4px);

    box-shadow: 0 6px 20px rgba(11, 30, 72, 0.25) !important;

}

/* ==========================================================

   NOWY SYSTEM GALERII (DEDYKOWANY LIGHTBOX ZE ZNAKIEM WODNYM)

   ========================================================== */

.fancybox-container,

.fancybox-is-open,

.fancybox-active {

    display: none !important;

}

.wp-block-gallery figure,

.wp-block-gallery img,

.zst-el-widget-theme-post-content figure.wp-block-image img {

    cursor: pointer !important;

    transition: transform 0.25s ease, box-shadow 0.25s ease !important;

}

.wp-block-gallery figure:hover img,

.zst-el-widget-theme-post-content figure.wp-block-image:hover img {

    transform: scale(1.025) !important;

}

#zst-lightbox-modal {

    position: fixed !important;

    inset: 0 !important;

    background: radial-gradient(circle at center, #10265c 0%, #081432 100%) !important;

    z-index: 99999999 !important;

    display: none;

    align-items: center;

    justify-content: center;

    overflow: hidden !important;

    opacity: 0;

    transition: opacity 0.25s ease;

}

#zst-lightbox-modal.active {

    display: flex !important;

    opacity: 1 !important;

}

/* Znak wodny herbu szkoły w tle podglądu */

#zst-lightbox-modal::before {

    content: '' !important;

    position: absolute !important;

    top: 50% !important;

    left: 50% !important;

    transform: translate(-50%, -50%) !important;

    width: min(70vw, 650px) !important;

    height: min(70vw, 650px) !important;

    background-image: url('/wp-content/mu-plugins/zst-herb-watermark.png') !important;

    background-repeat: no-repeat !important;

    background-position: center !important;

    background-size: contain !important;

    opacity: 0.12 !important;

    pointer-events: none !important;

    z-index: 1 !important;

}

/* Górna belka podglądu */

.zst-lb-topbar {

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    height: 70px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    padding: 0 32px !important;

    z-index: 10 !important;

    background: linear-gradient(to bottom, rgba(8, 20, 50, 0.8) 0%, transparent 100%) !important;

}

.zst-lb-brand {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    color: white !important;

    font-family: 'Montserrat', sans-serif !important;

    user-select: none !important;

}

.zst-lb-brand img {

    height: 38px !important;

    width: auto !important;

    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3)) !important;

}

.zst-lb-brand-text {

    font-size: 13.5px !important;

    font-weight: 700 !important;

    letter-spacing: 0.5px !important;

    color: #ffffff !important;

}

.zst-lb-brand-sub {

    font-size: 11px !important;

    color: #94a3b8 !important;

    font-weight: 400 !important;

}

/* Środek - powiększone zdjęcie */

.zst-lb-content {

    position: relative !important;

    max-width: 90vw !important;

    max-height: 82vh !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    z-index: 5 !important;

}

.zst-lb-img {

    max-width: 86vw !important;

    max-height: 80vh !important;

    object-fit: contain !important;

    border-radius: 8px !important;

    box-shadow: 0 16px 50px rgba(0,0,0,0.6) !important;

    border: 1px solid rgba(255,255,255,0.12) !important;

    user-select: none !important;

}

/* Przycisk zamknięcia [X] */

.zst-lb-close {

    width: 44px !important;

    height: 44px !important;

    background: rgba(255,255,255,0.12) !important;

    color: #ffffff !important;

    border: 1px solid rgba(255,255,255,0.25) !important;

    border-radius: 50% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 20px !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

}

.zst-lb-close:hover {

    background: #e11d48 !important;

    border-color: #e11d48 !important;

    transform: scale(1.08) rotate(90deg) !important;

}

/* Strzałki nawigacyjne */

.zst-lb-arrow {

    position: absolute !important;

    top: 50% !important;

    transform: translateY(-50%) !important;

    width: 52px !important;

    height: 52px !important;

    background: rgba(255,255,255,0.1) !important;

    color: white !important;

    border: 1px solid rgba(255,255,255,0.2) !important;

    border-radius: 50% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 28px !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

    z-index: 10 !important;

    user-select: none !important;

}

.zst-lb-arrow:hover {

    background: rgba(255,255,255,0.25) !important;

    transform: translateY(-50%) scale(1.1) !important;

}

.zst-lb-prev { left: 24px !important; }

.zst-lb-next { right: 24px !important; }

/* Licznik zdjęć */

.zst-lb-counter {

    position: absolute !important;

    bottom: 22px !important;

    left: 50% !important;

    transform: translateX(-50%) !important;

    background: rgba(8, 20, 50, 0.75) !important;

    border: 1px solid rgba(255,255,255,0.15) !important;

    color: #cbd5e1 !important;

    padding: 6px 18px !important;

    border-radius: 20px !important;

    font-size: 13px !important;

    font-family: 'Montserrat', sans-serif !important;

    letter-spacing: 1px !important;

    z-index: 10 !important;

    user-select: none !important;

}

/* ==========================================================

   WPDM DOWNLOAD PAGES (.single-wpdmpro, /download/...)

   ========================================================== */

.single-wpdmpro .page-header {

    max-width: 1000px !important;

    margin: 28px auto 0 auto !important;

    padding: 0 16px !important;

}

.single-wpdmpro .page-header .entry-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(24px, 3.5vw, 36px) !important;

    font-weight: 800 !important;

    color: #0b1e48 !important;

    line-height: 1.25 !important;

    letter-spacing: -0.02em !important;

}

.zst-wpdm-wrapper {

    max-width: 1000px !important;

    margin: 20px auto 48px auto !important;

    padding: 0 16px !important;

    font-family: 'Montserrat', sans-serif !important;

}

.zst-wpdm-card {

    background: #ffffff !important;

    border-radius: 16px !important;

    padding: 32px !important;

    box-shadow: 0 6px 30px rgba(0, 0, 0, 0.05) !important;

    border: 1px solid rgba(0, 0, 0, 0.06) !important;

}

.zst-wpdm-bottom-bar {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    flex-wrap: wrap !important;

    gap: 14px !important;

    margin-top: 18px !important;

    padding-top: 16px !important;

    border-top: 1px solid #f1f5f9 !important;

}

.zst-wpdm-meta-row {

    display: flex !important;

    flex-wrap: wrap !important;

    gap: 8px !important;

    align-items: center !important;

    margin: 0 !important;

}

.zst-wpdm-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 5px !important;

    background: #f8fafc !important;

    color: #475569 !important;

    font-size: 11.5px !important;

    font-weight: 600 !important;

    padding: 4px 10px !important;

    border-radius: 0 !important;

    border: 1px solid #e2e8f0 !important;

}

.zst-wpdm-badge i {

    color: #0b1e48 !important;

    font-size: 11px !important;

}

.zst-wpdm-badge.zst-badge-pdf {

    background: #fef2f2 !important;

    color: #b91c1c !important;

    border-color: #fecaca !important;

}

.zst-wpdm-badge.zst-badge-pdf i {

    color: #dc2626 !important;

}

.wpdm_hide, .wpdm_remove_empty {

    display: none !important;

}

.zst-wpdm-description:empty {

    display: none !important;

}

.zst-wpdm-download-bar {

    margin: 0 !important;

}

.zst-wpdm-download-bar a.wpdm-download-link {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: linear-gradient(135deg, #0b1e48 0%, #153b82 100%) !important;

    color: #ffffff !important;

    font-family: 'Montserrat', sans-serif !important;

    font-weight: 600 !important;

    font-size: 13px !important;

    padding: 8px 18px !important;

    border-radius: 8px !important;

    text-decoration: none !important;

    box-shadow: 0 4px 14px rgba(11, 30, 72, 0.16) !important;

    transition: all 0.2s ease !important;

    border: 1px solid rgba(255, 255, 255, 0.1) !important;

}

.zst-wpdm-download-bar a.wpdm-download-link:hover {

    background: linear-gradient(135deg, #153b82 0%, #1d4ed8 100%) !important;

    color: #ffca28 !important;

    transform: translateY(-1px) !important;

    box-shadow: 0 6px 18px rgba(11, 30, 72, 0.25) !important;

}

.zst-wpdm-download-bar a.wpdm-download-link::before {

    content: "\f019" !important;

    font-family: "Font Awesome 5 Free" !important;

    font-weight: 900 !important;

    font-size: 13px !important;

    margin-right: 4px !important;

}

.zst-wpdm-viewer-frame {

    border-radius: 12px !important;

    overflow: hidden !important;

    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;

    border: 1px solid #e2e8f0 !important;

    margin-bottom: 0 !important;

}

.zst-wpdm-viewer-frame iframe {

    width: 100% !important;

    height: 750px !important;

    border: 0 !important;

    display: block !important;

    background: #f8fafc !important;

}

@media (max-width: 768px) {

    .zst-wpdm-viewer-frame iframe {

        height: 520px !important;

    }

}

/* ==========================================================

   STRONY KATEGORII I ARCHIWUM (SIATKA KAFELKÓW - 3 KOLUMNY)

   ========================================================== */

body.archive #content.site-main {

    max-width: 1440px !important;

    margin: 0 auto !important;

    padding: 24px 34px 60px 34px !important;

    box-sizing: border-box !important;

    width: 100% !important;

}

/* Nagłówek kategorii - dopasowany do stylu artykułów */

body.archive .page-header {

    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;

    border: 1px solid #e2e8f0 !important;

    border-left: 5px solid #0b1e48 !important;

    border-radius: 12px !important;

    padding: 26px 32px !important;

    margin: 10px 0 36px 0 !important;

    box-shadow: 0 2px 10px rgba(11, 30, 72, 0.04) !important;

    display: flex !important;

    flex-direction: column !important;

    gap: 8px !important;

}

body.archive .page-header .entry-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(26px, 2.8vw, 36px) !important;

    font-weight: 800 !important;

    color: #0b1e48 !important;

    margin: 0 !important;

    padding: 0 !important;

    line-height: 1.25 !important;

    letter-spacing: -0.015em !important;

}

body.archive .page-header .entry-title span {

    color: #10265c !important;

}

/* Siatka kafelków (3 kolumny na desktopie) */

body.archive .page-content {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 28px !important;

    margin-bottom: 40px !important;

    width: 100% !important;

}

/* Pojedynczy kafelek wpisu */

body.archive article.post {

    display: flex !important;

    flex-direction: column !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    overflow: hidden !important;

    box-shadow: 0 4px 14px rgba(11, 30, 72, 0.05) !important;

    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

    height: 100% !important;

    box-sizing: border-box !important;

    position: relative !important;

    margin: 0 !important;

}

body.archive article.post:hover {

    transform: translateY(-5px) !important;

    box-shadow: 0 14px 30px rgba(11, 30, 72, 0.12) !important;

    border-color: #cbd5e1 !important;

}

/* Zdjęcie u góry kafelka */

body.archive article.post > a:has(img),

body.archive article.post > .post-thumbnail {

    order: 1 !important;

    display: block !important;

    width: 100% !important;

    height: 220px !important;

    overflow: hidden !important;

    background: #f1f5f9 !important;

    position: relative !important;

    flex-shrink: 0 !important;

}

body.archive article.post > a:has(img) img,

body.archive article.post img.wp-post-image {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    display: block !important;

    transition: transform 0.35s ease !important;

}

body.archive article.post:hover img.wp-post-image {

    transform: scale(1.05) !important;

}

/* Placeholder jeśli wpis nie ma zdjęcia */

body.archive article.post:not(:has(img))::before {

    content: '' !important;

    order: 1 !important;

    display: block !important;

    width: 100% !important;

    height: 180px !important;

    background: linear-gradient(135deg, #10265c 0%, #081432 100%) !important;

    background-image: url('/wp-content/mu-plugins/zst-herb-watermark.png') !important;

    background-size: 80px auto !important;

    background-repeat: no-repeat !important;

    background-position: center !important;

    flex-shrink: 0 !important;

}

/* Tytuł wpisu w kafelku */

body.archive article.post .entry-title {

    order: 2 !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 19px !important;

    font-weight: 750 !important;

    line-height: 1.35 !important;

    margin: 20px 22px 10px 22px !important;

    padding: 0 !important;

}

body.archive article.post .entry-title a {

    color: #0b1e48 !important;

    text-decoration: none !important;

    transition: color 0.2s ease !important;

}

body.archive article.post .entry-title a:hover {

    color: #1e40af !important;

}

/* Skrót treści (Excerpt) */

body.archive article.post p {

    order: 3 !important;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

    font-size: 14px !important;

    line-height: 1.6 !important;

    color: #64748b !important;

    margin: 0 22px 20px 22px !important;

    flex-grow: 1 !important;

    display: -webkit-box !important;

    -webkit-line-clamp: 3 !important;

    -webkit-box-orient: vertical !important;

    overflow: hidden !important;

}

/* Przycisk "Czytaj dalej" */

body.archive article.post .zst-read-more-btn {

    order: 4 !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    color: #0b1e48 !important;

    margin: auto 22px 22px 22px !important;

    text-decoration: none !important;

    transition: transform 0.2s ease, color 0.2s ease !important;

}

body.archive article.post .zst-read-more-btn i {

    font-size: 12px !important;

    transition: transform 0.2s ease !important;

}

body.archive article.post:hover .zst-read-more-btn {

    color: #1e40af !important;

    transform: translateX(4px) !important;

}

/* Nawigacja / Paginacja (ZST Leszno) */

body.archive .pagination,

.zst-modern-pagination {

    display: flex !important;

    justify-content: center !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap: 8px !important;

    margin: 40px auto 20px auto !important;

    padding: 16px 0 !important;

    font-family: 'Montserrat', sans-serif !important;

    max-width: 100% !important;

}

body.archive .pagination a,

body.archive .pagination .page-numbers,

.zst-modern-pagination a,

.zst-modern-pagination .page-numbers {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    min-width: 42px !important;

    height: 42px !important;

    padding: 0 14px !important;

    border-radius: 10px !important;

    font-size: 14px !important;

    font-weight: 700 !important;

    text-decoration: none !important;

    border: 1px solid #cbd5e1 !important;

    background: #ffffff !important;

    color: #0b1e48 !important;

    box-shadow: 0 2px 6px rgba(11, 30, 72, 0.05) !important;

    transition: all 0.2s ease !important;

    gap: 8px !important;

}

body.archive .pagination a:hover,

.zst-modern-pagination a:hover {

    background: #0b1e48 !important;

    color: #ffffff !important;

    border-color: #0b1e48 !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 6px 14px rgba(11, 30, 72, 0.15) !important;

}

body.archive .pagination .page-numbers.current,

.zst-modern-pagination .page-numbers.current {

    background: #0b1e48 !important;

    color: #ffffff !important;

    border-color: #0b1e48 !important;

    box-shadow: 0 4px 12px rgba(11, 30, 72, 0.2) !important;

    cursor: default !important;

    transform: none !important;

}

body.archive .pagination .page-numbers.dots,

.zst-modern-pagination .page-numbers.dots {

    border: none !important;

    background: transparent !important;

    box-shadow: none !important;

    color: #94a3b8 !important;

    min-width: 24px !important;

    padding: 0 4px !important;

    cursor: default !important;

    transform: none !important;

}

body.archive .pagination .prev,

body.archive .pagination .next,

.zst-modern-pagination .prev,

.zst-modern-pagination .next {

    padding: 0 18px !important;

    font-weight: 600 !important;

    background: #f8fafc !important;

}

body.archive .pagination .prev:hover,

body.archive .pagination .next:hover,

.zst-modern-pagination .prev:hover,

.zst-modern-pagination .next:hover {

    background: #1e40af !important;

    border-color: #1e40af !important;

    color: #ffffff !important;

}

/* Reset wewnętrznego .meta-nav, aby nigdy nie tworzył podwójnej ramki */

body.archive .pagination .meta-nav,

.zst-modern-pagination .meta-nav,

body.archive .pagination a span,

.zst-modern-pagination a span {

    display: inline !important;

    border: none !important;

    background: transparent !important;

    padding: 0 !important;

    margin: 0 !important;

    min-width: unset !important;

    height: unset !important;

    box-shadow: none !important;

    border-radius: 0 !important;

    color: inherit !important;

}

/* Responsywność siatki kafelków */

@media (max-width: 1024px) {

    body.archive .page-content {

        grid-template-columns: repeat(2, 1fr) !important;

        gap: 20px !important;

    }

}

@media (max-width: 640px) {

    body.archive #content.site-main {

        padding: 16px 16px 40px 16px !important;

    }

    body.archive .page-header {

        padding: 18px 20px !important;

        margin: 6px 0 24px 0 !important;

        border-radius: 8px !important;

    }

    body.archive .page-content {

        grid-template-columns: 1fr !important;

        gap: 20px !important;

    }

}

/* ==========================================================================

   SUBPAGE MODERNIZATION (Podstrony ZST)

   ========================================================================== */

/* Subpage Header Card */

.zst-page-header-card {

    background: #ffffff !important;

    border-radius: 14px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 4px 16px rgba(14, 30, 71, 0.04) !important;

    padding: 14px 22px !important;

    margin: 10px 0 20px 0 !important;

    position: relative !important;

    overflow: hidden !important;

}

.zst-page-header-card::before {

    content: '' !important;

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    height: 3px !important;

    background: linear-gradient(90deg, #0e1e47 0%, #1e40af 50%, #f97316 100%) !important;

}

.zst-page-title-row {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap: 16px !important;

    margin-top: 6px !important;

}

.zst-page-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(20px, 2.3vw, 28px) !important;

    font-weight: 800 !important;

    color: #0e1e47 !important;

    line-height: 1.25 !important;

    margin: 0 !important;

    flex: 1 1 auto !important;

    min-width: 0 !important;

}

/* Hide default zst-el post title widget if replaced */

.zst-el-widget-theme-post-title .zst-el-heading-title:has(+ .zst-page-header-card) {

    display: none !important;

}

/* Content Wrapper */

.zst-page-content-wrap {

    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

    font-size: 15.5px !important;

    line-height: 1.75 !important;

    color: #334155 !important;

}

.zst-page-content-wrap h2,

.zst-page-content-wrap h3,

.zst-page-content-wrap h4 {

    font-family: 'Montserrat', sans-serif !important;

    font-weight: 700 !important;

    color: #0e1e47 !important;

    margin-top: 32px !important;

    margin-bottom: 14px !important;

    position: relative !important;

}

.zst-page-content-wrap h2 {

    font-size: 22px !important;

    border-left: 4px solid #f97316 !important;

    padding-left: 12px !important;

}

.zst-page-content-wrap h3 {

    font-size: 18px !important;

    border-left: 4px solid #1e40af !important;

    padding-left: 12px !important;

}

.zst-page-content-wrap p {

    margin-bottom: 16px !important;

}

.zst-page-content-wrap a:not(.zst-hub-card):not(.zst-action-btn):not([class*="zst-btn"]):not(.zst-portal-btn):not([class*="portal-btn"]):not(.zst-doc-item):not([class*="doc-item"]):not([class*="dup-btn"]) {

    color: #1e40af !important;

    text-decoration: underline !important;

    font-weight: 500 !important;

    transition: color 0.15s ease !important;

}

.zst-page-content-wrap a:not(.zst-hub-card):not(.zst-action-btn):not([class*="zst-btn"]):not(.zst-portal-btn):not([class*="portal-btn"]):not(.zst-doc-item):not([class*="doc-item"]):not([class*="dup-btn"]):hover {

    color: #f97316 !important;

}

/* Modern Tables */

.zst-table-wrap {

    width: 100% !important;

    overflow-x: auto !important;

    -webkit-overflow-scrolling: touch !important;

    margin: 20px 0 32px 0 !important;

    border-radius: 14px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 4px 16px rgba(14, 30, 71, 0.04) !important;

    background: #ffffff !important;

}

.zst-table-wrap table {

    width: 100% !important;

    border-collapse: collapse !important;

    border: none !important;

    margin: 0 !important;

    font-size: 14.5px !important;

    background: #ffffff !important;

}

.zst-table-wrap th,

.zst-table-wrap thead th,

.zst-table-wrap thead td {

    background: #0e1e47 !important;

    color: #ffffff !important;

    font-family: 'Montserrat', sans-serif !important;

    font-weight: 700 !important;

    font-size: 13.5px !important;

    letter-spacing: 0.3px !important;

    padding: 14px 18px !important;

    text-align: left !important;

    border: none !important;

}

.zst-table-wrap td {

    padding: 12px 18px !important;

    border-top: 1px solid #f1f5f9 !important;

    border-bottom: none !important;

    border-left: none !important;

    border-right: none !important;

    color: #334155 !important;

    vertical-align: middle !important;

}

.zst-table-wrap tr:nth-child(even) td {

    background-color: #f8fafc !important;

}

.zst-table-wrap tr:hover td {

    background-color: #f0f7ff !important;

}

.zst-table-wrap td:first-child {

    font-weight: 600 !important;

    color: #0e1e47 !important;

}

/* Hub Grid (Cards for navigation pages like /szkola/, /uczniowie/) */

.zst-hub-grid {

    display: grid !important;

    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;

    gap: 20px !important;

    margin: 24px 0 36px 0 !important;

}

.zst-hub-card {

    display: flex !important;

    flex-direction: column !important;

    justify-content: space-between !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    padding: 24px 22px !important;

    text-decoration: none !important;

    box-shadow: 0 4px 16px rgba(14, 30, 71, 0.04) !important;

    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;

    position: relative !important;

    overflow: hidden !important;

}

.zst-hub-card::before {

    content: '' !important;

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    height: 3px !important;

    background: #0e1e47 !important;

    transition: background 0.2s ease !important;

}

.zst-hub-card:hover {

    transform: translateY(-4px) !important;

    box-shadow: 0 12px 28px rgba(14, 30, 71, 0.1) !important;

    border-color: #cbd5e1 !important;

}

.zst-hub-card:hover::before {

    background: linear-gradient(90deg, #1e40af 0%, #f97316 100%) !important;

}

.zst-hub-card-icon {

    width: 44px !important;

    height: 44px !important;

    border-radius: 10px !important;

    background: #f0f7ff !important;

    color: #1e40af !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 20px !important;

    margin-bottom: 14px !important;

    transition: all 0.2s ease !important;

}

.zst-hub-card:hover .zst-hub-card-icon {

    background: #0e1e47 !important;

    color: #ffffff !important;

}

.zst-hub-card-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 16px !important;

    font-weight: 700 !important;

    color: #0e1e47 !important;

    margin: 0 0 8px 0 !important;

    line-height: 1.3 !important;

    border: none !important;

    padding: 0 !important;

}

.zst-hub-card-desc {

    font-size: 13.5px !important;

    color: #64748b !important;

    line-height: 1.5 !important;

    margin: 0 0 16px 0 !important;

    flex-grow: 1 !important;

}

.zst-hub-card-action {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    color: #1e40af !important;

    text-transform: uppercase !important;

    letter-spacing: 0.4px !important;

}

.zst-hub-card:hover .zst-hub-card-action {

    color: #f97316 !important;

}

.zst-hub-card-action i {

    transition: transform 0.2s ease !important;

}

.zst-hub-card:hover .zst-hub-card-action i {

    transform: translateX(4px) !important;

}

/* Sidebar Polishing for Subpages */

.zst-el-element-64aa9c1 .zst-el-widget-wrap {

    background: #ffffff !important;

    border-radius: 16px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 4px 20px rgba(14, 30, 71, 0.04) !important;

    padding: 24px 20px !important;

}

.zst-el-element-64aa9c1 .zst-el-element-49ce9c1 h2 {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 18px !important;

    font-weight: 800 !important;

    color: #0e1e47 !important;

    margin: 0 0 16px 0 !important;

    padding-bottom: 12px !important;

    border-bottom: 2px solid #f1f5f9 !important;

    position: relative !important;

}

.zst-el-element-64aa9c1 .zst-el-element-49ce9c1 h2::after {

    content: '' !important;

    position: absolute !important;

    bottom: -2px !important;

    left: 0 !important;

    width: 40px !important;

    height: 2px !important;

    background: #f97316 !important;

}

/* ==========================================================================

   TIMELINE (Historia ZST)

   ========================================================================== */

.zst-timeline {

    position: relative !important;

    margin: 30px 0 40px 20px !important;

    padding-left: 28px !important;

    border-left: 3px solid #e2e8f0 !important;

}

.zst-timeline-item {

    position: relative !important;

    margin-bottom: 28px !important;

}

.zst-timeline-badge {

    position: absolute !important;

    left: -44px !important;

    top: 4px !important;

    width: 30px !important;

    height: 30px !important;

    border-radius: 50% !important;

    background: #0e1e47 !important;

    color: #ffffff !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 13px !important;

    border: 3px solid #ffffff !important;

    box-shadow: 0 2px 8px rgba(14, 30, 71, 0.2) !important;

    transition: all 0.2s ease !important;

}

.zst-timeline-item:hover .zst-timeline-badge {

    background: #f97316 !important;

    transform: scale(1.15) !important;

}

.zst-timeline-card {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    padding: 18px 22px !important;

    box-shadow: 0 4px 14px rgba(14, 30, 71, 0.04) !important;

    transition: all 0.2s ease !important;

}

.zst-timeline-card:hover {

    border-color: #cbd5e1 !important;

    box-shadow: 0 8px 22px rgba(14, 30, 71, 0.08) !important;

    transform: translateX(4px) !important;

}

.zst-timeline-year {

    display: inline-block !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 15px !important;

    font-weight: 800 !important;

    color: #1e40af !important;

    background: #f0f7ff !important;

    padding: 3px 12px !important;

    border-radius: 0 !important;

    margin-bottom: 8px !important;

}

.zst-timeline-desc {

    font-size: 14.5px !important;

    line-height: 1.65 !important;

    color: #334155 !important;

    margin: 0 !important;

}

/* ==========================================================================

   ODDZIAŁY & PROFILE ZAWODOWE

   ========================================================================== */

.zst-lead-text {

    font-size: 17px !important;

    font-weight: 500 !important;

    color: #475569 !important;

    margin-bottom: 24px !important;

}

.zst-oddzialy-grid {

    display: grid !important;

    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;

    gap: 22px !important;

    margin: 24px 0 36px 0 !important;

}

.zst-oddzial-card {

    display: flex !important;

    flex-direction: column !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    overflow: hidden !important;

    box-shadow: 0 4px 16px rgba(14, 30, 71, 0.05) !important;

    transition: all 0.25s ease !important;

}

.zst-oddzial-card:hover {

    transform: translateY(-4px) !important;

    border-color: #cbd5e1 !important;

    box-shadow: 0 12px 28px rgba(14, 30, 71, 0.1) !important;

}

.zst-oddzial-img-wrap {

    height: 170px !important;

    background: #f8fafc !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    overflow: hidden !important;

    border-bottom: 1px solid #edf2f7 !important;

    padding: 16px !important;

}

.zst-oddzial-img-wrap img {

    max-height: 100% !important;

    width: auto !important;

    object-fit: contain !important;

    transition: transform 0.3s ease !important;

}

.zst-oddzial-icon-wrap {

    background: linear-gradient(135deg, #0e1e47 0%, #1e40af 100%) !important;

    color: #ffffff !important;

    font-size: 52px !important;

}

.zst-oddzial-icon-wrap i {

    color: #ffffff !important;

    filter: drop-shadow(0 4px 12px rgba(0,0,0,0.25)) !important;

    transition: transform 0.3s ease, color 0.3s ease !important;

}

.zst-oddzial-card:hover .zst-oddzial-icon-wrap i {

    transform: scale(1.15) !important;

    color: #f97316 !important;

}

.zst-oddzial-card:hover .zst-oddzial-img-wrap img {

    transform: scale(1.06) !important;

}

.zst-oddzial-body {

    padding: 20px !important;

    display: flex !important;

    flex-direction: column !important;

    flex-grow: 1 !important;

    justify-content: space-between !important;

}

.zst-oddzial-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 17px !important;

    font-weight: 700 !important;

    color: #0e1e47 !important;

    margin: 0 0 10px 0 !important;

    line-height: 1.35 !important;

    border: none !important;

    padding: 0 !important;

}

.zst-oddzial-desc {

    font-size: 13.5px !important;

    color: #64748b !important;

    line-height: 1.6 !important;

    margin: 0 0 16px 0 !important;

    flex-grow: 1 !important;

}

.zst-oddzial-link {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    color: #1e40af !important;

    text-transform: uppercase !important;

    letter-spacing: 0.4px !important;

    text-decoration: none !important;

}

.zst-oddzial-card:hover .zst-oddzial-link {

    color: #f97316 !important;

}

.zst-oddzial-link i {

    transition: transform 0.2s ease !important;

}

.zst-oddzial-card:hover .zst-oddzial-link i {

    transform: translateX(4px) !important;

}

/* ==========================================================================

   14. NOWOCZESNA POLSKA STRONA BŁĘDU 404 (ZST LESZNO)

   ========================================================================== */

body.error404 header,

body.error404 footer,

body.error404 #site-header,

body.error404 #site-footer,

body.error404 .ekit-template-content-header,

body.error404 .ekit-template-content-footer,

body.error404 .zst-el-36056,

body.error404 .zst-el-36057,

body.error404 .zst-el-element-28a0c7bb,

body.error404 .zst-el-79 > .zst-el-section:not(.zst-404-hero),

body.error404 a.skip-link,

body.error404 a.screen-reader-text {

    display: none !important;

}

body.error404 {

    background: #f8fafc !important;

    min-height: 100vh !important;

    min-height: 100dvh !important;

    display: flex !important;

    flex-direction: column !important;

    margin: 0 !important;

    padding: 0 !important;

}

body.error404 .site-main,

body.error404 .page-content,

body.error404 .zst-el-79 {

    flex: 1 1 auto !important;

    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;

}

.zst-404-wrapper {

    width: 100% !important;

    min-height: 100vh !important;

    min-height: 100dvh !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    background: #f8fafc !important;

    padding: 40px 20px !important;

    position: relative !important;

    overflow: hidden !important;

    box-sizing: border-box !important;

}

.zst-404-hero {

    width: 100% !important;

    max-width: 860px !important;

    margin: 0 auto !important;

    position: relative !important;

    z-index: 2 !important;

}

/* Dekoracyjne poświaty w tle */

.zst-404-decor-circle {

    position: absolute !important;

    border-radius: 50% !important;

    filter: blur(80px) !important;

    opacity: 0.12 !important;

    pointer-events: none !important;

    z-index: 1 !important;

}

.zst-404-decor-1 {

    width: 380px !important;

    height: 380px !important;

    background: #1e40af !important;

    top: -60px !important;

    left: -60px !important;

}

.zst-404-decor-2 {

    width: 320px !important;

    height: 320px !important;

    background: #f97316 !important;

    bottom: -50px !important;

    right: -50px !important;

}

/* Główna karta 404 */

.zst-404-card {

    background: #ffffff !important;

    border-radius: 24px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 25px 60px -15px rgba(11, 30, 72, 0.1), 0 0 0 1px rgba(11, 30, 72, 0.03) !important;

    padding: clamp(32px, 5vw, 55px) clamp(22px, 4vw, 50px) !important;

    text-align: center !important;

    position: relative !important;

    z-index: 2 !important;

}

/* Status Pill */

.zst-404-pill {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: #fef2f2 !important;

    border: 1px solid #fecaca !important;

    padding: 6px 16px !important;

    border-radius: 9999px !important;

    margin-bottom: 22px !important;

}

.zst-404-dot {

    width: 8px !important;

    height: 8px !important;

    border-radius: 50% !important;

    background: #ef4444 !important;

    box-shadow: 0 0 8px #ef4444 !important;

    animation: zstPulseDot 2s infinite !important;

}

@keyframes zstPulseDot {

    0%, 100% { opacity: 1; transform: scale(1); }

    50% { opacity: 0.35; transform: scale(0.8); }

}

.zst-404-pill-text {

    font-size: 12px !important;

    font-weight: 700 !important;

    color: #991b1b !important;

    letter-spacing: 0.06em !important;

    text-transform: uppercase !important;

    font-family: 'Montserrat', sans-serif !important;

}

/* Monumentalny graficzny środek: 4 [GEAR + HERB] 4 */

.zst-404-visual {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: clamp(12px, 2.5vw, 24px) !important;

    margin-bottom: 20px !important;

}

.zst-404-num {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(75px, 12vw, 130px) !important;

    font-weight: 900 !important;

    line-height: 1 !important;

    color: #0b1e48 !important;

    background: linear-gradient(135deg, #0b1e48 0%, #1e40af 65%, #3b82f6 100%) !important;

    -webkit-background-clip: text !important;

    -webkit-text-fill-color: transparent !important;

    filter: drop-shadow(0 10px 20px rgba(11, 30, 72, 0.12)) !important;

    user-select: none !important;

}

.zst-404-gear-wrap {

    width: clamp(80px, 12vw, 130px) !important;

    height: clamp(80px, 12vw, 130px) !important;

    position: relative !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

}

.zst-404-gear-ring {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    animation: zstRotateGear 25s linear infinite !important;

    filter: drop-shadow(0 6px 16px rgba(11, 30, 72, 0.16)) !important;

}

.zst-gear-svg {

    width: 100% !important;

    height: 100% !important;

    display: block !important;

}

@keyframes zstRotateGear {

    from { transform: rotate(0deg); }

    to { transform: rotate(360deg); }

}

.zst-404-emblem {

    width: 58% !important;

    height: 58% !important;

    border-radius: 50% !important;

    background: #ffffff !important;

    box-shadow: 0 4px 14px rgba(11, 30, 72, 0.14), inset 0 0 0 1.5px #e2e8f0 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    z-index: 2 !important;

    padding: 6px !important;

    box-sizing: border-box !important;

    transition: transform 0.3s ease !important;

}

.zst-404-emblem:hover {

    transform: scale(1.08) !important;

}

.zst-404-herb-img {

    max-width: 85% !important;

    max-height: 85% !important;

    object-fit: contain !important;

    display: block !important;

}

/* Nagłówki i opis */

.zst-404-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(22px, 3.2vw, 32px) !important;

    font-weight: 700 !important;

    color: #0b1e48 !important;

    margin: 0 0 12px 0 !important;

    line-height: 1.25 !important;

}

.zst-404-desc {

    font-family: 'Inter', sans-serif !important;

    font-size: clamp(14px, 1.6vw, 15.5px) !important;

    color: #475569 !important;

    line-height: 1.6 !important;

    max-width: 620px !important;

    margin: 0 auto 30px auto !important;

}

/* Wyszukiwarka */

.zst-404-search-box {

    max-width: 560px !important;

    margin: 0 auto 32px auto !important;

}

.zst-404-search-inner {

    display: flex !important;

    align-items: center !important;

    background: #f8fafc !important;

    border: 2px solid #cbd5e1 !important;

    border-radius: 50px !important;

    padding: 4px 6px 4px 18px !important;

    transition: all 0.25s ease !important;

}

.zst-404-search-inner:focus-within {

    background: #ffffff !important;

    border-color: #1e40af !important;

    box-shadow: 0 0 0 4px rgba(30, 64, 175, 0.12) !important;

}

.zst-404-search-input-wrap {

    display: flex !important;

    align-items: center !important;

    flex: 1 !important;

    min-width: 0 !important;

}

.zst-404-search-icon {

    color: #64748b !important;

    font-size: 15px !important;

    margin-right: 12px !important;

    flex-shrink: 0 !important;

}

.zst-404-search-input {

    flex: 1 !important;

    width: 100% !important;

    border: none !important;

    background: transparent !important;

    padding: 10px 0 !important;

    font-family: 'Inter', sans-serif !important;

    font-size: 14px !important;

    color: #0f172a !important;

    outline: none !important;

    box-shadow: none !important;

}

.zst-404-search-input::placeholder {

    color: #94a3b8 !important;

}

.zst-404-search-btn {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: linear-gradient(135deg, #0b1e48, #1e40af) !important;

    color: #ffffff !important;

    border: none !important;

    border-radius: 40px !important;

    padding: 10px 22px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 13.5px !important;

    font-weight: 600 !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

    flex-shrink: 0 !important;

}

.zst-404-search-btn:hover {

    background: linear-gradient(135deg, #1e40af, #2563eb) !important;

    transform: translateY(-1px) !important;

    box-shadow: 0 4px 12px rgba(30, 64, 175, 0.25) !important;

}

/* Szybkie linki */

.zst-404-actions {

    margin-top: 10px !important;

    padding-top: 24px !important;

    border-top: 1px solid #f1f5f9 !important;

}

.zst-404-actions-title {

    font-size: 13px !important;

    font-weight: 600 !important;

    color: #64748b !important;

    margin-bottom: 14px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 6px !important;

    font-family: 'Montserrat', sans-serif !important;

}

.zst-404-btn-grid {

    display: flex !important;

    flex-wrap: wrap !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 10px !important;

}

.zst-404-btn {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    padding: 10px 18px !important;

    border-radius: 10px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 13px !important;

    font-weight: 600 !important;

    text-decoration: none !important;

    transition: all 0.2s ease !important;

    cursor: pointer !important;

}

.zst-404-btn-primary {

    background: #0b1e48 !important;

    color: #ffffff !important;

    border: 1px solid #0b1e48 !important;

}

.zst-404-btn-primary:hover {

    background: #1e40af !important;

    color: #ffffff !important;

    border-color: #1e40af !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 6px 15px rgba(11, 30, 72, 0.15) !important;

}

.zst-404-btn-neutral {

    background: #f8fafc !important;

    color: #1e293b !important;

    border: 1px solid #e2e8f0 !important;

}

.zst-404-btn-neutral:hover {

    background: #ffffff !important;

    color: #1e40af !important;

    border-color: #cbd5e1 !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;

}

.zst-404-btn-ghost {

    background: transparent !important;

    color: #64748b !important;

    border: 1px dashed #cbd5e1 !important;

}

.zst-404-btn-ghost:hover {

    background: #f1f5f9 !important;

    color: #0b1e48 !important;

    border-style: solid !important;

    border-color: #94a3b8 !important;

    transform: translateY(-2px) !important;

}

@media (max-width: 640px) {

    .zst-404-wrapper {

        padding: 24px 14px 40px 14px !important;

    }

    .zst-404-card {

        padding: 28px 16px !important;

        border-radius: 18px !important;

    }

    .zst-404-search-inner {

        flex-direction: column !important;

        border-radius: 16px !important;

        padding: 8px 10px 10px 10px !important;

        gap: 8px !important;

    }

    .zst-404-search-input-wrap {

        width: 100% !important;

        padding: 4px 6px !important;

    }

    .zst-404-search-input {

        text-align: left !important;

    }

    .zst-404-search-btn {

        width: 100% !important;

        justify-content: center !important;

        border-radius: 10px !important;

        padding: 11px 16px !important;

    }

    .zst-404-btn-grid {

        flex-direction: column !important;

        width: 100% !important;

    }

    .zst-404-btn {

        width: 100% !important;

        justify-content: center !important;

    }

}

/* ==========================================================================

   15. NOWOCZESNA PREZENTACJA HISTORII SZKOŁY (ZST LESZNO)

   ========================================================================== */

.zst-hist-container {

    width: 100% !important;

    margin: 0 0 40px 0 !important;

    font-family: 'Inter', sans-serif !important;

}

/* Hero Wprowadzenie */

.zst-hist-hero {

    background: linear-gradient(135deg, #0b1e48 0%, #17387e 60%, #1e40af 100%) !important;

    border-radius: 20px !important;

    padding: clamp(24px, 4vw, 36px) clamp(20px, 3.5vw, 32px) !important;

    color: #ffffff !important;

    margin-bottom: 40px !important;

    box-shadow: 0 15px 35px -5px rgba(11, 30, 72, 0.18) !important;

    position: relative !important;

    overflow: hidden !important;

}

.zst-hist-hero::after {

    content: '' !important;

    position: absolute !important;

    right: -40px !important;

    bottom: -40px !important;

    width: 240px !important;

    height: 240px !important;

    background: url('/wp-content/mu-plugins/zst-herb-watermark.png') no-repeat center center / contain !important;

    opacity: 0.08 !important;

    pointer-events: none !important;

}

.zst-hist-hero-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: rgba(255, 255, 255, 0.12) !important;

    backdrop-filter: blur(8px) !important;

    border: 1px solid rgba(255, 255, 255, 0.2) !important;

    padding: 6px 14px !important;

    border-radius: 30px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 11.5px !important;

    font-weight: 700 !important;

    letter-spacing: 0.05em !important;

    color: #fde047 !important;

    margin-bottom: 16px !important;

}

/* Wykluczenie specjalnego kontenera historii z ogólnych stylów nagłówków artykułów */

.zst-page-content-wrap .zst-hist-container h1,

.zst-page-content-wrap .zst-hist-container h2,

.zst-page-content-wrap .zst-hist-container h3,

.zst-page-content-wrap .zst-hist-container h4 {

    border-left: none !important;

    padding-left: 0 !important;

    margin-top: 0 !important;

}

.zst-hist-hero .zst-hist-hero-title,

.zst-page-content-wrap .zst-hist-hero .zst-hist-hero-title,

.zst-hist-container .zst-hist-hero h2,

h2.zst-hist-hero-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(24px, 3.2vw, 34px) !important;

    font-weight: 800 !important;

    color: #ffffff !important;

    -webkit-text-fill-color: #ffffff !important;

    border-left: none !important;

    padding-left: 0 !important;

    margin: 0 0 14px 0 !important;

    line-height: 1.25 !important;

    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35) !important;

}

.zst-hist-hero .zst-hist-hero-desc,

.zst-page-content-wrap .zst-hist-hero .zst-hist-hero-desc {

    font-size: clamp(14px, 1.4vw, 15.5px) !important;

    line-height: 1.65 !important;

    color: #f1f5f9 !important;

    max-width: 760px !important;

    margin: 0 0 28px 0 !important;

}

/* Statystyki w Hero */

.zst-hist-stats-grid {

    display: grid !important;

    grid-template-columns: repeat(4, 1fr) !important;

    gap: 14px !important;

    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;

    padding-top: 22px !important;

}

.zst-hist-stat-card {

    background: rgba(255, 255, 255, 0.08) !important;

    border: 1px solid rgba(255, 255, 255, 0.12) !important;

    border-radius: 12px !important;

    padding: 12px 14px !important;

    text-align: center !important;

    backdrop-filter: blur(4px) !important;

    transition: all 0.25s ease !important;

}

.zst-hist-stat-card:hover {

    background: rgba(255, 255, 255, 0.15) !important;

    transform: translateY(-2px) !important;

}

.zst-hist-stat-num {

    font-family: 'Montserrat', sans-serif !important;

    font-size: clamp(18px, 2vw, 24px) !important;

    font-weight: 800 !important;

    color: #ffffff !important;

    line-height: 1.1 !important;

    margin-bottom: 4px !important;

}

.zst-hist-stat-label {

    font-size: 11.5px !important;

    color: #cbd5e1 !important;

    font-weight: 500 !important;

    line-height: 1.3 !important;

}

/* Oś Czasu (Timeline) */

.zst-hist-timeline {

    position: relative !important;

    padding-left: 20px !important;

    margin-bottom: 45px !important;

}

/* Pasek epoki (Era Divider) */

.zst-hist-era-divider {

    position: relative !important;

    margin: 36px 0 24px -20px !important;

    display: flex !important;

    align-items: center !important;

}

.zst-hist-era-divider:first-child {

    margin-top: 10px !important;

}

.zst-hist-era-divider::before {

    content: '' !important;

    position: absolute !important;

    left: 0 !important;

    right: 0 !important;

    top: 50% !important;

    height: 1.5px !important;

    background: linear-gradient(90deg, #1e40af, #cbd5e1, transparent) !important;

    z-index: 1 !important;

}

.zst-hist-era-badge {

    position: relative !important;

    z-index: 2 !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: linear-gradient(135deg, #0b1e48, #1e40af) !important;

    color: #ffffff !important;

    padding: 8px 18px !important;

    border-radius: 30px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    letter-spacing: 0.02em !important;

    box-shadow: 0 4px 12px rgba(11, 30, 72, 0.2) !important;

}

.zst-hist-era-badge i {

    color: #f97316 !important;

}

/* Elementy Osi Czasu (Items) */

.zst-hist-item {

    position: relative !important;

    display: flex !important;

    margin-bottom: 22px !important;

    gap: 20px !important;

}

/* Kręgosłup i Węzeł (Spine & Node) */

.zst-hist-spine {

    position: relative !important;

    width: 44px !important;

    flex-shrink: 0 !important;

    display: flex !important;

    justify-content: center !important;

}

.zst-hist-spine::before {

    content: '' !important;

    position: absolute !important;

    top: 0 !important;

    bottom: -22px !important;

    width: 3px !important;

    background: linear-gradient(to bottom, #1e40af 0%, #3b82f6 50%, #e2e8f0 100%) !important;

    left: 50% !important;

    transform: translateX(-50%) !important;

    border-radius: 3px !important;

}

.zst-hist-item:last-child .zst-hist-spine::before {

    bottom: 0 !important;

    height: 30px !important;

}

.zst-hist-node {

    width: 40px !important;

    height: 40px !important;

    border-radius: 50% !important;

    background: #ffffff !important;

    border: 3px solid #1e40af !important;

    box-shadow: 0 4px 12px rgba(30, 64, 175, 0.25) !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    color: #0b1e48 !important;

    font-size: 15px !important;

    position: relative !important;

    z-index: 2 !important;

    transition: all 0.25s ease !important;

}

.zst-hist-item:hover .zst-hist-node {

    background: #0b1e48 !important;

    color: #ffffff !important;

    border-color: #f97316 !important;

    transform: scale(1.15) !important;

    box-shadow: 0 6px 16px rgba(249, 115, 22, 0.35) !important;

}

/* Karta Wydarzenia (Card) */

.zst-hist-card {

    flex-grow: 1 !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 16px !important;

    padding: 20px 24px !important;

    box-shadow: 0 4px 18px rgba(11, 30, 72, 0.05) !important;

    transition: all 0.25s ease !important;

    position: relative !important;

}

.zst-hist-card::before {

    content: '' !important;

    position: absolute !important;

    left: -8px !important;

    top: 16px !important;

    width: 14px !important;

    height: 14px !important;

    background: #ffffff !important;

    border-left: 1px solid #e2e8f0 !important;

    border-bottom: 1px solid #e2e8f0 !important;

    transform: rotate(45deg) !important;

    transition: border-color 0.25s ease !important;

}

.zst-hist-item:hover .zst-hist-card {

    border-color: #cbd5e1 !important;

    box-shadow: 0 8px 25px rgba(11, 30, 72, 0.1) !important;

    transform: translateX(4px) !important;

}

.zst-hist-item:hover .zst-hist-card::before {

    border-color: #cbd5e1 !important;

}

/* Etykieta roku */

.zst-hist-card-header {

    display: flex !important;

    align-items: center !important;

    margin-bottom: 10px !important;

}

.zst-hist-year-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: #eff6ff !important;

    color: #1e40af !important;

    border: 1px solid #bfdbfe !important;

    padding: 4px 12px !important;

    border-radius: 20px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 12.5px !important;

    font-weight: 700 !important;

    letter-spacing: 0.02em !important;

}

.zst-hist-card .zst-hist-card-title,

.zst-page-content-wrap .zst-hist-card .zst-hist-card-title,

.zst-hist-container .zst-hist-card h3,

h3.zst-hist-card-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 17px !important;

    font-weight: 700 !important;

    color: #0b1e48 !important;

    border-left: none !important;

    padding-left: 0 !important;

    margin: 0 0 10px 0 !important;

    line-height: 1.35 !important;

}

.zst-hist-card-desc {

    font-size: 14.5px !important;

    color: #475569 !important;

    line-height: 1.65 !important;

    margin: 0 !important;

}

/* Chip Dyrektora */

.zst-hist-director {

    display: inline-flex !important;

    align-items: center !important;

    gap: 7px !important;

    margin-top: 14px !important;

    background: #f8fafc !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 8px !important;

    padding: 5px 12px !important;

    font-size: 12.5px !important;

    color: #334155 !important;

}

.zst-hist-director i {

    color: #1e40af !important;

}

/* Karta Patrona na Dole */

.zst-hist-patron-box {

    background: linear-gradient(135deg, #0b1e48 0%, #11275d 100%) !important;

    border-radius: 20px !important;

    padding: 30px 32px !important;

    color: #ffffff !important;

    box-shadow: 0 12px 30px rgba(11, 30, 72, 0.15) !important;

    border: 1px solid rgba(255, 255, 255, 0.1) !important;

    position: relative !important;

    margin-top: 30px !important;

}

.zst-hist-patron-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: rgba(249, 115, 22, 0.2) !important;

    border: 1px solid rgba(249, 115, 22, 0.4) !important;

    color: #fed7aa !important;

    padding: 6px 14px !important;

    border-radius: 20px !important;

    font-family: 'Montserrat', sans-serif !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    letter-spacing: 0.05em !important;

    margin-bottom: 18px !important;

}

.zst-hist-patron-content {

    display: flex !important;

    align-items: center !important;

    gap: 24px !important;

}

.zst-hist-patron-emblem {

    width: 80px !important;

    height: 80px !important;

    flex-shrink: 0 !important;

    background: #ffffff !important;

    border-radius: 50% !important;

    padding: 8px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;

}

.zst-hist-patron-img {

    max-width: 90% !important;

    max-height: 90% !important;

    object-fit: contain !important;

}

.zst-hist-patron-text h3 {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 20px !important;

    font-weight: 700 !important;

    color: #ffffff !important;

    margin: 0 0 8px 0 !important;

}

.zst-hist-patron-text p {

    font-size: 14px !important;

    color: #cbd5e1 !important;

    line-height: 1.6 !important;

    margin: 0 !important;

}

/* Responsywność */

@media (max-width: 768px) {

    .zst-hist-stats-grid {

        grid-template-columns: repeat(2, 1fr) !important;

    }

    .zst-hist-era-divider {

        margin-left: 0 !important;

    }

    .zst-hist-era-badge {

        font-size: 11.5px !important;

        padding: 6px 14px !important;

    }

    .zst-hist-spine {

        width: 32px !important;

    }

    .zst-hist-node {

        width: 32px !important;

        height: 32px !important;

        font-size: 12px !important;

        border-width: 2px !important;

    }

    .zst-hist-card {

        padding: 16px 18px !important;

    }

    .zst-hist-card-title {

        font-size: 15px !important;

    }

    .zst-hist-card-desc {

        font-size: 13.5px !important;

    }

    .zst-hist-patron-content {

        flex-direction: column !important;

        text-align: center !important;

    }

    .zst-hist-patron-emblem {

        margin: 0 auto !important;

    }

}

@media (max-width: 480px) {

    .zst-hist-stats-grid {

        grid-template-columns: 1fr !important;

    }

    .zst-hist-timeline {

        padding-left: 10px !important;

    }

    .zst-hist-item {

        gap: 12px !important;

    }

}

/* ==========================================================================

   16. USUNIĘCIE PASKA BOCZNEGO "NAJNOWSZE INFORMACJE" NA PODSTRONACH

   ========================================================================== */

body.page .zst-el-element-64aa9c1,

.zst-el-34842 .zst-el-element-64aa9c1 {

    display: none !important;

}

body.page .zst-el-element-3fcee37,

.zst-el-34842 .zst-el-element-3fcee37 {

    width: 100% !important;

    max-width: 100% !important;

    flex: 0 0 100% !important;

}

/* ==========================================================================

   WIDOCZNOŚĆ I UKŁAD SIATKI AKTUALNOŚCI (DESKTOP & MOBILE)

   ========================================================================== */

.zst-el-element-09f8190 {

  display: none !important;

}

.zst-el-element-3796f42 {

  display: block !important;

}

@media (max-width: 767px) {

  .zst-el-element-3796f42 .pp-posts-grid {

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;

    width: 100% !important;

  }

  .zst-el-element-3796f42 .pp-post-wrap {

    width: 100% !important;

    max-width: 420px !important;

    margin: 0 auto 20px auto !important;

  }

  .zst-el-widget-pp-posts .pp-post {

    width: 100% !important;

    max-width: 100% !important;

  }

}

/* 6. Siatka aktualności - 6 wpisów - SPÓJNY SYSTEM DLA ZDJĘĆ PIONOWYCH I POZIOMYCH (SREBRNE OBRAMOWANIE) */

.zst-el-widget-pp-posts .pp-post {

  background: #ffffff !important;

  border-radius: 14px !important;

  overflow: hidden !important;

  border: 1px solid #cbd5e1 !important; /* Czyste srebrne obramowanie (silver) */

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

  height: 460px !important;

  box-sizing: border-box !important;

  margin-bottom: 24px !important;

}

.zst-el-widget-pp-posts .pp-post:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 16px 32px rgba(19, 44, 107, 0.16) !important;

  border-color: #94a3b8 !important;

}

/* Wyśrodkowana plakietka daty */

.zst-el-widget-pp-posts .pp-post-event-date {

  position: absolute !important;

  top: 12px !important;

  left: 12px !important;

  bottom: auto !important;

  right: auto !important;

  transform: none !important;

  margin: 0 !important;

  width: 52px !important;

  height: 52px !important;

  min-width: 52px !important;

  min-height: 52px !important;

  padding: 0 !important;

  background: rgba(19, 44, 107, 0.94) !important;

  backdrop-filter: blur(4px) !important;

  color: #ffffff !important;

  border-radius: 10px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: center !important;

  align-items: center !important;

  text-align: center !important;

  line-height: 1 !important;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;

  border: 1px solid rgba(255, 255, 255, 0.25) !important;

  z-index: 10 !important;

  box-sizing: border-box !important;

}

.zst-el-widget-pp-posts .pp-post-event-date .pp-post-day {

  font-size: 18px !important;

  font-weight: 800 !important;

  color: #f5b324 !important;

  order: 1 !important;

  line-height: 1 !important;

  margin: 0 0 3px 0 !important;

  padding: 0 !important;

  display: block !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post-event-date .pp-post-month {

  font-size: 11px !important;

  font-weight: 700 !important;

  text-transform: uppercase !important;

  letter-spacing: 0.8px !important;

  color: #ffffff !important;

  order: 2 !important;

  line-height: 1 !important;

  margin: 0 !important;

  padding: 0 !important;

  display: block !important;

  text-align: center !important;

}

/* === 6A. KARTY Z PIONOWYM ZDJĘCIEM / PLAKATEM (Full-bleed poster + szkliste pole z tekstem) === */

.zst-el-widget-pp-posts .pp-post.zst-card-vertical {

  position: relative !important;

  height: 460px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: flex-end !important;

  overflow: hidden !important;

  border-radius: 14px !important;

  background: #0e1e47 !important;

  border: 1px solid #cbd5e1 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail {

  position: absolute !important;

  top: 0 !important;

  left: 0 !important;

  right: 0 !important;

  bottom: 0 !important;

  width: 100% !important;

  height: 100% !important;

  z-index: 1 !important;

  border-radius: 14px !important;

  margin: 0 !important;

  background: #0e1e47 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail a {

  display: block !important;

  width: 100% !important;

  height: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-thumbnail img {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  object-position: center top !important;

  transition: transform 0.4s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-thumbnail img {

  transform: scale(1.03) !important;

}

/* Półprzezroczyste białe pole z tekstem na tle plakatu (Glassmorphism) */

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-content-wrap {

  position: relative !important;

  z-index: 3 !important;

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.76) 0%, rgba(255, 255, 255, 0.92) 100%) !important;

  backdrop-filter: blur(14px) saturate(160%) !important;

  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;

  border-radius: 16px 16px 13px 13px !important;

  border-top: 1px solid rgba(255, 255, 255, 0.9) !important;

  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;

  padding: 12px 16px 14px 16px !important;

  margin: 0 !important;

  flex: 0 0 auto !important;

  text-align: center !important;

  transition: all 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-content-wrap {

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.97) 100%) !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title {

  font-size: 14.5px !important;

  font-weight: 700 !important;

  line-height: 1.35 !important;

  min-height: auto !important;

  max-height: 40px !important;

  margin-top: 0 !important;

  margin-bottom: 5px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title a {

  color: #0f172a !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical:hover .pp-post-title a {

  color: #132c6b !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-excerpt {

  font-size: 12px !important;

  line-height: 1.4 !important;

  color: #1e293b !important;

  margin-bottom: 8px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more-wrap {

  margin: 0 !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more {

  padding: 5px 14px !important;

  font-size: 11.5px !important;

  height: 30px !important;

  line-height: 28px !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

}

/* === 6B. KARTY ZE ZDJĘCIEM POZIOMYM (Spójne z resztą, pełna szerokość bez ucinania postaci, szkliste pole) === */

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) {

  height: 460px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: space-between !important;

  border-radius: 14px !important;

  overflow: hidden !important;

  background: linear-gradient(180deg, #0e1e47 0%, #1e293b 55%, #f1f5f9 100%) !important;

  border: 1px solid #cbd5e1 !important;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 16px 32px rgba(19, 44, 107, 0.16) !important;

  border-color: #94a3b8 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail {

  position: relative !important;

  height: 275px !important;

  width: 100% !important;

  flex: 0 0 275px !important;

  margin: 0 !important;

  overflow: hidden !important;

  background: #0e1e47 !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail a {

  display: block !important;

  width: 100% !important;

  height: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail img,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-thumbnail img {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  object-position: center top !important; /* 100% szerokości, ochrona wszystkich osób od lewej do prawej i głów u góry */

  transition: transform 0.4s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-thumbnail img,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-thumbnail img {

  transform: scale(1.03) !important;

}

/* Szkliste pole z tekstem (Glassmorphism) - zgrabnie nachodzi na dół zdjęcia */

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-content-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-content-wrap {

  position: relative !important;

  z-index: 3 !important;

  margin-top: -24px !important;

  flex: 1 1 auto !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: space-between !important;

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, rgba(248, 250, 252, 0.97) 100%) !important;

  backdrop-filter: blur(14px) saturate(160%) !important;

  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;

  border-radius: 18px 18px 13px 13px !important;

  border-top: 1px solid rgba(255, 255, 255, 0.95) !important;

  box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.12) !important;

  padding: 13px 16px 14px 16px !important;

  text-align: center !important;

  transition: all 0.25s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-content-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-content-wrap {

  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, #ffffff 100%) !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-title,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-title {

  font-size: 14.5px !important;

  font-weight: 700 !important;

  line-height: 1.35 !important;

  min-height: auto !important;

  max-height: 40px !important;

  margin-top: 0 !important;

  margin-bottom: 5px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-title a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-title a {

  color: #0f172a !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal:hover .pp-post-title a,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical):hover .pp-post-title a {

  color: #132c6b !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-excerpt,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-excerpt {

  font-size: 12px !important;

  line-height: 1.4 !important;

  color: #334155 !important;

  margin-bottom: 8px !important;

  display: -webkit-box !important;

  -webkit-line-clamp: 2 !important;

  -webkit-box-orient: vertical !important;

  overflow: hidden !important;

  text-align: center !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-read-more-wrap,

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more-wrap,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-read-more-wrap {

  margin: 0 auto !important;

  text-align: center !important;

  display: flex !important;

  justify-content: center !important;

  align-items: center !important;

  width: 100% !important;

}

.zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-read-more,

.zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-read-more,

.zst-el-widget-pp-posts .pp-post:not(.zst-card-vertical) .pp-post-read-more {

  padding: 5px 14px !important;

  font-size: 11.5px !important;

  height: 30px !important;

  line-height: 28px !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin: 0 auto !important;

}

@media (max-width: 767px) {

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical,

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal,

  .zst-el-widget-pp-posts .pp-post {

    height: 460px !important;

  }

  /* Na telefonie czytelny fragment tekstu (zajawka) wyśrodkowany pod tytułem */

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-excerpt,

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-excerpt,

  .zst-el-widget-pp-posts .pp-post .pp-post-excerpt {

    display: -webkit-box !important;

    -webkit-line-clamp: 2 !important;

    -webkit-box-orient: vertical !important;

    overflow: hidden !important;

    font-size: 11.5px !important;

    line-height: 1.35 !important;

    color: #334155 !important;

    margin-top: 2px !important;

    margin-bottom: 8px !important;

    text-align: center !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-content-wrap {

    padding: 10px 14px 12px 14px !important;

    border-radius: 16px 16px 13px 13px !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-vertical .pp-post-title {

    font-size: 14px !important;

    margin-bottom: 6px !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-thumbnail {

    height: 250px !important;

    flex: 0 0 250px !important;

  }

  .zst-el-widget-pp-posts .pp-post.zst-card-horizontal .pp-post-content-wrap {

    padding: 10px 14px 12px 14px !important;

    margin-top: -20px !important;

  }

}

.zst-el-widget-pp-posts .pp-posts-button {

  background: #132c6b !important;

  color: #ffffff !important;

  border-radius: 8px !important;

  font-weight: 700 !important;

  font-size: 11.5px !important;

  letter-spacing: 0.5px !important;

  padding: 8px 18px !important;

  transition: all 0.25s ease !important;

  align-self: center !important;

  margin-left: auto !important;

  margin-right: auto !important;

  margin-top: auto !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  text-align: center !important;

  text-decoration: none !important;

}

.zst-el-widget-pp-posts .pp-posts-button:hover {

  background: #d9222a !important;

  box-shadow: 0 4px 14px rgba(217, 34, 42, 0.35) !important;

  transform: translateY(-2px) !important;

  color: #ffffff !important;

}

.pp-posts-pagination-wrap {

  margin-top: 15px !important;

  margin-bottom: 25px !important;

  padding: 0 !important;

}

.pp-post-load-more {

  background: #132c6b !important;

  color: #ffffff !important;

  border-radius: 8px !important;

  font-weight: 700 !important;

  font-size: 13px !important;

  letter-spacing: 0.8px !important;

  padding: 11px 26px !important;

  transition: all 0.25s ease !important;

  text-transform: uppercase !important;

  box-shadow: 0 4px 12px rgba(19, 44, 107, 0.2) !important;

}

.pp-post-load-more:hover {

  background: #09173a !important;

  color: #ffffff !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 8px 20px rgba(9, 23, 58, 0.3) !important;

}

/* ==========================================================================

   PATRON SZKOŁY: 55. POZNAŃSKI PUŁK PIECHOTY (DEDYKOWANY MODUŁ HISTORII)

   ========================================================================== */

.zst-pulk-container {

  max-width: 1200px !important;

  margin: 0 auto !important;

  padding: 10px 15px 60px !important;

  box-sizing: border-box !important;

  color: #1e293b !important;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;

}

/* Reset dekoratorów i belek nagłówków z motywu */

.zst-pulk-container h1,

.zst-pulk-container h2,

.zst-pulk-container h3,

.zst-pulk-container h4,

.zst-pulk-container h5 {

  border: none !important;

  border-left: none !important;

  padding-left: 0 !important;

}

.zst-pulk-container h1::before,

.zst-pulk-container h2::before,

.zst-pulk-container h3::before,

.zst-pulk-container h4::before,

.zst-pulk-container h1::after,

.zst-pulk-container h2::after,

.zst-pulk-container h3::after,

.zst-pulk-container h4::after {

  display: none !important;

  content: none !important;

}

/* Ukrycie pustych akapitów i elementów <p> w siatkach CSS */

.zst-pulk-container p:empty,

.zst-pulk-timeline-grid > p,

.zst-pulk-commanders-grid > p,

.zst-pulk-gallery-grid > p,

.zst-pulk-history-content > p {

  display: none !important;

  margin: 0 !important;

  padding: 0 !important;

  height: 0 !important;

  width: 0 !important;

}

/* Klasyczny Nagłówek Muzealny (Hero & Motto) */

.zst-pulk-classic-header {

  text-align: center !important;

  max-width: 860px !important;

  margin: 15px auto 55px !important;

  padding: 0 15px !important;

  position: relative !important;

}

.zst-pulk-classic-badge {

  display: inline-block !important;

  margin-bottom: 16px !important;

}

.zst-pulk-classic-img {

  width: 120px !important;

  height: auto !important;

  filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.12)) !important;

  transition: transform 0.3s ease !important;

}

.zst-pulk-classic-img:hover {

  transform: scale(1.05) !important;

}

.zst-pulk-classic-tag {

  display: inline-block !important;

  color: #b48318 !important;

  font-size: 12.5px !important;

  font-weight: 800 !important;

  text-transform: uppercase !important;

  letter-spacing: 1.5px !important;

  margin-bottom: 14px !important;

  border-bottom: 2px solid #d4af37 !important;

  padding-bottom: 4px !important;

}

.zst-pulk-classic-title {

  color: #0a1931 !important;

  font-size: clamp(28px, 4vw, 42px) !important;

  font-weight: 800 !important;

  line-height: 1.2 !important;

  margin: 0 0 14px !important;

  letter-spacing: -0.5px !important;

  border: none !important;

  border-left: none !important;

  padding-left: 0 !important;

}

.zst-pulk-classic-lead {

  color: #475569 !important;

  font-size: clamp(15px, 1.8vw, 17px) !important;

  line-height: 1.7 !important;

  margin: 0 auto 35px !important;

  max-width: 780px !important;

}

.zst-pulk-classic-quote-wrap {

  margin: 30px auto 0 !important;

  max-width: 680px !important;

  text-align: center !important;

  position: relative !important;

  padding: 10px 0 !important;

}

.zst-pulk-quote-line {

  width: 120px !important;

  height: 2px !important;

  background: linear-gradient(90deg, transparent, #d4af37, transparent) !important;

  margin: 0 auto !important;

}

.zst-pulk-classic-quote {

  font-family: "Georgia", "Times New Roman", serif !important;

  font-size: clamp(18px, 2.3vw, 22px) !important;

  line-height: 1.8 !important;

  color: #1e293b !important;

  font-style: italic !important;

  margin: 22px 0 !important;

  letter-spacing: 0.3px !important;

  font-weight: 500 !important;

}

.zst-pulk-classic-author {

  color: #b48318 !important;

  font-size: 12px !important;

  font-weight: 800 !important;

  text-transform: uppercase !important;

  letter-spacing: 2px !important;

  margin-top: 14px !important;

}

/* Sekcje ogólne */

.zst-pulk-section {

  margin-bottom: 60px !important;

}

.zst-pulk-sec-header {

  text-align: center !important;

  margin-bottom: 35px !important;

}

.zst-pulk-sec-badge {

  display: inline-block !important;

  background: rgba(19, 44, 107, 0.08) !important;

  color: #132c6b !important;

  font-size: 11.5px !important;

  font-weight: 800 !important;

  text-transform: uppercase !important;

  letter-spacing: 1.2px !important;

  padding: 4px 12px !important;

  border-radius: 12px !important;

  margin-bottom: 8px !important;

}

.zst-pulk-sec-title {

  color: #0f172a !important;

  font-size: clamp(22px, 3vw, 30px) !important;

  font-weight: 800 !important;

  line-height: 1.25 !important;

  margin: 0 0 12px !important;

  letter-spacing: -0.4px !important;

}

.zst-pulk-sec-divider {

  width: 60px !important;

  height: 3px !important;

  background: linear-gradient(90deg, #132c6b, #d4af37) !important;

  margin: 0 auto 16px !important;

  border-radius: 2px !important;

}

.zst-pulk-sec-desc {

  color: #475569 !important;

  font-size: 15.5px !important;

  line-height: 1.65 !important;

  max-width: 820px !important;

  margin: 0 auto !important;

}

/* Timeline Cards (1919-1921) */

.zst-pulk-timeline-grid {

  display: grid !important;

  grid-template-columns: repeat(3, 1fr) !important;

  gap: 24px !important;

}

.zst-pulk-card {

  background: #ffffff !important;

  border-radius: 16px !important;

  padding: 26px 24px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

}

.zst-pulk-card:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 12px 28px rgba(19, 44, 107, 0.11) !important;

  border-color: rgba(19, 44, 107, 0.25) !important;

}

.zst-pulk-card-badge {

  background: #132c6b !important;

  color: #ffffff !important;

  font-size: 12px !important;

  font-weight: 800 !important;

  padding: 4px 10px !important;

  border-radius: 0 !important;

  display: inline-block !important;

  margin-bottom: 12px !important;

  letter-spacing: 0.5px !important;

}

.zst-pulk-card-title {

  color: #0f172a !important;

  font-size: 17.5px !important;

  font-weight: 700 !important;

  line-height: 1.35 !important;

  margin: 0 0 12px !important;

}

.zst-pulk-card-text {

  color: #475569 !important;

  font-size: 14px !important;

  line-height: 1.65 !important;

  margin: 0 !important;

  flex: 1 !important;

}

/* Siatka Dowódców */

.zst-pulk-commanders-grid {

  display: grid !important;

  grid-template-columns: repeat(3, 1fr) !important;

  gap: 24px !important;

}

.zst-commander-card {

  background: #ffffff !important;

  border-radius: 16px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;

  overflow: hidden !important;

  display: flex !important;

  flex-direction: column !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

}

.zst-commander-card:hover {

  transform: translateY(-5px) !important;

  box-shadow: 0 14px 32px rgba(19, 44, 107, 0.13) !important;

  border-color: #cbd5e1 !important;

}

.zst-commander-img-wrap {

  background: linear-gradient(180deg, #f8fafc 0%, #eef2f6 100%) !important;

  padding: 22px 20px 14px !important;

  text-align: center !important;

  position: relative !important;

  border-bottom: 1px solid #e2e8f0 !important;

}

.zst-commander-img {

  width: 140px !important;

  height: 160px !important;

  object-fit: cover !important;

  border-radius: 10px !important;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;

  border: 2px solid #ffffff !important;

  display: inline-block !important;

  transition: transform 0.3s ease !important;

}

.zst-commander-card:hover .zst-commander-img {

  transform: scale(1.03) !important;

}

.zst-commander-years {

  position: absolute !important;

  bottom: -11px !important;

  left: 50% !important;

  transform: translateX(-50%) !important;

  background: #132c6b !important;

  color: #ffffff !important;

  font-size: 11px !important;

  font-weight: 800 !important;

  padding: 3px 12px !important;

  border-radius: 12px !important;

  white-space: nowrap !important;

  box-shadow: 0 2px 8px rgba(19, 44, 107, 0.3) !important;

  letter-spacing: 0.5px !important;

}

.zst-commander-info {

  padding: 24px 20px 22px !important;

  text-align: center !important;

  flex: 1 !important;

  display: flex !important;

  flex-direction: column !important;

}

.zst-commander-rank {

  display: block !important;

  font-size: 11.5px !important;

  text-transform: uppercase !important;

  font-weight: 700 !important;

  color: #9a680c !important;

  letter-spacing: 0.6px !important;

  margin-bottom: 4px !important;

}

.zst-commander-name {

  color: #0f172a !important;

  font-size: 18px !important;

  font-weight: 800 !important;

  line-height: 1.3 !important;

  margin: 0 0 10px !important;

}

.zst-commander-role {

  color: #475569 !important;

  font-size: 13.5px !important;

  line-height: 1.6 !important;

  margin: 0 !important;

  flex: 1 !important;

}

/* Nowoczesna Pionowa Oś Czasu (Wrzesień 1939 - Węzły Muzealne) */

.zst-pulk-timeline-v {

  position: relative !important;

  max-width: 900px !important;

  margin: 0 auto !important;

  display: flex !important;

  flex-direction: column !important;

}

.zst-timeline-v-item {

  display: flex !important;

  gap: 28px !important;

  position: relative !important;

}

.zst-timeline-v-marker {

  display: flex !important;

  flex-direction: column !important;

  align-items: center !important;

  width: 36px !important;

  flex-shrink: 0 !important;

}

.zst-timeline-v-dot {

  width: 20px !important;

  height: 20px !important;

  border-radius: 50% !important;

  background: #132c6b !important;

  border: 4px solid #ffffff !important;

  box-shadow: 0 0 0 3px #132c6b, 0 4px 10px rgba(19, 44, 107, 0.35) !important;

  flex-shrink: 0 !important;

  margin-top: 6px !important;

  z-index: 2 !important;

  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease !important;

}

.zst-timeline-v-item:hover .zst-timeline-v-dot {

  transform: scale(1.2) !important;

  background: #d4af37 !important;

  box-shadow: 0 0 0 3px #d4af37, 0 6px 14px rgba(212, 175, 55, 0.5) !important;

}

.zst-timeline-v-dot-gold {

  background: #d4af37 !important;

  box-shadow: 0 0 0 3px #d4af37, 0 4px 12px rgba(212, 175, 55, 0.4) !important;

}

.zst-timeline-v-line {

  width: 3px !important;

  background: linear-gradient(180deg, #132c6b 0%, #cbd5e1 100%) !important;

  flex-grow: 1 !important;

  margin: 8px 0 !important;

  border-radius: 2px !important;

}

.zst-timeline-v-content {

  background: #ffffff !important;

  border-radius: 16px !important;

  padding: 26px 30px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;

  margin-bottom: 28px !important;

  flex: 1 !important;

  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;

}

.zst-timeline-v-item:hover .zst-timeline-v-content {

  transform: translateX(6px) !important;

  border-color: #cbd5e1 !important;

  box-shadow: 0 10px 28px rgba(19, 44, 107, 0.1) !important;

}

.zst-timeline-v-content-gold {

  border-color: rgba(212, 175, 55, 0.35) !important;

  background: linear-gradient(180deg, #ffffff 0%, #fffdf7 100%) !important;

}

.zst-timeline-v-date {

  display: inline-block !important;

  background: #132c6b !important;

  color: #ffffff !important;

  font-size: 12px !important;

  font-weight: 800 !important;

  padding: 4px 12px !important;

  border-radius: 20px !important;

  letter-spacing: 0.6px !important;

  text-transform: uppercase !important;

  margin-bottom: 12px !important;

}

.zst-timeline-v-date-gold {

  background: linear-gradient(135deg, #b48318 0%, #d4af37 100%) !important;

  color: #ffffff !important;

  box-shadow: 0 2px 8px rgba(180, 131, 24, 0.3) !important;

}

.zst-timeline-v-title {

  color: #0f172a !important;

  font-size: 19px !important;

  font-weight: 700 !important;

  margin: 0 0 10px !important;

  line-height: 1.35 !important;

}

.zst-timeline-v-text {

  color: #475569 !important;

  font-size: 14.5px !important;

  line-height: 1.7 !important;

  margin: 0 !important;

}

/* Galeria archiwalna */

.zst-pulk-gallery-grid {

  display: grid !important;

  grid-template-columns: repeat(2, 1fr) !important;

  gap: 24px !important;

}

.zst-gallery-card {

  background: #ffffff !important;

  border-radius: 16px !important;

  overflow: hidden !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

}

.zst-gallery-card:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12) !important;

}

.zst-gallery-img-box {

  position: relative !important;

  overflow: hidden !important;

  height: 250px !important;

  background: #0f172a !important;

}

.zst-gallery-img {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

  display: block !important;

  transition: transform 0.4s ease !important;

}

.zst-gallery-card:hover .zst-gallery-img {

  transform: scale(1.04) !important;

}

.zst-gallery-tag {

  position: absolute !important;

  top: 14px !important;

  right: 14px !important;

  background: rgba(9, 23, 58, 0.88) !important;

  backdrop-filter: blur(4px) !important;

  color: #ffffff !important;

  font-size: 11px !important;

  font-weight: 700 !important;

  padding: 4px 10px !important;

  border-radius: 0 !important;

  letter-spacing: 0.5px !important;

}

.zst-gallery-caption {

  padding: 20px !important;

  flex: 1 !important;

}

.zst-gallery-caption-title {

  color: #0f172a !important;

  font-size: 16.5px !important;

  font-weight: 700 !important;

  margin: 0 0 6px !important;

}

.zst-gallery-caption-text {

  color: #64748b !important;

  font-size: 13.5px !important;

  line-height: 1.55 !important;

  margin: 0 !important;

}

/* Responsywność Mobile & Tablet */

@media (max-width: 991px) {

  .zst-pulk-timeline-grid,

  .zst-pulk-commanders-grid {

    grid-template-columns: repeat(2, 1fr) !important;

  }

}

@media (max-width: 767px) {

  .zst-pulk-classic-header {

    margin: 10px auto 40px !important;

  }

  .zst-pulk-classic-img {

    width: 100px !important;

  }

  .zst-pulk-classic-quote {

    font-size: 17px !important;

    line-height: 1.7 !important;

    margin: 16px 0 !important;

  }

  .zst-pulk-timeline-grid,

  .zst-pulk-commanders-grid,

  .zst-pulk-gallery-grid {

    grid-template-columns: 1fr !important;

  }

  .zst-timeline-v-item {

    gap: 16px !important;

  }

  .zst-timeline-v-marker {

    width: 24px !important;

  }

  .zst-timeline-v-dot {

    width: 16px !important;

    height: 16px !important;

    border-width: 3px !important;

    box-shadow: 0 0 0 2px #132c6b, 0 3px 6px rgba(19, 44, 107, 0.3) !important;

  }

  .zst-timeline-v-content {

    padding: 20px 18px !important;

    margin-bottom: 20px !important;

  }

  .zst-timeline-v-title {

    font-size: 16.5px !important;

  }

  .zst-gallery-img-box {

    height: 200px !important;

  }

}

/* ==========================================================================

   MODUŁ: KADRA PEDAGOGICZNA (ID: 32971, /kadra/)

   ========================================================================== */

.zst-kadra-container {

  max-width: 1200px !important;

  margin: 0 auto !important;

  padding: 10px 15px 60px !important;

  box-sizing: border-box !important;

  color: #1e293b !important;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;

}

.zst-kadra-container h1,

.zst-kadra-container h2,

.zst-kadra-container h3,

.zst-kadra-container h4,

.zst-kadra-container h5 {

  border: none !important;

  border-left: none !important;

  padding-left: 0 !important;

}

.zst-kadra-container h1::before,

.zst-kadra-container h2::before,

.zst-kadra-container h3::before,

.zst-kadra-container h4::before,

.zst-kadra-container h1::after,

.zst-kadra-container h2::after,

.zst-kadra-container h3::after,

.zst-kadra-container h4::after {

  display: none !important;

  content: none !important;

}

.zst-kadra-container p:empty,

.zst-directors-subgrid > p,

.zst-teachers-grid > p {

  display: none !important;

  margin: 0 !important;

  padding: 0 !important;

  height: 0 !important;

  width: 0 !important;

}

/* Hero Kadry */

.zst-kadra-hero {

  text-align: center !important;

  max-width: 860px !important;

  margin: 15px auto 45px !important;

  padding: 0 15px !important;

}

.zst-kadra-crest-img {

  width: 84px !important;

  height: auto !important;

  margin-bottom: 12px !important;

  filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.12)) !important;

}

/* Intro Kadry (bez powielonego tytułu) */

.zst-kadra-intro {

  text-align: center !important;

  max-width: 820px !important;

  margin: 10px auto 40px !important;

  padding: 0 15px !important;

}

.zst-kadra-lead {

  color: #475569 !important;

  font-size: clamp(14.5px, 1.8vw, 16px) !important;

  line-height: 1.65 !important;

  max-width: 760px !important;

  margin: 0 auto 20px !important;

}

/* Statystyki Kadry */

.zst-kadra-stats-grid {

  display: flex !important;

  justify-content: center !important;

  gap: 14px !important;

  flex-wrap: wrap !important;

  margin-top: 10px !important;

}

.zst-kadra-stat-pill {

  background: #ffffff !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04) !important;

  border-radius: 30px !important;

  padding: 6px 18px !important;

  display: flex !important;

  align-items: center !important;

  gap: 10px !important;

}

.zst-kadra-stat-num {

  background: #132c6b !important;

  color: #ffffff !important;

  font-weight: 800 !important;

  font-size: 13px !important;

  min-width: 26px !important;

  height: 26px !important;

  border-radius: 50% !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

}

.zst-kadra-stat-label {

  color: #1e293b !important;

  font-size: 13px !important;

  font-weight: 600 !important;

}

/* Sekcje Kadry */

.zst-kadra-section {

  margin-bottom: 60px !important;

}

.zst-kadra-sec-header {

  text-align: center !important;

  margin-bottom: 30px !important;

}

.zst-kadra-sec-badge {

  display: inline-block !important;

  background: rgba(19, 44, 107, 0.08) !important;

  color: #132c6b !important;

  font-size: 11.5px !important;

  font-weight: 800 !important;

  text-transform: uppercase !important;

  letter-spacing: 1.2px !important;

  padding: 4px 12px !important;

  border-radius: 12px !important;

  margin-bottom: 8px !important;

}

.zst-kadra-sec-title {

  color: #0f172a !important;

  font-size: clamp(22px, 3vw, 28px) !important;

  font-weight: 800 !important;

  margin: 0 0 10px !important;

}

.zst-kadra-sec-divider {

  width: 50px !important;

  height: 3px !important;

  background: linear-gradient(90deg, #132c6b, #d4af37) !important;

  margin: 0 auto 14px !important;

  border-radius: 2px !important;

}

.zst-kadra-sec-desc {

  color: #64748b !important;

  font-size: 15px !important;

  line-height: 1.6 !important;

  max-width: 700px !important;

  margin: 0 auto !important;

}

/* Dyrekcja */

.zst-director-card-featured {

  background: linear-gradient(145deg, #09173a 0%, #10265c 100%) !important;

  border-radius: 20px !important;

  padding: 30px 36px !important;

  color: #ffffff !important;

  display: flex !important;

  align-items: center !important;

  gap: 28px !important;

  max-width: 820px !important;

  margin: 0 auto 24px !important;

  box-shadow: 0 10px 30px rgba(9, 23, 58, 0.18) !important;

  border: 1px solid rgba(212, 175, 55, 0.3) !important;

  border-left: 6px solid #d4af37 !important;

}

.zst-director-avatar-box {

  display: flex !important;

  flex-direction: column !important;

  align-items: center !important;

  gap: 8px !important;

  flex-shrink: 0 !important;

}

.zst-avatar-gold {

  width: 68px !important;

  height: 68px !important;

  border-radius: 50% !important;

  background: linear-gradient(135deg, #d4af37, #f7df94) !important;

  color: #09173a !important;

  font-weight: 800 !important;

  font-size: 22px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  box-shadow: 0 4px 14px rgba(212, 175, 55, 0.4) !important;

}

.zst-director-badge {

  background: rgba(212, 175, 55, 0.2) !important;

  color: #f7df94 !important;

  border: 1px solid rgba(212, 175, 55, 0.4) !important;

  font-size: 11px !important;

  font-weight: 700 !important;

  text-transform: uppercase !important;

  padding: 3px 10px !important;

  border-radius: 12px !important;

  letter-spacing: 0.5px !important;

  white-space: nowrap !important;

}

.zst-kadra-container .zst-director-card-featured .zst-director-name,

.zst-kadra-container .zst-director-name,

.zst-director-card-featured .zst-director-name,

.zst-director-card-featured h3,

h3.zst-director-name {

  color: #ffffff !important;

  font-size: 25px !important;

  font-weight: 800 !important;

  margin: 0 0 8px !important;

  line-height: 1.25 !important;

  letter-spacing: -0.2px !important;

  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4) !important;

}

.zst-kadra-container .zst-director-card-featured .zst-director-role,

.zst-director-card-featured .zst-director-role {

  color: #e2e8f0 !important;

  font-size: 14.5px !important;

  line-height: 1.55 !important;

  margin: 0 !important;

  opacity: 0.95 !important;

}

.zst-directors-subgrid {

  display: grid !important;

  grid-template-columns: repeat(4, 1fr) !important;

  gap: 18px !important;

  max-width: 1040px !important;

  margin: 0 auto 50px !important;

}

.zst-director-subcard {

  background: #ffffff !important;

  border-radius: 16px !important;

  padding: 22px 18px !important;

  text-align: center !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease !important;

  display: flex !important;

  flex-direction: column !important;

  align-items: center !important;

}

.zst-director-subcard:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 10px 24px rgba(19, 44, 107, 0.1) !important;

  border-color: #cbd5e1 !important;

}

.zst-avatar-navy {

  width: 50px !important;

  height: 50px !important;

  border-radius: 50% !important;

  background: #132c6b !important;

  color: #ffffff !important;

  font-weight: 800 !important;

  font-size: 17px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin-bottom: 10px !important;

}

.zst-avatar-teal {

  width: 50px !important;

  height: 50px !important;

  border-radius: 50% !important;

  background: #0d9488 !important;

  color: #ffffff !important;

  font-weight: 800 !important;

  font-size: 17px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin-bottom: 10px !important;

}

.zst-subcard-badge {

  font-size: 10.5px !important;

  text-transform: uppercase !important;

  font-weight: 800 !important;

  color: #b48318 !important;

  letter-spacing: 0.6px !important;

  margin-bottom: 6px !important;

}

.zst-subcard-name {

  font-size: 15px !important;

  font-weight: 700 !important;

  color: #0f172a !important;

  margin: 0 0 4px !important;

  line-height: 1.35 !important;

}

.zst-subcard-desc {

  font-size: 12px !important;

  color: #64748b !important;

  margin: 0 !important;

}

/* Wyszukiwarka i Alfabet */

.zst-kadra-search-wrap {

  max-width: 600px !important;

  margin: 0 auto 20px !important;

  display: flex !important;

  flex-direction: column !important;

  align-items: center !important;

  gap: 8px !important;

}

.zst-search-box {

  position: relative !important;

  width: 100% !important;

}

.zst-search-input {

  width: 100% !important;

  padding: 13px 44px 13px 46px !important;

  border-radius: 30px !important;

  border: 2px solid #cbd5e1 !important;

  font-size: 15px !important;

  outline: none !important;

  background: #ffffff !important;

  box-sizing: border-box !important;

  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04) !important;

  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;

}

.zst-search-input:focus {

  border-color: #132c6b !important;

  box-shadow: 0 0 0 4px rgba(19, 44, 107, 0.12) !important;

}

.zst-search-icon {

  position: absolute !important;

  left: 18px !important;

  top: 50% !important;

  transform: translateY(-50%) !important;

  font-size: 17px !important;

  pointer-events: none !important;

  opacity: 0.6 !important;

}

.zst-search-clear,

button.zst-search-clear,

.zst-search-box button.zst-search-clear {

  position: absolute !important;

  right: 14px !important;

  top: 50% !important;

  transform: translateY(-50%) !important;

  background: #cbd5e1 !important;

  border: none !important;

  width: 24px !important;

  height: 24px !important;

  min-width: 24px !important;

  max-width: 24px !important;

  min-height: 24px !important;

  max-height: 24px !important;

  padding: 0 !important;

  margin: 0 !important;

  border-radius: 50% !important;

  font-size: 11px !important;

  font-weight: 700 !important;

  line-height: 24px !important;

  cursor: pointer !important;

  color: #334155 !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  box-sizing: border-box !important;

  transition: all 0.2s ease !important;

  z-index: 5 !important;

}

.zst-search-clear:hover,

button.zst-search-clear:hover {

  background: #94a3b8 !important;

  color: #0f172a !important;

}

.zst-search-counter {

  font-size: 13px !important;

  color: #64748b !important;

}

.zst-az-bar {

  display: flex !important;

  justify-content: center !important;

  gap: 5px !important;

  flex-wrap: wrap !important;

  max-width: 860px !important;

  margin: 0 auto 30px !important;

}

.zst-az-btn {

  background: #ffffff !important;

  border: 1px solid #cbd5e1 !important;

  border-radius: 8px !important;

  min-width: 32px !important;

  height: 32px !important;

  padding: 0 8px !important;

  font-size: 12px !important;

  font-weight: 700 !important;

  color: #1e293b !important;

  cursor: pointer !important;

  transition: all 0.2s ease !important;

}

.zst-az-btn:hover {

  border-color: #132c6b !important;

  color: #132c6b !important;

  background: #f0f5ff !important;

}

.zst-az-btn.active {

  background: #132c6b !important;

  color: #ffffff !important;

  border-color: #132c6b !important;

}

/* Siatka Nauczycieli */

.zst-teachers-grid {

  display: grid !important;

  grid-template-columns: repeat(3, 1fr) !important;

  gap: 16px !important;

}

.zst-teacher-card {

  background: #ffffff !important;

  border-radius: 14px !important;

  padding: 16px 18px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03) !important;

  display: flex;

  flex-direction: column !important;

  gap: 12px !important;

  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;

}

.zst-teacher-card.zst-card-hidden,

.zst-teacher-card[style*="display: none"] {

  display: none !important;

}

.zst-teacher-card:hover {

  transform: translateY(-3px) !important;

  box-shadow: 0 8px 22px rgba(19, 44, 107, 0.09) !important;

  border-color: #93c5fd !important;

}

.zst-teacher-top {

  display: flex !important;

  align-items: center !important;

  justify-content: space-between !important;

}

.zst-teacher-avatar {

  width: 44px !important;

  height: 44px !important;

  border-radius: 50% !important;

  background: linear-gradient(135deg, #132c6b 0%, #1e3a8a 100%) !important;

  color: #ffffff !important;

  font-weight: 800 !important;

  font-size: 14px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;

}

.zst-teacher-lp {

  font-size: 11px !important;

  font-weight: 700 !important;

  color: #94a3b8 !important;

  background: #f1f5f9 !important;

  padding: 2px 8px !important;

  border-radius: 10px !important;

}

.zst-teacher-name {

  font-size: 15.5px !important;

  color: #0f172a !important;

  margin: 0 0 3px !important;

  font-weight: 500 !important;

  line-height: 1.35 !important;

}

.zst-teacher-name strong {

  font-weight: 700 !important;

}

.zst-teacher-role {

  font-size: 12px !important;

  color: #64748b !important;

}

.zst-no-results {

  text-align: center !important;

  padding: 50px 20px !important;

  background: #f8fafc !important;

  border-radius: 16px !important;

  border: 1px dashed #cbd5e1 !important;

  margin: 20px auto !important;

  max-width: 600px !important;

}

.zst-no-results-icon {

  font-size: 36px !important;

  margin-bottom: 12px !important;

}

.zst-no-results h3 {

  font-size: 18px !important;

  font-weight: 700 !important;

  color: #0f172a !important;

  margin: 0 0 6px !important;

}

.zst-no-results p {

  font-size: 14px !important;

  color: #64748b !important;

  margin: 0 !important;

}

/* ==========================================================================

   MODUŁ: STATUT I AKTY PRAWNE (ID: 40868, /statut-szkolny/)

   ========================================================================== */

.zst-statut-container {

  max-width: 1040px !important;

  margin: 0 auto !important;

  padding: 10px 15px 60px !important;

  box-sizing: border-box !important;

  color: #1e293b !important;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;

}

.zst-statut-container h1,

.zst-statut-container h2,

.zst-statut-container h3,

.zst-statut-container h4 {

  border: none !important;

  border-left: none !important;

  padding-left: 0 !important;

}

.zst-statut-container h1::before,

.zst-statut-container h2::before,

.zst-statut-container h3::before,

.zst-statut-container h4::before,

.zst-statut-container h1::after,

.zst-statut-container h2::after,

.zst-statut-container h3::after,

.zst-statut-container h4::after {

  display: none !important;

  content: none !important;

}

.zst-statut-container p:empty,

.zst-statut-cards-list > p {

  display: none !important;

  margin: 0 !important;

  padding: 0 !important;

  height: 0 !important;

  width: 0 !important;

}

/* Intro Statutu (bez powielonego tytułu) */

.zst-statut-intro {

  text-align: center !important;

  max-width: 820px !important;

  margin: 10px auto 40px !important;

  padding: 0 15px !important;

}

.zst-statut-subtitle {

  color: #475569 !important;

  font-size: clamp(14.5px, 1.8vw, 16px) !important;

  line-height: 1.65 !important;

  max-width: 760px !important;

  margin: 0 auto 20px !important;

}

.zst-statut-info-badges {

  display: flex !important;

  justify-content: center !important;

  gap: 10px !important;

  flex-wrap: wrap !important;

}

.zst-statut-pill {

  background: rgba(19, 44, 107, 0.06) !important;

  color: #132c6b !important;

  font-size: 12px !important;

  font-weight: 700 !important;

  padding: 5px 14px !important;

  border-radius: 20px !important;

}

/* Lista Kart Statutów */

.zst-statut-cards-list {

  display: flex !important;

  flex-direction: column !important;

  gap: 20px !important;

}

.zst-statut-card {

  background: #ffffff !important;

  border-radius: 18px !important;

  padding: 26px 30px !important;

  border: 1px solid #e2e8f0 !important;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;

  display: flex !important;

  align-items: center !important;

  gap: 24px !important;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;

  position: relative !important;

}

.zst-statut-card:hover {

  transform: translateY(-4px) !important;

  box-shadow: 0 12px 28px rgba(19, 44, 107, 0.1) !important;

  border-color: #cbd5e1 !important;

}

.zst-statut-card-featured {

  border-left: 6px solid #d4af37 !important;

  background: linear-gradient(180deg, #ffffff 0%, #fffdf8 100%) !important;

}

.zst-statut-icon-box {

  width: 58px !important;

  height: 68px !important;

  background: #fee2e2 !important;

  border: 1px solid #fecaca !important;

  border-radius: 12px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  flex-shrink: 0 !important;

  box-shadow: 0 3px 10px rgba(239, 68, 68, 0.15) !important;

}

.zst-statut-pdf-badge {

  font-size: 15px !important;

  font-weight: 900 !important;

  color: #dc2626 !important;

  letter-spacing: 0.5px !important;

}

.zst-statut-card-main {

  flex: 1 !important;

}

.zst-statut-card-topline {

  display: flex !important;

  align-items: center !important;

  gap: 12px !important;

  margin-bottom: 8px !important;

}

.zst-doc-tag {

  font-size: 11.5px !important;

  font-weight: 800 !important;

  text-transform: uppercase !important;

  letter-spacing: 0.6px !important;

  padding: 3px 10px !important;

  border-radius: 0 !important;

}

.zst-tag-gold {

  background: rgba(212, 175, 55, 0.15) !important;

  color: #92690a !important;

  border: 1px solid rgba(212, 175, 55, 0.3) !important;

}

.zst-tag-navy {

  background: rgba(19, 44, 107, 0.08) !important;

  color: #132c6b !important;

  border: 1px solid rgba(19, 44, 107, 0.15) !important;

}

.zst-tag-blue {

  background: rgba(37, 99, 235, 0.08) !important;

  color: #1d4ed8 !important;

  border: 1px solid rgba(37, 99, 235, 0.15) !important;

}

.zst-doc-meta-size {

  font-size: 12px !important;

  color: #64748b !important;

  font-weight: 600 !important;

}

.zst-statut-card-title {

  font-size: 18px !important;

  font-weight: 800 !important;

  color: #0f172a !important;

  margin: 0 0 8px !important;

  line-height: 1.35 !important;

}

.zst-statut-card-desc {

  font-size: 14px !important;

  color: #475569 !important;

  line-height: 1.6 !important;

  margin: 0 0 12px !important;

}

.zst-statut-card-meta {

  display: flex !important;

  gap: 16px !important;

  font-size: 12.5px !important;

  color: #64748b !important;

}

.zst-statut-card-actions {

  display: flex !important;

  flex-direction: column !important;

  gap: 10px !important;

  flex-shrink: 0 !important;

  min-width: 170px !important;

}

.zst-page-content-wrap a.zst-btn-preview,

.zst-statut-container a.zst-btn-preview,

.zst-statut-card a.zst-btn-preview,

a.zst-btn-preview {

  background: #132c6b !important;

  color: #ffffff !important;

  padding: 11px 20px !important;

  border-radius: 9px !important;

  font-size: 13.5px !important;

  font-weight: 700 !important;

  text-align: center !important;

  text-decoration: none !important;

  transition: all 0.2s ease !important;

  box-shadow: 0 4px 12px rgba(19, 44, 107, 0.22) !important;

  display: block !important;

  border: 1px solid #132c6b !important;

}

.zst-page-content-wrap a.zst-btn-preview:hover,

.zst-statut-container a.zst-btn-preview:hover,

.zst-statut-card a.zst-btn-preview:hover,

a.zst-btn-preview:hover {

  background: #09173a !important;

  color: #ffffff !important;

  text-decoration: none !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 6px 16px rgba(19, 44, 107, 0.35) !important;

  border-color: #09173a !important;

}

.zst-page-content-wrap a.zst-btn-download,

.zst-statut-container a.zst-btn-download,

.zst-statut-card a.zst-btn-download,

a.zst-btn-download {

  background: #ffffff !important;

  color: #1e293b !important;

  padding: 10px 20px !important;

  border-radius: 9px !important;

  font-size: 13.5px !important;

  font-weight: 700 !important;

  text-align: center !important;

  text-decoration: none !important;

  border: 1.5px solid #cbd5e1 !important;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;

  transition: all 0.2s ease !important;

  display: block !important;

}

.zst-page-content-wrap a.zst-btn-download:hover,

.zst-statut-container a.zst-btn-download:hover,

.zst-statut-card a.zst-btn-download:hover,

a.zst-btn-download:hover {

  background: #f1f5f9 !important;

  color: #0f172a !important;

  text-decoration: none !important;

  border-color: #94a3b8 !important;

  transform: translateY(-2px) !important;

}

.zst-statut-bip-note {

  background: #f8fafc !important;

  border-radius: 14px !important;

  border: 1px solid #e2e8f0 !important;

  padding: 20px 24px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: space-between !important;

  gap: 20px !important;

  margin-top: 40px !important;

}

.zst-statut-bip-text {

  font-size: 13.5px !important;

  color: #475569 !important;

  line-height: 1.55 !important;

}

.zst-page-content-wrap a.zst-btn-bip,

.zst-statut-container a.zst-btn-bip,

a.zst-btn-bip {

  background: #b48318 !important;

  color: #ffffff !important;

  padding: 11px 22px !important;

  border-radius: 9px !important;

  font-size: 13.5px !important;

  font-weight: 700 !important;

  text-decoration: none !important;

  white-space: nowrap !important;

  box-shadow: 0 3px 10px rgba(180, 131, 24, 0.25) !important;

  transition: background 0.2s ease, transform 0.2s ease !important;

  display: inline-block !important;

}

.zst-page-content-wrap a.zst-btn-bip:hover,

.zst-statut-container a.zst-btn-bip:hover,

a.zst-btn-bip:hover {

  background: #92690a !important;

  color: #ffffff !important;

  text-decoration: none !important;

  transform: translateY(-2px) !important;

}

/* Responsywność Kadry i Statutu */

@media (max-width: 991px) {

  .zst-directors-subgrid {

    grid-template-columns: repeat(2, 1fr) !important;

  }

  .zst-teachers-grid {

    grid-template-columns: repeat(2, 1fr) !important;

  }

}

@media (max-width: 767px) {

  .zst-director-card-featured {

    flex-direction: column !important;

    text-align: center !important;

    padding: 24px 20px !important;

  }

  .zst-directors-subgrid {

    grid-template-columns: 1fr !important;

  }

  .zst-teachers-grid {

    grid-template-columns: 1fr !important;

  }

  .zst-statut-card {

    flex-direction: column !important;

    align-items: flex-start !important;

    padding: 20px !important;

  }

  .zst-statut-card-actions {

    flex-direction: row !important;

    width: 100% !important;

  }

  .zst-btn-preview, .zst-btn-download {

    flex: 1 !important;

  }

  .zst-statut-bip-note {

    flex-direction: column !important;

    align-items: flex-start !important;

  }

}

/* ==========================================================================

   KALENDARZ SZKOLNY I STYLISTYKA STRONY GŁÓWNEJ

   ========================================================================== */

/* Uniesienie owalu 50 lat ZST w górę w prawym rogu */

.zst-el-element-e5914ca {

    margin-top: -45px !important;

    margin-bottom: 15px !important;

    transition: none !important;

}

/* Węższy, idealnie wycentrowany kafelek kalendarza na stronie głównej */

.zst-calendar-mockup {

    margin: 0 -23px 24px -23px !important;

    width: calc(100% + 46px) !important;

    max-width: 212px !important;

    box-sizing: border-box !important;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

}

.zst-home-cal-card {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    padding: 14px 12px 14px !important;

    box-shadow: 0 4px 18px rgba(19, 44, 107, 0.08) !important;

    box-sizing: border-box !important;

    position: relative !important;

}

.zst-home-cal-accent {

    position: absolute !important;

    top: 0 !important;

    left: 16px !important;

    right: 16px !important;

    height: 3px !important;

    background: linear-gradient(90deg, #132c6b, #f5b324) !important;

    border-radius: 0 0 3px 3px !important;

}

.zst-home-cal-head {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    margin-bottom: 11px !important;

    padding-bottom: 8px !important;

    border-bottom: 1px solid #f1f5f9 !important;

}

.zst-home-cal-title-wrap {

    display: flex !important;

    align-items: center !important;

    gap: 6px !important;

}

.zst-home-cal-icon {

    width: 26px !important;

    height: 26px !important;

    background: #eff6ff !important;

    border: 1px solid #dbeafe !important;

    border-radius: 0 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    color: #1e40af !important;

}

.zst-home-cal-title {

    margin: 0 !important;

    font-size: 12.5px !important;

    font-weight: 800 !important;

    color: #132c6b !important;

    text-transform: uppercase !important;

    letter-spacing: 0.02em !important;

    line-height: 1.1 !important;

}

.zst-home-cal-subtitle {

    font-size: 9.5px !important;

    color: #64748b !important;

    font-weight: 500 !important;

}

.zst-home-cal-badge {

    background: #f8fafc !important;

    border: 1px solid #e2e8f0 !important;

    color: #64748b !important;

    font-size: 9px !important;

    font-weight: 700 !important;

    padding: 2px 5px !important;

    border-radius: 4px !important;

}

.zst-home-cal-events {

    display: flex !important;

    flex-direction: column !important;

    gap: 7px !important;

    margin-bottom: 12px !important;

}

.zst-h-ev-row {

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: #f8fafc !important;

    border: 1px solid #f1f5f9 !important;

    border-radius: 8px !important;

    padding: 6px 8px !important;

}

.zst-h-ev-date {
    width: 52px !important;
    min-width: 52px !important;
    height: 40px !important;
    border-radius: 8px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    padding: 2px !important;
    overflow: hidden !important;
}

.zst-date-amber {

    background: #fef3c7 !important;

    border: 1px solid #fde68a !important;

}

.zst-date-purple {

    background: #ede9fe !important;

    border: 1px solid #ddd6fe !important;

}

.zst-date-blue {

    background: #e0f2fe !important;

    border: 1px solid #bae6fd !important;

}

.zst-ev-mo {
    font-size: 7.2px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important;
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
}

.zst-date-amber .zst-ev-mo { color: #92400e !important; }

.zst-date-purple .zst-ev-mo { color: #5b21b6 !important; }

.zst-date-blue .zst-ev-mo { color: #0369a1 !important; }

.zst-ev-days {
    font-size: 13.5px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.zst-date-amber .zst-ev-days { color: #b45309 !important; }

.zst-date-purple .zst-ev-days { color: #6d28d9 !important; }

.zst-date-blue .zst-ev-days { color: #0284c7 !important; }

/* Skalowanie daty styczniowej do wielkości kwadratu */

.zst-days-fit {

    font-size: 8px !important;

    letter-spacing: -0.04em !important;

    white-space: nowrap !important;

}

.zst-h-ev-info {

    text-align: left !important;

    overflow: hidden !important;

    line-height: 1.2 !important;

}

.zst-h-ev-name {

    font-size: 11px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

    white-space: nowrap !important;

    text-overflow: ellipsis !important;

    overflow: hidden !important;

}

.zst-h-ev-desc {

    font-size: 9.5px !important;

    color: #64748b !important;

}

.zst-home-cal-btn {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 5px !important;

    width: 100% !important;

    background: #132c6b !important;

    color: #ffffff !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    padding: 8px 10px !important;

    border-radius: 0 !important;

    text-decoration: none !important;

    box-sizing: border-box !important;

    transition: background 0.2s ease !important;

}

.zst-home-cal-btn:hover {

    background: #1e40af !important;

    color: #ffffff !important;

}

/* ==========================================================================

   PODSTRONA KALENDARZA (/plan-roku-szkolnego/)

   ========================================================================== */

.zst-m-btn {

    padding: 7px 14px !important;

    border-radius: 8px !important;

    border: 1px solid #e2e8f0 !important;

    background: #ffffff !important;

    color: #475569 !important;

    font-weight: 600 !important;

    font-size: 12px !important;

    cursor: pointer !important;

    white-space: nowrap !important;

    transition: all 0.2s ease !important;

}

.zst-m-btn:hover {

    border-color: #cbd5e1 !important;

    color: #1e293b !important;

}

.zst-m-btn.active {

    border: 2px solid #1e40af !important;

    background: #1e40af !important;

    color: #ffffff !important;

    font-weight: 800 !important;

    font-size: 12.5px !important;

    box-shadow: 0 4px 10px rgba(30,64,175,0.25) !important;

}

.zst-cal-cell {

    height: 72px !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 8px !important;

    padding: 6px !important;

    font-size: 13px !important;

    font-weight: 600 !important;

    color: #1e293b !important;

    background: #ffffff !important;

    box-sizing: border-box !important;

    position: relative !important;

    transition: all 0.2s ease !important;

}

.zst-cal-cell:hover {

    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;

}

.zst-cal-weekend {

    background: #fef2f2 !important;

}

.zst-cal-weekend .zst-day-num {

    color: #ef4444 !important;

}

.zst-cal-dim {

    border-style: dashed !important;

    background: #f8fafc !important;

    color: #94a3b8 !important;

}

.zst-day-num {

    font-size: 13px !important;

    font-weight: 700 !important;

    display: block !important;

    margin-bottom: 2px !important;

}

.zst-event-tag {

    font-size: 9.5px !important;

    font-weight: 700 !important;

    border-radius: 4px !important;

    padding: 2px 4px !important;

    line-height: 1.2 !important;

    white-space: nowrap !important;

    overflow: hidden !important;

    text-overflow: ellipsis !important;

}

.zst-tag-free {

    background: #fef08a !important;

    color: #854d0e !important;

    border: 1px solid #eab308 !important;

}

.zst-tag-holiday-stat {

    background: #fee2e2 !important;

    color: #991b1b !important;

    border: 1px solid #ef4444 !important;

}

.zst-tag-holiday-school {

    background: #e0f2fe !important;

    color: #0369a1 !important;

    border: 1px solid #0284c7 !important;

}

.zst-tag-break {

    background: #ede9fe !important;

    color: #5b21b6 !important;

    border: 1px solid #8b5cf6 !important;

}

.zst-tag-meeting {

    background: #fef3c7 !important;

    color: #92400e !important;

    border: 1px solid #f59e0b !important;

}

.zst-tag-parents {

    background: #e0f2fe !important;

    color: #075985 !important;

    border: 1px solid #0284c7 !important;

}

.zst-tag-grades {

    background: #f3e8ff !important;

    color: #6b21a8 !important;

    border: 1px solid #a855f7 !important;

}

.zst-tag-exam {

    background: #dcfce7 !important;

    color: #166534 !important;

    border: 1px solid #22c55e !important;

}

.zst-tag-event {

    background: #e0e7ff !important;

    color: #3730a3 !important;

    border: 1px solid #6366f1 !important;

}

/* ==========================================================================

   PODSTRONA PEDAGOGA I PSYCHOLOGA (/pedagog-szkolny/)

   ========================================================================== */

.zst-pedagog-page-wrap {

    max-width: 1040px !important;

    margin: 0 auto !important;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

}

.zst-ped-hero {

    position: relative !important;

    background: #0d1a38 !important;

    border-radius: 20px !important;

    overflow: hidden !important;

    margin-bottom: 34px !important;

    box-shadow: 0 16px 36px -8px rgba(11, 26, 64, 0.35), 0 0 0 1px rgba(245, 179, 36, 0.22) !important;

    min-height: 380px !important;

    display: flex !important;

    align-items: center !important;

}

/* Seamless Background Photo Integration */

.zst-ped-hero-bg {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    overflow: hidden !important;

    pointer-events: none !important;

}

.zst-ped-hero-bg-img {

    position: absolute !important;

    right: 0 !important;

    top: 0 !important;

    width: 62% !important;

    height: 100% !important;

    object-fit: cover !important;

    object-position: 70% center !important;

    display: block !important;

}

/* Soft cinematic gradient fade from deep navy to real photo */

.zst-ped-hero-fade {

    position: absolute !important;

    inset: 0 !important;

    background: linear-gradient(

        90deg,

        #0d1a38 0%,

        #0d1a38 38%,

        rgba(13, 26, 56, 0.94) 48%,

        rgba(13, 26, 56, 0.72) 60%,

        rgba(13, 26, 56, 0.32) 78%,

        rgba(13, 26, 56, 0.08) 100%

    ) !important;

}

/* Warm ambient lighting over the hero */

.zst-ped-hero::after {

    content: "" !important;

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    height: 100% !important;

    background: radial-gradient(circle at 15% 15%, rgba(245, 179, 36, 0.12) 0%, transparent 50%) !important;

    pointer-events: none !important;

    z-index: 1 !important;

}

.zst-ped-hero-inner {

    position: relative !important;

    z-index: 2 !important;

    padding: 42px 40px !important;

    max-width: 640px !important;

}

.zst-ped-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: linear-gradient(135deg, rgba(245, 179, 36, 0.28), rgba(251, 146, 60, 0.22)) !important;

    border: 1px solid rgba(245, 179, 36, 0.6) !important;

    color: #fed7aa !important;

    font-size: 11.5px !important;

    font-weight: 700 !important;

    padding: 4px 12px !important;

    border-radius: 20px !important;

    text-transform: uppercase !important;

    letter-spacing: 0.08em !important;

    margin-bottom: 14px !important;

    box-shadow: 0 2px 8px rgba(245, 179, 36, 0.18) !important;

}

.zst-ped-badge i {

    color: #f87171 !important;

}

.zst-ped-title {

    color: #ffffff !important;

    font-size: 30px !important;

    font-weight: 800 !important;

    margin: 0 0 14px 0 !important;

    line-height: 1.2 !important;

    letter-spacing: -0.015em !important;

    border-left: none !important;

    padding-left: 0 !important;

    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;

}

.zst-ped-desc {

    color: #e2e8f0 !important;

    font-size: 15px !important;

    line-height: 1.65 !important;

    margin: 0 0 24px 0 !important;

    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4) !important;

}

.zst-ped-desc strong {

    color: #fef08a !important;

    font-weight: 600 !important;

}

.zst-ped-features {

    display: flex !important;

    flex-wrap: wrap !important;

    gap: 12px !important;

}

.zst-ped-feat {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    background: rgba(13, 26, 56, 0.75) !important;

    backdrop-filter: blur(8px) !important;

    border: 1px solid rgba(255, 255, 255, 0.2) !important;

    padding: 8px 16px !important;

    border-radius: 24px !important;

    font-size: 13px !important;

    font-weight: 500 !important;

    color: #ffffff !important;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;

    transition: all 0.2s ease !important;

}

.zst-ped-feat:hover {

    background: rgba(13, 26, 56, 0.9) !important;

    border-color: rgba(245, 179, 36, 0.6) !important;

    transform: translateY(-1px) !important;

}

.zst-ped-feat i {

    color: #f5b324 !important;

    font-size: 13px !important;

}

/* Mobile responsive for hero */

@media (max-width: 900px) {

    .zst-ped-hero {

        min-height: auto !important;

    }

    .zst-ped-hero-bg-img {

        width: 100% !important;

        height: 100% !important;

        opacity: 0.35 !important;

    }

    .zst-ped-hero-fade {

        background: linear-gradient(

            180deg,

            rgba(13, 26, 56, 0.94) 0%,

            rgba(13, 26, 56, 0.88) 100%

        ) !important;

    }

    .zst-ped-hero-inner {

        padding: 30px 22px !important;

        max-width: 100% !important;

    }

    .zst-ped-title {

        font-size: 24px !important;

    }

    .zst-ped-desc {

        font-size: 14px !important;

    }

}

.zst-ped-section-header {

    text-align: center !important;

    margin-bottom: 24px !important;

}

.zst-sec-tag {

    color: #1e40af !important;

    font-size: 11px !important;

    font-weight: 800 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.1em !important;

}

.zst-sec-title {

    color: #0f172a !important;

    font-size: 22px !important;

    font-weight: 800 !important;

    margin: 4px 0 6px 0 !important;

}

.zst-sec-subtitle {

    color: #64748b !important;

    font-size: 13.5px !important;

    margin: 0 !important;

}

.zst-ped-grid {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 20px !important;

    margin-bottom: 35px !important;

}

@media (max-width: 900px) {

    .zst-ped-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-ped-card {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    box-shadow: 0 4px 18px rgba(0,0,0,0.05) !important;

    overflow: hidden !important;

    display: flex !important;

    flex-direction: column !important;

    transition: transform 0.2s ease, box-shadow 0.2s ease !important;

}

.zst-ped-card:hover {

    transform: translateY(-3px) !important;

    box-shadow: 0 8px 24px rgba(19, 44, 107, 0.12) !important;

}

.zst-ped-card-head {

    background: linear-gradient(135deg, #f8fafc 0%, #edf2f7 100%) !important;

    border-bottom: 1px solid #e2e8f0 !important;

    padding: 18px !important;

    display: flex !important;

    align-items: center !important;

    gap: 14px !important;

}

.zst-ped-avatar {

    width: 48px !important;

    height: 48px !important;

    border-radius: 12px !important;

    background: linear-gradient(135deg, #132c6b 0%, #1e40af 100%) !important;

    color: #ffffff !important;

    font-weight: 800 !important;

    font-size: 16px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.2) !important;

}

.zst-avatar-blue {

    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;

}

.zst-avatar-purple {

    background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%) !important;

}

.zst-ped-info {

    overflow: hidden !important;

}

.zst-ped-role {

    font-size: 11px !important;

    font-weight: 700 !important;

    color: #1e40af !important;

    text-transform: uppercase !important;

    display: block !important;

}

.zst-ped-name {

    margin: 2px 0 3px 0 !important;

    font-size: 15px !important;

    font-weight: 800 !important;

    color: #0f172a !important;

}

.zst-ped-room {

    font-size: 11.5px !important;

    color: #64748b !important;

    display: block !important;

}

.zst-ped-card-body {

    padding: 18px !important;

    display: flex !important;

    flex-direction: column !important;

    flex: 1 !important;

    justify-content: space-between !important;

}

.zst-hours-title {

    font-size: 12px !important;

    font-weight: 700 !important;

    color: #475569 !important;

    margin-bottom: 8px !important;

    text-transform: uppercase !important;

    letter-spacing: 0.04em !important;

}

.zst-hours-list {

    display: flex !important;

    flex-direction: column !important;

    gap: 6px !important;

    margin-bottom: 16px !important;

}

.zst-hours-row {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    font-size: 12px !important;

    color: #334155 !important;

    padding: 4px 0 !important;

    border-bottom: 1px dashed #f1f5f9 !important;

}

.zst-hours-row strong {

    color: #132c6b !important;

    font-weight: 700 !important;

}

.zst-ped-contact-row {

    display: flex !important;

    flex-direction: column !important;

    gap: 6px !important;

    border-top: 1px solid #f1f5f9 !important;

    padding-top: 12px !important;

}

.zst-ped-badge-contact {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: #f8fafc !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 0 !important;

    padding: 5px 8px !important;

    font-size: 11.5px !important;

    color: #475569 !important;

    font-weight: 600 !important;

}

.zst-helpline-box {

    background: #fef2f2 !important;

    border: 1px solid #fecaca !important;

    border-radius: 16px !important;

    padding: 24px !important;

    margin-bottom: 35px !important;

}

.zst-helpline-head {

    display: flex !important;

    align-items: center !important;

    gap: 14px !important;

    margin-bottom: 20px !important;

}

.zst-helpline-icon {

    width: 44px !important;

    height: 44px !important;

    border-radius: 12px !important;

    background: #ef4444 !important;

    color: #ffffff !important;

    font-size: 20px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

}

.zst-helpline-title {

    margin: 0 !important;

    font-size: 19px !important;

    font-weight: 800 !important;

    color: #991b1b !important;

}

.zst-helpline-subtitle {

    margin: 2px 0 0 0 !important;

    font-size: 13px !important;

    color: #7f1d1d !important;

}

.zst-helpline-grid {

    display: grid !important;

    grid-template-columns: repeat(2, 1fr) !important;

    gap: 14px !important;

}

@media (max-width: 768px) {

    .zst-helpline-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-helpline-card {

    background: #ffffff !important;

    border: 1px solid #fee2e2 !important;

    border-radius: 10px !important;

    padding: 14px 16px !important;

    position: relative !important;

}

.zst-hl-badge {

    display: inline-block !important;

    background: #fee2e2 !important;

    color: #dc2626 !important;

    font-size: 10px !important;

    font-weight: 700 !important;

    padding: 2px 6px !important;

    border-radius: 4px !important;

    margin-bottom: 6px !important;

}

.zst-hl-number {

    font-size: 22px !important;

    font-weight: 800 !important;

    color: #991b1b !important;

    letter-spacing: 0.04em !important;

    margin-bottom: 2px !important;

}

.zst-hl-name {

    font-size: 12.5px !important;

    font-weight: 700 !important;

    color: #1e293b !important;

    margin-bottom: 4px !important;

}

.zst-hl-sub {

    font-size: 11px !important;

    color: #64748b !important;

    line-height: 1.4 !important;

}

.zst-ped-docs-section {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 16px !important;

    padding: 24px !important;

}

.zst-docs-head-title {

    margin: 0 0 18px 0 !important;

    font-size: 17px !important;

    font-weight: 800 !important;

    color: #0f172a !important;

}

.zst-ped-docs-grid {

    display: grid !important;

    grid-template-columns: repeat(2, 1fr) !important;

    gap: 12px !important;

}

@media (max-width: 768px) {

    .zst-ped-docs-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-doc-item {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    background: #f8fafc !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 10px !important;

    padding: 12px 14px !important;

    text-decoration: none !important;

    transition: all 0.2s ease !important;

}

.zst-doc-item:hover {

    background: #ffffff !important;

    border-color: #1e40af !important;

    box-shadow: 0 4px 12px rgba(30, 64, 175, 0.08) !important;

}

.zst-doc-icon {

    width: 36px !important;

    height: 36px !important;

    background: #eff6ff !important;

    border-radius: 8px !important;

    color: #1e40af !important;

    font-size: 16px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

}

.zst-doc-info {

    flex: 1 !important;

    overflow: hidden !important;

}

.zst-doc-name {

    display: block !important;

    font-size: 12.5px !important;

    font-weight: 700 !important;

    color: #1e293b !important;

    line-height: 1.3 !important;

}

.zst-doc-meta {

    display: block !important;

    font-size: 11px !important;

    color: #64748b !important;

    margin-top: 2px !important;

}

.zst-doc-action {

    font-size: 11.5px !important;

    font-weight: 700 !important;

    color: #1e40af !important;

    white-space: nowrap !important;

}

/* ==========================================================================

   KALENDARZ ROKU SZKOLNEGO ZST (PODSTRONA /plan-roku-szkolnego/ ORAZ HOMEPAGE)

   ========================================================================== */

.zst-calendar-app-wrapper {

    max-width: 1040px !important;

    margin: 0 auto 40px auto !important;

    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;

}

.zst-cal-top-bar {

    display: flex !important;

    flex-wrap: wrap !important;

    justify-content: space-between !important;

    align-items: center !important;

    gap: 14px !important;

    background: linear-gradient(135deg, #0b1a40 0%, #152d6e 100%) !important;

    border: 1px solid rgba(245, 179, 36, 0.4) !important;

    border-radius: 12px !important;

    padding: 16px 22px !important;

    margin-bottom: 20px !important;

    box-shadow: 0 4px 16px rgba(0,0,0,0.1) !important;

}

.zst-cal-top-school {

    color: #f5b324 !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.08em !important;

}

.zst-cal-top-heading {

    color: #ffffff !important;

    font-size: 20px !important;

    font-weight: 800 !important;

    margin: 2px 0 0 0 !important;

    text-transform: uppercase !important;

    letter-spacing: -0.01em !important;

}

.zst-cal-top-actions {

    display: flex !important;

    gap: 10px !important;

}

.zst-btn-pdf-download {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: #f5b324 !important;

    color: #0b193d !important;

    font-weight: 700 !important;

    font-size: 13px !important;

    padding: 9px 16px !important;

    border-radius: 8px !important;

    text-decoration: none !important;

    transition: all 0.2s ease !important;

}

.zst-btn-pdf-download:hover {

    background: #e2a21a !important;

    color: #050d24 !important;

    transform: translateY(-1px) !important;

    box-shadow: 0 4px 12px rgba(245, 179, 36, 0.35) !important;

}

.zst-btn-print {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: rgba(255,255,255,0.1) !important;

    color: #ffffff !important;

    border: 1px solid rgba(255,255,255,0.2) !important;

    font-weight: 600 !important;

    font-size: 13px !important;

    padding: 9px 14px !important;

    border-radius: 8px !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

}

.zst-btn-print:hover {

    background: rgba(255,255,255,0.2) !important;

    border-color: rgba(255,255,255,0.4) !important;

}

/* Tabs */

.zst-month-tabs {

    display: flex !important;

    gap: 6px !important;

    overflow-x: auto !important;

    padding-bottom: 8px !important;

    margin-bottom: 18px !important;

    scrollbar-width: thin !important;

}

.zst-month-tabs::-webkit-scrollbar {

    height: 5px !important;

}

.zst-month-tabs::-webkit-scrollbar-thumb {

    background: #cbd5e1 !important;

    border-radius: 4px !important;

}

.zst-m-btn {

    flex: 0 0 auto !important;

    padding: 9px 14px !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 8px !important;

    font-size: 12.5px !important;

    font-weight: 700 !important;

    color: #475569 !important;

    cursor: pointer !important;

    white-space: nowrap !important;

    transition: all 0.2s ease !important;

}

.zst-m-btn:hover {

    border-color: #cbd5e1 !important;

    color: #0f172a !important;

    background: #f8fafc !important;

}

.zst-m-btn.active {

    border: 1.5px solid #132c6b !important;

    background: #132c6b !important;

    color: #ffffff !important;

    font-weight: 800 !important;

    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.25) !important;

}

/* Container Box */

.zst-calendar-card-box {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;

    padding: 24px !important;

    margin-bottom: 24px !important;

}

.zst-cal-header {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    margin-bottom: 18px !important;

}

.zst-cal-header-left {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

}

.zst-cal-title {

    margin: 0 !important;

    font-size: 22px !important;

    font-weight: 800 !important;

    color: #0f172a !important;

    letter-spacing: -0.01em !important;

}

.zst-cal-tag {

    background: #e0f2fe !important;

    color: #0369a1 !important;

    font-size: 11.5px !important;

    font-weight: 700 !important;

    padding: 3px 9px !important;

    border-radius: 0 !important;

}

.zst-cal-nav-buttons {

    display: flex !important;

    gap: 6px !important;

}

.zst-nav-btn {

    border: 1px solid #cbd5e1 !important;

    background: #ffffff !important;

    color: #334155 !important;

    border-radius: 7px !important;

    width: 34px !important;

    height: 34px !important;

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

}

.zst-nav-btn:hover {

    background: #f1f5f9 !important;

    border-color: #94a3b8 !important;

    color: #0f172a !important;

}

/* Weekdays */

.zst-weekdays-row {

    display: grid !important;

    grid-template-columns: repeat(7, 1fr) !important;

    gap: 8px !important;

    margin-bottom: 8px !important;

    text-align: center !important;

}

.zst-weekdays-row > div {

    font-weight: 700 !important;

    font-size: 12px !important;

    color: #64748b !important;

    padding: 6px 0 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.04em !important;

}

.zst-weekdays-row .zst-wk-sun {

    color: #ef4444 !important;

}

/* Days Grid */

.zst-days-grid {

    display: grid !important;

    grid-template-columns: repeat(7, 1fr) !important;

    gap: 8px !important;

}

.zst-cal-cell {

    min-height: 80px !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 8px !important;

    padding: 6px !important;

    background: #ffffff !important;

    box-sizing: border-box !important;

    display: flex !important;

    flex-direction: column !important;

    transition: all 0.18s ease !important;

    position: relative !important;

}

.zst-cal-cell:hover {

    box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;

    border-color: #cbd5e1 !important;

}

.zst-cal-weekend {

    background: #fef2f2 !important;

}

.zst-cal-weekend .zst-day-num {

    color: #dc2626 !important;

}

.zst-cal-dim {

    border-style: dashed !important;

    background: #f8fafc !important;

    opacity: 0.55 !important;

}

.zst-cal-dim .zst-day-num {

    color: #94a3b8 !important;

}

.zst-day-num {

    font-size: 13px !important;

    font-weight: 800 !important;

    color: #1e293b !important;

    line-height: 1 !important;

    margin-bottom: 4px !important;

}

/* Event badges */

.zst-event-tag {

    font-size: 9px !important;

    font-weight: 700 !important;

    border-radius: 4px !important;

    padding: 3px 5px !important;

    line-height: 1.2 !important;

    margin-top: auto !important;

    white-space: normal !important;

    word-break: break-word !important;

    text-align: left !important;

}

.zst-tag-free {

    background: #fef08a !important;

    color: #854d0e !important;

    border: 1px solid #eab308 !important;

}

.zst-tag-holiday-stat {

    background: #fee2e2 !important;

    color: #991b1b !important;

    border: 1px solid #ef4444 !important;

}

.zst-tag-break {

    background: #ede9fe !important;

    color: #5b21b6 !important;

    border: 1px solid #8b5cf6 !important;

}

.zst-tag-parents {

    background: #e0f2fe !important;

    color: #0369a1 !important;

    border: 1px solid #0284c7 !important;

}

.zst-tag-meeting {

    background: #fef3c7 !important;

    color: #92400e !important;

    border: 1px solid #f59e0b !important;

}

.zst-tag-exam {

    background: #dcfce7 !important;

    color: #15803d !important;

    border: 1px solid #22c55e !important;

}

.zst-tag-grades {

    background: #fce7f3 !important;

    color: #9d174d !important;

    border: 1px solid #ec4899 !important;

}

.zst-tag-event {

    background: #e0e7ff !important;

    color: #3730a3 !important;

    border: 1px solid #6366f1 !important;

}

/* Agenda / Wykaz oficjalnych terminów */

.zst-month-agenda {

    margin-top: 22px !important;

    padding-top: 18px !important;

    border-top: 1px solid #f1f5f9 !important;

}

.zst-agenda-header {

    font-size: 13px !important;

    font-weight: 800 !important;

    color: #132c6b !important;

    text-transform: uppercase !important;

    letter-spacing: 0.04em !important;

    margin-bottom: 10px !important;

}

.zst-agenda-list {

    display: flex !important;

    flex-direction: column !important;

    gap: 8px !important;

}

.zst-agenda-row {

    display: flex !important;

    align-items: flex-start !important;

    gap: 12px !important;

    padding: 8px 12px !important;

    background: #f8fafc !important;

    border-left: 3px solid #132c6b !important;

    border-radius: 0 !important;

    font-size: 12.5px !important;

}

.zst-agenda-date {

    font-weight: 800 !important;

    color: #0f172a !important;

    white-space: nowrap !important;

    min-width: 120px !important;

}

.zst-agenda-desc {

    color: #334155 !important;

    line-height: 1.4 !important;

}

.zst-agenda-free { border-left-color: #eab308 !important; }

.zst-agenda-holiday-stat { border-left-color: #ef4444 !important; }

.zst-agenda-break { border-left-color: #8b5cf6 !important; }

.zst-agenda-parents { border-left-color: #0284c7 !important; }

.zst-agenda-meeting { border-left-color: #f59e0b !important; }

.zst-agenda-exam { border-left-color: #22c55e !important; }

.zst-agenda-grades { border-left-color: #ec4899 !important; }

.zst-agenda-event { border-left-color: #6366f1 !important; }

/* Legend */

.zst-calendar-legend {

    display: flex !important;

    flex-wrap: wrap !important;

    gap: 16px !important;

    margin-top: 18px !important;

    padding-top: 14px !important;

    border-top: 1px solid #f1f5f9 !important;

    font-size: 12px !important;

    color: #475569 !important;

}

.zst-leg-item {

    display: flex !important;

    align-items: center !important;

    gap: 6px !important;

}

.zst-leg-box {

    width: 12px !important;

    height: 12px !important;

    border-radius: 3px !important;

    display: inline-block !important;

}

@media (max-width: 768px) {

    .zst-cal-cell {

        min-height: 58px !important;

        padding: 3px !important;

    }

    .zst-day-num {

        font-size: 11px !important;

    }

    .zst-event-tag {

        font-size: 7.5px !important;

        padding: 1px 3px !important;

    }

    .zst-weekdays-row > div {

        font-size: 10px !important;

    }

    .zst-agenda-row {

        flex-direction: column !important;

        gap: 4px !important;

    }

}

/* Fixes for top bar heading and nav SVGs */

.zst-cal-top-bar h2,

.zst-cal-top-heading {

    color: #ffffff !important;

    text-shadow: 0 1px 3px rgba(0,0,0,0.4) !important;

}

.zst-nav-btn svg {

    stroke: #1e293b !important;

    width: 14px !important;

    height: 14px !important;

    display: block !important;

}

.zst-nav-btn {

    background: #f8fafc !important;

    border: 1px solid #cbd5e1 !important;

}

.zst-nav-btn:hover {

    background: #e2e8f0 !important;

    border-color: #94a3b8 !important;

}

/* Fix wpautop injecting empty paragraphs into grids */

.zst-ped-grid > p,

.zst-helpline-grid > p,

.zst-ped-docs-grid > p,

.zst-ped-features > p {

    display: none !important;

    margin: 0 !important;

    padding: 0 !important;

}

.zst-ped-grid {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 20px !important;

    margin-bottom: 35px !important;

    align-items: stretch !important;

    width: 100% !important;

}

@media (max-width: 900px) {

    .zst-ped-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-ped-card {

    height: 100% !important;

    display: flex !important;

    flex-direction: column !important;

}

.zst-ped-card-body {

    flex-grow: 1 !important;

    display: flex !important;

    flex-direction: column !important;

}

.zst-ped-contact-row {

    margin-top: auto !important;

}

/* ==========================================================================

   HEADER ACTION BUTTONS & CALENDAR INFO BAR

   ========================================================================== */

.zst-actions {

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    flex-wrap: wrap !important;

}

.zst-action-btn {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 7px !important;

    padding: 8px 16px !important;

    border-radius: 8px !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    line-height: 1 !important;

    text-decoration: none !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

    box-sizing: border-box !important;

}

.zst-btn-fb {

    background: #ffffff !important;

    color: #1877f2 !important;

    border: 1px solid #cbd5e1 !important;

}

.zst-btn-fb:hover {

    background: #f1f5f9 !important;

    border-color: #94a3b8 !important;

}

.zst-btn-print-fixed {

    background: #ffffff !important;

    color: #0e1e47 !important;

    border: 1px solid #cbd5e1 !important;

}

.zst-btn-print-fixed:hover {

    background: #f8fafc !important;

    border-color: #94a3b8 !important;

    color: #1e40af !important;

}

.zst-btn-pdf-fixed {

    background: #f5b324 !important;

    color: #0b193d !important;

    border: 1px solid #eab308 !important;

    box-shadow: 0 2px 6px rgba(245, 179, 36, 0.25) !important;

}

.zst-btn-pdf-fixed:hover {

    background: #e2a21a !important;

    transform: translateY(-1px) !important;

    box-shadow: 0 4px 10px rgba(245, 179, 36, 0.35) !important;

}

/* Info Bar above month tabs */

.zst-cal-info-bar {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap: 12px !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 10px !important;

    padding: 12px 18px !important;

    margin-bottom: 16px !important;

    box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;

}

.zst-cal-info-left {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    flex-wrap: wrap !important;

}

.zst-cal-year-badge {

    background: #132c6b !important;

    color: #ffffff !important;

    font-size: 12px !important;

    font-weight: 800 !important;

    letter-spacing: 0.05em !important;

    padding: 5px 12px !important;

    border-radius: 0 !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

}

.zst-cal-school-name {

    color: #64748b !important;

    font-size: 13px !important;

    font-weight: 600 !important;

}

.zst-cal-pdf-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    color: #b45309 !important;

    background: #fef3c7 !important;

    border: 1px solid #fde68a !important;

    padding: 5px 12px !important;

    border-radius: 0 !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    text-decoration: none !important;

    transition: all 0.2s ease !important;

}

.zst-cal-pdf-badge:hover {

    background: #fde68a !important;

    color: #78350f !important;

}

/* ==========================================================================

   KONCEPCJA PRACY ZST-CKZiU - NOWOCZESNY DESIGN PODSTRONY

   ========================================================================== */

.zst-koncepcja-container {

    max-width: 1200px;

    margin: 0 auto;

    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    color: #1e293b;

}

/* 1. Główny Baner Motto (ZST) */

.zst-motto-hero {

    background: linear-gradient(135deg, #0b193d 0%, #132a68 50%, #1e3a8a 100%);

    border-radius: 16px;

    padding: 40px 36px;

    color: #ffffff;

    box-shadow: 0 10px 30px rgba(11, 25, 61, 0.15);

    margin-bottom: 36px;

    position: relative;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.1);

}

.zst-motto-hero::before {

    content: '';

    position: absolute;

    top: -50px;

    right: -50px;

    width: 250px;

    height: 250px;

    background: radial-gradient(circle, rgba(245, 179, 36, 0.2) 0%, rgba(245, 179, 36, 0) 70%);

    border-radius: 50%;

    pointer-events: none;

}

.zst-motto-tag {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    background: rgba(245, 179, 36, 0.15);

    border: 1px solid rgba(245, 179, 36, 0.4);

    color: #f5b324;

    font-size: 13px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.08em;

    padding: 6px 14px;

    border-radius: 999px;

    margin-bottom: 20px;

}

.zst-motto-title {

    font-family: 'Montserrat', sans-serif;

    font-size: 32px;

    font-weight: 800;

    line-height: 1.25;

    margin: 0 0 16px 0;

    letter-spacing: -0.02em;

}

.zst-acronym-row {

    display: flex;

    flex-wrap: wrap;

    gap: 16px;

    margin: 24px 0 20px 0;

}

.zst-acronym-pill {

    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.18);

    border-radius: 12px;

    padding: 12px 20px;

    display: flex;

    align-items: center;

    gap: 12px;

    backdrop-filter: blur(8px);

    transition: transform 0.2s ease, background 0.2s ease;

}

.zst-acronym-pill:hover {

    transform: translateY(-2px);

    background: rgba(255, 255, 255, 0.12);

}

.zst-acronym-letter {

    font-family: 'Montserrat', sans-serif;

    width: 38px;

    height: 38px;

    background: #f5b324;

    color: #0b193d;

    border-radius: 8px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 22px;

    font-weight: 900;

    box-shadow: 0 4px 10px rgba(245, 179, 36, 0.35);

}

.zst-acronym-text {

    font-size: 17px;

    font-weight: 700;

    color: #ffffff;

    letter-spacing: 0.02em;

}

.zst-motto-desc {

    font-size: 16px;

    line-height: 1.6;

    color: #cbd5e1;

    max-width: 850px;

    margin: 0;

}

/* 2. Trzy Filary Działalności */

.zst-sec-header {

    text-align: center;

    margin-bottom: 28px;

}

.zst-sec-eyebrow {

    color: #f5b324;

    font-size: 13px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: 0.1em;

    margin-bottom: 8px;

    display: block;

}

.zst-sec-title {

    font-family: 'Montserrat', sans-serif;

    font-size: 26px;

    font-weight: 800;

    color: #0b193d;

    margin: 0 0 10px 0;

}

.zst-sec-sub {

    font-size: 15px;

    color: #64748b;

    max-width: 700px;

    margin: 0 auto;

    line-height: 1.5;

}

.zst-pillars-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 24px;

    margin-bottom: 44px;

}

.zst-pillar-card {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 28px 24px;

    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);

    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;

    display: flex;

    flex-direction: column;

    position: relative;

    overflow: hidden;

}

.zst-pillar-card::before {

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    right: 0;

    height: 4px;

    background: linear-gradient(90deg, #1e3a8a, #f5b324);

    opacity: 0;

    transition: opacity 0.25s ease;

}

.zst-pillar-card:hover {

    transform: translateY(-4px);

    box-shadow: 0 12px 24px rgba(11, 25, 61, 0.08);

    border-color: #cbd5e1;

}

.zst-pillar-card:hover::before {

    opacity: 1;

}

.zst-pillar-icon {

    width: 52px;

    height: 52px;

    background: #f0f4ff;

    color: #1e3a8a;

    border-radius: 12px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 22px;

    margin-bottom: 20px;

}

.zst-pillar-title {

    font-family: 'Montserrat', sans-serif;

    font-size: 18px;

    font-weight: 700;

    color: #0b193d;

    margin: 0 0 10px 0;

    line-height: 1.35;

}

.zst-pillar-text {

    font-size: 14px;

    color: #475569;

    line-height: 1.6;

    margin: 0;

    flex-grow: 1;

}

/* 3. Model Absolwenta - Siatka 6 cech */

.zst-model-wrapper {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 18px;

    padding: 36px 32px;

    margin-bottom: 44px;

}

.zst-model-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 20px;

    margin-top: 28px;

}

.zst-model-card {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 22px 20px;

    display: flex;

    align-items: flex-start;

    gap: 16px;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);

    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;

}

.zst-model-card:hover {

    transform: translateY(-2px);

    border-color: #f5b324;

    box-shadow: 0 8px 18px rgba(245, 179, 36, 0.12);

}

.zst-model-num {

    flex-shrink: 0;

    width: 38px;

    height: 38px;

    background: #f1f5f9;

    border: 1px solid #cbd5e1;

    border-radius: 8px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-family: 'Montserrat', sans-serif;

    font-size: 14px;

    font-weight: 800;

    color: #1e3a8a;

    transition: all 0.2s ease;

}

.zst-model-card:hover .zst-model-num {

    background: #0b193d;

    color: #f5b324;

    border-color: #0b193d;

}

.zst-model-body {

    flex-grow: 1;

}

.zst-model-heading {

    font-family: 'Montserrat', sans-serif;

    font-size: 15px;

    font-weight: 700;

    color: #0b193d;

    margin: 0 0 6px 0;

    display: flex;

    align-items: center;

    gap: 8px;

}

.zst-model-heading i {

    color: #f5b324;

    font-size: 14px;

}

.zst-model-desc {

    font-size: 13.5px;

    color: #475569;

    line-height: 1.5;

    margin: 0;

}

/* 4. Wspólnota i Partnerstwo */

.zst-community-box {

    background: linear-gradient(135deg, #ffffff 0%, #f0f7ff 100%);

    border: 1px solid #bfdbfe;

    border-radius: 14px;

    padding: 28px;

    display: flex;

    align-items: center;

    gap: 24px;

    margin-bottom: 44px;

}

.zst-community-icon {

    flex-shrink: 0;

    width: 60px;

    height: 60px;

    background: #1e3a8a;

    color: #ffffff;

    border-radius: 14px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 26px;

    box-shadow: 0 4px 12px rgba(30, 58, 138, 0.25);

}

.zst-community-content h4 {

    font-family: 'Montserrat', sans-serif;

    font-size: 18px;

    font-weight: 700;

    color: #0b193d;

    margin: 0 0 8px 0;

}

.zst-community-content p {

    font-size: 14.5px;

    line-height: 1.6;

    color: #334155;

    margin: 0;

}

/* 5. Powiązane dokumenty */

.zst-related-docs {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 28px;

}

.zst-related-head {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 20px;

}

.zst-related-head h3 {

    font-family: 'Montserrat', sans-serif;

    font-size: 18px;

    font-weight: 700;

    color: #0b193d;

    margin: 0;

}

.zst-docs-row {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 16px;

}

.zst-doc-link-card {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 10px;

    padding: 16px;

    display: flex;

    align-items: center;

    gap: 14px;

    text-decoration: none;

    color: inherit;

    transition: all 0.2s ease;

}

.zst-doc-link-card:hover {

    background: #ffffff;

    border-color: #1e3a8a;

    box-shadow: 0 4px 12px rgba(30, 58, 138, 0.08);

    transform: translateY(-2px);

}

.zst-doc-link-icon {

    width: 40px;

    height: 40px;

    background: #f1f5f9;

    color: #1e3a8a;

    border-radius: 8px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 18px;

    flex-shrink: 0;

}

.zst-doc-link-card:hover .zst-doc-link-icon {

    background: #1e3a8a;

    color: #ffffff;

}

.zst-doc-link-info {

    flex-grow: 1;

}

.zst-doc-link-title {

    display: block;

    font-size: 14px;

    font-weight: 700;

    color: #0b193d;

    margin-bottom: 2px;

}

.zst-doc-link-meta {

    display: block;

    font-size: 12px;

    color: #64748b;

}

/* Responsywność */

@media (max-width: 991px) {

    .zst-pillars-grid {

        grid-template-columns: 1fr;

    }

    .zst-model-grid {

        grid-template-columns: repeat(2, 1fr);

    }

    .zst-docs-row {

        grid-template-columns: 1fr;

    }

    .zst-motto-title {

        font-size: 26px;

    }

}

@media (max-width: 640px) {

    .zst-motto-hero {

        padding: 24px 18px;

    }

    .zst-acronym-row {

        flex-direction: column;

        gap: 10px;

    }

    .zst-acronym-pill {

        width: 100%;

    }

    .zst-model-wrapper {

        padding: 24px 16px;

    }

    .zst-model-grid {

        grid-template-columns: 1fr;

    }

    .zst-community-box {

        flex-direction: column;

        text-align: center;

        padding: 20px 16px;

    }

}

/* Fixes for Koncepcja Pracy page */

.zst-koncepcja-container h2.zst-motto-title {

    color: #ffffff !important;

}

.zst-koncepcja-container h2.zst-motto-title::before {

    display: none !important;

}

.zst-sec-header h3.zst-sec-title::before,

.zst-sec-title::before {

    display: none !important;

}

.zst-pillar-card h4.zst-pillar-title::before {

    display: none !important;

}

.zst-model-card h5.zst-model-heading::before {

    display: none !important;

}

.zst-community-content h4::before {

    display: none !important;

}

.zst-related-head h3::before {

    display: none !important;

}

/* Reset default subpage heading left border on custom koncepcja container */

.zst-koncepcja-container h2,

.zst-koncepcja-container h3,

.zst-koncepcja-container h4,

.zst-koncepcja-container h5 {

    border-left: none !important;

    padding-left: 0 !important;

    margin-top: 0 !important;

}

.zst-koncepcja-container .zst-motto-title {

    color: #ffffff !important;

    font-size: 32px !important;

    margin-bottom: 16px !important;

}

.zst-koncepcja-container .zst-sec-title {

    color: #0b193d !important;

    font-size: 26px !important;

    margin-bottom: 10px !important;

    text-align: center !important;

}

.zst-koncepcja-container .zst-pillar-title {

    color: #0b193d !important;

    font-size: 18px !important;

    margin-bottom: 10px !important;

}

.zst-koncepcja-container .zst-model-heading {

    color: #0b193d !important;

    font-size: 15px !important;

    margin-bottom: 6px !important;

}

/* ==========================================================================

   NOWY, ŚWIEŻY UKŁAD HERO DLA KONCEPCJI PRACY (JASNY / SPLIT EXECUTIVE)

   ========================================================================== */

.zst-concept-hero-split {

    display: grid;

    grid-template-columns: 1.15fr 0.85fr;

    gap: 36px;

    align-items: stretch;

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 18px;

    padding: 36px 36px;

    box-shadow: 0 10px 30px rgba(11, 25, 61, 0.05);

    margin-bottom: 40px;

    position: relative;

    overflow: hidden;

}

.zst-concept-hero-split::before {

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    right: 0;

    height: 4px;

    background: linear-gradient(90deg, #0b193d 0%, #1e40af 50%, #f5b324 100%);

}

.zst-concept-hero-left {

    display: flex;

    flex-direction: column;

    justify-content: center;

}

.zst-concept-badge {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    background: #fef3c7;

    color: #92400e;

    border: 1px solid #fde68a;

    font-size: 12px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.08em;

    padding: 5px 14px;

    border-radius: 999px;

    margin-bottom: 16px;

    align-self: flex-start;

}

.zst-concept-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 30px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    line-height: 1.25 !important;

    margin: 0 0 16px 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

    letter-spacing: -0.02em;

}

.zst-concept-lead {

    font-size: 15.5px;

    color: #475569;

    line-height: 1.65;

    margin: 0 0 20px 0;

}

.zst-concept-lead strong {

    color: #0b193d;

}

.zst-concept-quote-box {

    background: #f8fafc;

    border-left: 3px solid #f5b324;

    border-radius: 0 10px 10px 0;

    padding: 14px 18px;

    display: flex;

    gap: 14px;

    align-items: flex-start;

}

.zst-quote-icon {

    color: #f5b324;

    font-size: 16px;

    flex-shrink: 0;

    margin-top: 2px;

}

.zst-quote-text {

    font-size: 13.5px;

    font-style: italic;

    color: #334155;

    line-height: 1.55;

}

/* Prawa strona - Karta Motto ZST */

.zst-concept-hero-right {

    background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 100%);

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 24px 22px;

    display: flex;

    flex-direction: column;

    justify-content: center;

}

.zst-zst-motto-header {

    display: flex;

    justify-content: space-between;

    align-items: baseline;

    margin-bottom: 16px;

    padding-bottom: 12px;

    border-bottom: 1px solid #e2e8f0;

}

.zst-motto-label {

    font-family: 'Montserrat', sans-serif;

    font-size: 14px;

    font-weight: 800;

    color: #0b193d;

    text-transform: uppercase;

    letter-spacing: 0.05em;

}

.zst-motto-sublabel {

    font-size: 11.5px;

    color: #64748b;

    font-weight: 600;

}

.zst-zst-card-stack {

    display: flex;

    flex-direction: column;

    gap: 12px;

}

.zst-zst-item {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 14px 16px;

    display: flex;

    align-items: center;

    gap: 16px;

    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);

    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;

}

.zst-zst-item:hover {

    transform: translateX(4px);

    border-color: #cbd5e1;

    box-shadow: 0 6px 16px rgba(11, 25, 61, 0.06);

}

.zst-zst-badge {

    width: 44px;

    height: 44px;

    border-radius: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-family: 'Montserrat', sans-serif;

    font-size: 24px;

    font-weight: 900;

    flex-shrink: 0;

}

.zst-zst-z .zst-zst-badge {

    background: #f5b324;

    color: #0b193d;

    box-shadow: 0 4px 10px rgba(245, 179, 36, 0.35);

}

.zst-zst-s .zst-zst-badge {

    background: #0b193d;

    color: #ffffff;

    box-shadow: 0 4px 10px rgba(11, 25, 61, 0.25);

}

.zst-zst-t .zst-zst-badge {

    background: #1e3a8a;

    color: #f5b324;

    box-shadow: 0 4px 10px rgba(30, 58, 138, 0.25);

}

.zst-zst-content {

    flex-grow: 1;

}

.zst-zst-word {

    font-family: 'Montserrat', sans-serif;

    font-size: 15px;

    font-weight: 800;

    color: #0b193d;

    letter-spacing: 0.04em;

    margin-bottom: 2px;

}

.zst-zst-desc {

    font-size: 12.5px;

    color: #64748b;

    line-height: 1.45;

}

/* Responsywność */

@media (max-width: 991px) {

    .zst-concept-hero-split {

        grid-template-columns: 1fr;

        gap: 28px;

        padding: 28px 24px;

    }

}

@media (max-width: 640px) {

    .zst-concept-hero-split {

        padding: 22px 16px;

    }

    .zst-concept-title {

        font-size: 24px !important;

    }

    .zst-concept-quote-box {

        padding: 12px 14px;

    }

    .zst-zst-item {

        gap: 12px;

        padding: 12px 12px;

    }

    .zst-zst-badge {

        width: 38px;

        height: 38px;

        font-size: 20px;

    }

}

/* ==========================================================================

   NOWE NAGŁÓWKI DLA KART PEDAGOGÓW (BEZ AWATARÓW)

   ========================================================================== */

.zst-ped-card-head-clean {

    display: block !important;

    border-bottom: 1px solid #f1f5f9 !important;

    padding-bottom: 16px !important;

    margin-bottom: 16px !important;

}

.zst-ped-card-head-clean .zst-ped-role-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    font-size: 11.5px !important;

    font-weight: 800 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.06em !important;

    padding: 4px 12px !important;

    border-radius: 999px !important;

    margin-bottom: 10px !important;

}

.zst-ped-card-head-clean .zst-ped-role-badge.role-blue {

    background: #eff6ff !important;

    color: #1e40af !important;

    border: 1px solid #dbeafe !important;

}

.zst-ped-card-head-clean .zst-ped-role-badge.role-teal {

    background: #f0fdfa !important;

    color: #0f766e !important;

    border: 1px solid #ccfbf1 !important;

}

.zst-ped-card-head-clean .zst-ped-role-badge.role-purple {

    background: #faf5ff !important;

    color: #7e22ce !important;

    border: 1px solid #f3e8ff !important;

}

.zst-ped-card-head-clean .zst-ped-name {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 19px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    margin: 0 0 6px 0 !important;

    line-height: 1.3 !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-ped-card-head-clean .zst-ped-room {

    font-size: 13px !important;

    color: #64748b !important;

    display: flex !important;

    align-items: center !important;

    gap: 6px !important;

    font-weight: 500 !important;

}

.zst-ped-card-head-clean .zst-ped-room i {

    color: #f5b324 !important;

}

/* ==========================================================================

   STOWARZYSZENIE ZST - KREATYWNA PODSTRONA (FINTECH & COMMUNITY)

   ========================================================================== */

.zst-stow-container {

    max-width: 1200px;

    margin: 0 auto;

    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    color: #1e293b;

}

/* 1. Hero Manifest */

.zst-stow-manifest-hero {

    background: radial-gradient(circle at top right, #1e3a8a 0%, #0b193d 60%, #071026 100%);

    border-radius: 20px;

    padding: 44px 40px;

    color: #ffffff;

    position: relative;

    overflow: hidden;

    margin-bottom: 40px;

    display: grid;

    grid-template-columns: 1.25fr 0.75fr;

    gap: 36px;

    align-items: center;

    border: 1px solid rgba(255, 255, 255, 0.12);

    box-shadow: 0 15px 35px rgba(7, 16, 38, 0.2);

}

.zst-stow-manifest-hero::before {

    content: 'ZST';

    position: absolute;

    right: -20px;

    bottom: -50px;

    font-family: 'Montserrat', sans-serif;

    font-size: 220px;

    font-weight: 900;

    color: rgba(255, 255, 255, 0.03);

    pointer-events: none;

    line-height: 1;

}

.zst-stow-pill-live {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    background: rgba(245, 179, 36, 0.15);

    border: 1px solid #f5b324;

    color: #f5b324;

    font-size: 12px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: 0.08em;

    padding: 6px 14px;

    border-radius: 999px;

    margin-bottom: 18px;

}

.zst-stow-pill-dot {

    width: 8px;

    height: 8px;

    background: #f5b324;

    border-radius: 50%;

    box-shadow: 0 0 10px #f5b324;

}

.zst-stow-manifest-headline {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 32px !important;

    font-weight: 900 !important;

    line-height: 1.25 !important;

    margin: 0 0 16px 0 !important;

    color: #ffffff !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-stow-manifest-headline span {

    color: #f5b324;

    background: linear-gradient(90deg, #f5b324, #fde047);

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

}

.zst-stow-manifest-lead {

    font-size: 15.5px;

    color: #cbd5e1;

    line-height: 1.65;

    margin: 0 0 22px 0;

    max-width: 620px;

}

.zst-stow-trust-row {

    display: flex;

    gap: 14px;

    flex-wrap: wrap;

}

.zst-stow-trust-badge {

    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.15);

    padding: 8px 14px;

    border-radius: 8px;

    font-size: 12.5px;

    display: flex;

    align-items: center;

    gap: 8px;

    color: #e2e8f0;

}

.zst-stow-trust-badge i { color: #f5b324; font-size: 14px; }

.zst-stow-hero-sidecard {

    background: rgba(255, 255, 255, 0.06);

    border: 1px solid rgba(255, 255, 255, 0.18);

    border-radius: 18px;

    padding: 26px;

    text-align: center;

    backdrop-filter: blur(12px);

}

.zst-stow-side-tag {

    font-size: 11px;

    text-transform: uppercase;

    letter-spacing: 0.1em;

    color: #94a3b8;

    font-weight: 700;

    margin-bottom: 6px;

}

.zst-stow-side-big {

    font-family: 'Montserrat', sans-serif;

    font-size: 46px;

    font-weight: 900;

    color: #ffffff;

    line-height: 1;

    margin-bottom: 4px;

}

.zst-stow-side-big span { color: #f5b324; }

.zst-stow-side-subtitle {

    font-size: 13px;

    color: #cbd5e1;

    margin-bottom: 16px;

}

.zst-stow-hero-divider {

    height: 1px;

    background: rgba(255, 255, 255, 0.12);

    margin: 14px 0;

}

.zst-stow-hero-features {

    text-align: left;

    font-size: 12.5px;

    color: #e2e8f0;

    display: flex;

    flex-direction: column;

    gap: 8px;

}

.zst-stow-hero-features div {

    display: flex;

    align-items: center;

    gap: 8px;

}

.zst-stow-hero-features i { color: #10b981; }

/* 2. DWA GŁÓWNE INTERAKTYWNE ELEMENTY */

.zst-stow-interactive-grid {

    display: grid;

    grid-template-columns: 1.15fr 0.85fr;

    gap: 28px;

    align-items: start;

    margin-bottom: 44px;

}

/* VOUCHER 1,5% */

.zst-ticket-card {

    background: #ffffff;

    border-radius: 18px;

    border: 2px dashed #f5b324;

    box-shadow: 0 10px 28px rgba(245, 179, 36, 0.08);

    position: relative;

    overflow: hidden;

    display: flex;

    flex-direction: column;

}

.zst-ticket-ribbon {

    background: linear-gradient(90deg, #b45309, #f5b324);

    color: #ffffff;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    padding: 8px 20px;

    display: flex;

    justify-content: space-between;

    align-items: center;

}

.zst-ticket-body {

    padding: 28px 24px;

}

.zst-ticket-header {

    display: flex;

    align-items: center;

    gap: 16px;

    margin-bottom: 20px;

}

.zst-ticket-icon {

    width: 52px;

    height: 52px;

    background: #fef3c7;

    color: #b45309;

    border-radius: 12px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 22px;

    font-weight: 900;

    font-family: 'Montserrat', sans-serif;

    flex-shrink: 0;

    box-shadow: 0 4px 12px rgba(245, 179, 36, 0.25);

}

.zst-ticket-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 20px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    line-height: 1.25 !important;

    margin: 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-ticket-sub {

    font-size: 12.5px;

    color: #64748b;

    margin: 0;

}

.zst-data-chip-group {

    display: flex;

    flex-direction: column;

    gap: 12px;

    margin-bottom: 20px;

}

.zst-data-chip {

    background: #f8fafc;

    border: 1.5px solid #cbd5e1;

    border-radius: 12px;

    padding: 12px 16px;

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 12px;

    transition: all 0.2s ease;

}

.zst-data-chip:hover {

    border-color: #f5b324;

    background: #fffdf8;

}

.zst-data-chip-left {

    display: flex;

    flex-direction: column;

}

.zst-chip-label {

    font-size: 11px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: 0.05em;

    color: #64748b;

    margin-bottom: 2px;

}

.zst-chip-val {

    font-family: 'JetBrains Mono', monospace;

    font-size: 17px;

    font-weight: 800;

    color: #0b193d;

    letter-spacing: 0.03em;

}

.zst-chip-val-gold {

    color: #b45309;

}

.zst-chip-copy-btn {

    background: #ffffff;

    border: 1px solid #cbd5e1;

    color: #1e40af;

    border-radius: 8px;

    padding: 7px 12px;

    font-size: 12px;

    font-weight: 700;

    cursor: pointer;

    display: inline-flex;

    align-items: center;

    gap: 5px;

    transition: all 0.2s ease;

}

.zst-chip-copy-btn:hover {

    background: #1e40af;

    color: #ffffff;

    border-color: #1e40af;

}

.zst-ticket-footer {

    background: #f1f5f9;

    border-radius: 10px;

    padding: 14px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 12px;

    flex-wrap: wrap;

}

.zst-ticket-footer-text {

    font-size: 12.5px;

    color: #334155;

    line-height: 1.45;

}

.zst-btn-portal {

    background: #0b193d;

    color: #ffffff;

    text-decoration: none;

    padding: 8px 16px;

    border-radius: 8px;

    font-size: 12px;

    font-weight: 700;

    display: inline-flex;

    align-items: center;

    gap: 6px;

    white-space: nowrap;

    transition: all 0.2s ease;

}

.zst-btn-portal:hover {

    background: #1e3a8a;

    color: #ffffff;

}

/* WIRTUALNA KARTA PATRONA */

.zst-card-holder {

    display: flex;

    flex-direction: column;

    gap: 16px;

}

.zst-virtual-card {

    background: linear-gradient(135deg, #0e1e47 0%, #172d69 50%, #0b1536 100%);

    border-radius: 18px;

    padding: 24px 22px;

    color: #ffffff;

    position: relative;

    overflow: hidden;

    box-shadow: 0 14px 32px rgba(11, 25, 61, 0.2);

    border: 1px solid rgba(255, 255, 255, 0.15);

}

.zst-virtual-card::before {

    content: '';

    position: absolute;

    top: -40px;

    right: -40px;

    width: 150px;

    height: 150px;

    background: radial-gradient(circle, rgba(245, 179, 36, 0.25) 0%, transparent 70%);

    border-radius: 50%;

}

.zst-card-top-row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 22px;

}

.zst-card-chip {

    width: 42px;

    height: 30px;

    background: linear-gradient(135deg, #eab308 0%, #ca8a04 100%);

    border-radius: 6px;

    border: 1px solid #fde047;

}

.zst-card-type {

    font-family: 'Montserrat', sans-serif;

    font-size: 12px;

    font-weight: 800;

    color: #f5b324;

    letter-spacing: 0.1em;

    text-transform: uppercase;

}

.zst-card-number-box {

    margin-bottom: 18px;

}

.zst-card-label {

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: 0.08em;

    color: #94a3b8;

    margin-bottom: 4px;

    display: block;

}

.zst-card-number {

    font-family: 'JetBrains Mono', monospace;

    font-size: 15.5px;

    font-weight: 700;

    letter-spacing: 0.05em;

    color: #ffffff;

    margin-bottom: 8px;

    display: block;

    word-break: break-all;

}

.zst-card-copy-btn {

    background: rgba(245, 179, 36, 0.2);

    border: 1px solid rgba(245, 179, 36, 0.6);

    color: #f5b324;

    padding: 6px 12px;

    border-radius: 6px;

    font-size: 11.5px;

    font-weight: 700;

    cursor: pointer;

    display: inline-flex;

    align-items: center;

    gap: 6px;

    transition: all 0.2s ease;

}

.zst-card-copy-btn:hover {

    background: #f5b324;

    color: #0b193d;

}

.zst-card-meta {

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    padding-top: 12px;

    border-top: 1px solid rgba(255, 255, 255, 0.12);

}

.zst-card-holder-name {

    font-family: 'Montserrat', sans-serif;

    font-size: 11.5px;

    font-weight: 700;

    color: #e2e8f0;

    letter-spacing: 0.03em;

}

.zst-card-bank {

    font-size: 11px;

    color: #cbd5e1;

    font-weight: 600;

}

.zst-tax-deduct-card {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 16px 18px;

    font-size: 12.5px;

    color: #475569;

    line-height: 1.55;

    display: flex;

    align-items: flex-start;

    gap: 12px;

}

.zst-tax-deduct-card i { color: #f5b324; font-size: 16px; margin-top: 2px; }

/* 3. POPRAWIONE KAFELKI CELÓW ZBIÓRKI */

.zst-stow-impact-section {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 18px;

    padding: 32px 28px;

    margin-bottom: 36px;

}

.zst-stow-impact-head {

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    flex-wrap: wrap;

    gap: 14px;

    margin-bottom: 24px;

    padding-bottom: 16px;

    border-bottom: 1px solid #f1f5f9;

}

.zst-stow-impact-title-group h3 {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 22px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    margin: 0 0 4px 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-stow-impact-title-group p {

    font-size: 13.5px;

    color: #64748b;

    margin: 0;

}

.zst-stow-impact-badge-safe {

    display: inline-flex;

    align-items: center;

    gap: 6px;

    background: #dcfce7;

    color: #166534;

    font-size: 12px;

    font-weight: 700;

    padding: 5px 12px;

    border-radius: 999px;

    border: 1px solid #bbf7d0;

}

.zst-stow-grid-4 {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 18px;

}

.zst-stow-impact-card {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 22px 18px;

    transition: all 0.2s ease;

}

.zst-stow-impact-card:hover {

    transform: translateY(-3px);

    background: #ffffff;

    box-shadow: 0 8px 20px rgba(11, 25, 61, 0.06);

    border-color: #cbd5e1;

}

.zst-stow-card-top-head {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 14px;

}

.zst-stow-icon-box {

    width: 44px;

    height: 44px;

    border-radius: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 20px;

}

.zst-icon-box-blue { background: #eff6ff; color: #1e40af; }

.zst-icon-box-gold { background: #fef3c7; color: #b45309; }

.zst-icon-box-purple { background: #f3e8ff; color: #7e22ce; }

.zst-icon-box-green { background: #ecfdf5; color: #047857; }

.zst-stow-badge-num {

    font-family: 'Montserrat', sans-serif;

    font-size: 11px;

    font-weight: 800;

    color: #64748b;

    background: #ffffff;

    border: 1px solid #e2e8f0;

    padding: 3px 9px;

    border-radius: 999px;

    letter-spacing: 0.04em;

}

.zst-stow-impact-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 15.5px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    margin: 0 0 6px 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

    line-height: 1.3 !important;

}

.zst-stow-impact-desc {

    font-size: 12.5px;

    color: #64748b;

    line-height: 1.5;

    margin: 0;

}

/* 4. OFICJALNA METRYKA */

.zst-stow-legal-card {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 20px 24px;

    display: flex;

    justify-content: space-between;

    align-items: center;

    flex-wrap: wrap;

    gap: 16px;

}

.zst-stow-legal-data h4 {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 14.5px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    margin: 0 0 4px 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-stow-legal-data p {

    font-size: 12.5px;

    color: #475569;

    margin: 0;

}

.zst-stow-legal-btn {

    background: #0b193d;

    color: #ffffff;

    text-decoration: none;

    padding: 9px 16px;

    border-radius: 8px;

    font-size: 12.5px;

    font-weight: 700;

    display: inline-flex;

    align-items: center;

    gap: 7px;

    transition: all 0.2s ease;

}

.zst-stow-legal-btn:hover {

    background: #1e3a8a;

    color: #ffffff;

}

/* Responsywność */

@media (max-width: 991px) {

    .zst-stow-manifest-hero { grid-template-columns: 1fr; padding: 28px 22px; }

    .zst-stow-interactive-grid { grid-template-columns: 1fr; }

    .zst-stow-grid-4 { grid-template-columns: repeat(2, 1fr); }

}

@media (max-width: 600px) {

    .zst-stow-manifest-headline { font-size: 24px !important; }

    .zst-stow-grid-4 { grid-template-columns: 1fr; }

    .zst-ticket-body { padding: 20px 16px; }

}

/* Reset heading styles inside .zst-stow-container */

.zst-stow-container h2,

.zst-stow-container h3,

.zst-stow-container h4,

.zst-stow-container h5 {

    border-left: none !important;

    padding-left: 0 !important;

    margin-top: 0 !important;

}

.zst-stow-container h2.zst-stow-manifest-headline {

    color: #ffffff !important;

}

.zst-stow-container h3.zst-ticket-title {

    color: #0b193d !important;

    border-left: none !important;

    padding-left: 0 !important;

}

/* Reset heading styles inside .zst-ped-hero and .zst-ped-section-header */

.zst-ped-hero h2.zst-ped-title {

    color: #ffffff !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-ped-section-header h3.zst-sec-title {

    border-left: none !important;

    padding-left: 0 !important;

}

/* ==========================================================================

   STOWARZYSZENIE ZST - FOTO-KARTY REALNYCH DZIAŁAŃ (BEZ NUMERACJI)

   ========================================================================== */

.zst-impact-photo-grid {

    display: grid !important;

    grid-template-columns: repeat(4, 1fr) !important;

    gap: 20px !important;

}

@media (max-width: 1024px) {

    .zst-impact-photo-grid {

        grid-template-columns: repeat(2, 1fr) !important;

    }

}

@media (max-width: 600px) {

    .zst-impact-photo-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-impact-card {

    background: #ffffff !important;

    border-radius: 18px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 4px 18px -2px rgba(11, 25, 61, 0.05) !important;

    overflow: hidden !important;

    display: flex !important;

    flex-direction: column !important;

    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;

}

.zst-impact-card:hover {

    transform: translateY(-5px) !important;

    box-shadow: 0 16px 32px -4px rgba(11, 25, 61, 0.12) !important;

    border-color: #cbd5e1 !important;

}

.zst-impact-photo-wrap {

    position: relative !important;

    width: 100% !important;

    height: 185px !important;

    overflow: hidden !important;

    background: #0f172a !important;

}

.zst-impact-photo-wrap img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    display: block !important;

    transition: transform 0.5s ease !important;

}

.zst-impact-card:hover .zst-impact-photo-wrap img {

    transform: scale(1.06) !important;

}

.zst-impact-badge {

    position: absolute !important;

    top: 12px !important;

    left: 12px !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    background: rgba(11, 25, 61, 0.85) !important;

    backdrop-filter: blur(8px) !important;

    -webkit-backdrop-filter: blur(8px) !important;

    color: #ffffff !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.04em !important;

    padding: 5px 11px !important;

    border-radius: 8px !important;

    border: 1px solid rgba(255, 255, 255, 0.2) !important;

    box-shadow: 0 2px 8px rgba(0,0,0,0.25) !important;

    z-index: 2 !important;

}

.zst-impact-badge i {

    color: #f5b324 !important;

}

.zst-impact-body {

    padding: 18px 18px 20px 18px !important;

    display: flex !important;

    flex-direction: column !important;

    flex-grow: 1 !important;

}

.zst-impact-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 16.5px !important;

    font-weight: 800 !important;

    color: #0b193d !important;

    line-height: 1.35 !important;

    margin: 0 0 8px 0 !important;

    border-left: none !important;

    padding-left: 0 !important;

}

.zst-impact-desc {

    font-size: 13px !important;

    line-height: 1.55 !important;

    color: #475569 !important;

    flex-grow: 1 !important;

    margin: 0 0 14px 0 !important;

}

.zst-impact-footer {

    border-top: 1px solid #f1f5f9 !important;

    padding-top: 10px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    font-size: 11.5px !important;

    color: #059669 !important;

    font-weight: 600 !important;

}

.zst-impact-footer i {

    margin-right: 5px !important;

}

/* ==========================================================================

   MONITORING WIZYJNY - DELIKATNY I SCHLUDNY DESIGN (BEZ CIEMNYCH HERO)

   ========================================================================== */

.zst-mon-wrap {

    max-width: 980px;

    margin: 0 auto;

    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    color: #334155;

}

.zst-mon-wrap h2,

.zst-mon-wrap h3,

.zst-mon-wrap h4 {

    border-left: none !important;

    padding-left: 0 !important;

    margin-top: 0 !important;

}

.zst-mon-intro {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 16px;

    padding: 30px 34px;

    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);

    margin-bottom: 24px;

    position: relative;

    overflow: hidden;

}

.zst-mon-intro::before {

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    width: 4px;

    height: 100%;

    background: #f59e0b;

}

.zst-mon-badge {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    background: #f1f5f9;

    color: #475569;

    font-size: 11.5px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.06em;

    padding: 5px 12px;

    border-radius: 999px;

    margin-bottom: 12px;

}

.zst-mon-badge i {

    color: #f59e0b;

}

.zst-mon-lead-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 21px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

    line-height: 1.35 !important;

    margin-bottom: 10px !important;

}

.zst-mon-lead-p {

    font-size: 14.5px !important;

    line-height: 1.65 !important;

    color: #475569 !important;

    margin: 0 !important;

}

.zst-mon-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;

    margin-bottom: 24px;

}

@media (max-width: 768px) {

    .zst-mon-grid {

        grid-template-columns: 1fr;

    }

}

.zst-mon-card {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 22px 24px;

    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);

    transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.zst-mon-card:hover {

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);

    border-color: #cbd5e1;

}

.zst-mon-card-head {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 14px;

}

.zst-mon-icon {

    width: 38px;

    height: 38px;

    border-radius: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 16px;

    flex-shrink: 0;

}

.icon-shield { background: #eff6ff; color: #2563eb; }

.icon-cam    { background: #ecfdf5; color: #059669; }

.icon-legal  { background: #fef3c7; color: #d97706; }

.icon-doc    { background: #faf5ff; color: #7c3aed; }

.zst-mon-card-title {

    font-family: 'Montserrat', sans-serif !important;

    font-size: 16px !important;

    font-weight: 700 !important;

    color: #1e293b !important;

    margin: 0 !important;

    line-height: 1.3 !important;

}

.zst-mon-card-list {

    list-style: none !important;

    padding: 0 !important;

    margin: 0 !important;

}

.zst-mon-card-list li {

    font-size: 13.5px !important;

    line-height: 1.55 !important;

    color: #475569 !important;

    position: relative !important;

    padding-left: 18px !important;

    margin-bottom: 8px !important;

}

.zst-mon-card-list li:last-child {

    margin-bottom: 0 !important;

}

.zst-mon-card-list li::before {

    content: '•';

    color: #94a3b8;

    position: absolute;

    left: 4px;

    font-size: 15px;

    line-height: 1;

}

.zst-mon-notice {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 16px 20px;

    display: flex;

    align-items: flex-start;

    gap: 12px;

    font-size: 13.5px;

    line-height: 1.55;

    color: #475569;

}

.zst-mon-notice i {

    color: #3b82f6;

    font-size: 18px;

    margin-top: 2px;

    flex-shrink: 0;

}

.zst-mon-notice strong {

    color: #1e293b;

}

/* ==========================================================================

   FIX DLA PRZYCISKÓW W STOWARZYSZENIU (PROFIL KRS & TWÓJ E-PIT)

   ========================================================================== */

.zst-stow-legal-btn,

.zst-stow-legal-btn:visited,

.zst-stow-legal-btn *,

.zst-btn-legal,

.zst-btn-legal:visited,

.zst-btn-legal *,

a.zst-stow-legal-btn,

a.zst-btn-legal {

    color: #ffffff !important;

    text-decoration: none !important;

}

.zst-stow-legal-btn {

    background: #0b193d !important;

    color: #ffffff !important;

    text-decoration: none !important;

    padding: 11px 22px !important;

    border-radius: 10px !important;

    font-size: 13.5px !important;

    font-weight: 700 !important;

    display: inline-flex !important;

    align-items: center !important;

    gap: 9px !important;

    box-shadow: 0 4px 14px rgba(11, 25, 61, 0.2) !important;

    transition: all 0.25s ease !important;

    border: 1px solid rgba(255, 255, 255, 0.15) !important;

}

.zst-stow-legal-btn:hover {

    background: #1e3a8a !important;

    color: #ffffff !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 6px 20px rgba(11, 25, 61, 0.3) !important;

    border-color: rgba(255, 255, 255, 0.3) !important;

}

.zst-stow-legal-btn:hover *,

.zst-btn-legal:hover * {

    color: #ffffff !important;

    text-decoration: none !important;

}

.zst-btn-portal,

.zst-btn-portal:visited,

.zst-btn-portal *,

a.zst-btn-portal {

    color: #ffffff !important;

    text-decoration: none !important;

}

.zst-btn-portal {

    background: #0b193d !important;

    border: 1px solid rgba(255, 255, 255, 0.15) !important;

}

.zst-btn-portal:hover {

    background: #1e3a8a !important;

    color: #ffffff !important;

}

/* ==========================================================================

   NOWA STRONA: EGZAMINY I PRAKTYKI (/egzaminy/)

   ========================================================================== */

.zst-exam-page-container {

    max-width: 1140px;

    margin: 0 auto;

    padding: 24px 16px 40px;

    font-family: inherit;

    color: #1e293b;

}

.zst-exam-page-container * {

    box-sizing: border-box;

}

/* Crumbs */

.zst-ex-crumbs {

    display: flex;

    align-items: center;

    gap: 8px;

    font-size: 13px;

    color: #64748b;

    margin-bottom: 20px;

}

.zst-ex-crumbs a {

    color: #0284c7;

    text-decoration: none;

    font-weight: 500;

}

.zst-ex-crumbs a:hover {

    text-decoration: underline;

}

.zst-ex-sep {

    color: #cbd5e1;

}

.zst-ex-current {

    color: #475569;

    font-weight: 600;

}

/* Hero */

.zst-ex-hero {

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 16px;

    padding: 30px 32px;

    margin-bottom: 24px;

    box-shadow: 0 4px 16px -2px rgba(15, 23, 42, 0.04);

}

.zst-ex-badge {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    padding: 5px 13px;

    background: #e0f2fe;

    color: #0369a1;

    font-size: 11.5px;

    font-weight: 700;

    letter-spacing: 0.5px;

    border-radius: 30px;

    text-transform: uppercase;

    margin-bottom: 12px;

}

.zst-ex-title {

    font-size: 27px;

    font-weight: 800;

    color: #0f172a;

    letter-spacing: -0.4px;

    margin: 0 0 10px 0;

    line-height: 1.25;

}

.zst-ex-subtitle {

    color: #64748b;

    font-size: 15px;

    max-width: 760px;

    line-height: 1.6;

    margin: 0;

}

/* Tabs Nav */

.zst-ex-tabs-nav {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 12px;

    margin-bottom: 24px;

}

.zst-ex-tab-btn {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 16px 18px;

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    cursor: pointer;

    transition: all 0.2s ease;

    text-align: left;

    width: 100%;

}

.zst-ex-tab-btn:hover {

    border-color: #0284c7;

    background: #f0f9ff;

    transform: translateY(-2px);

}

.zst-ex-tab-btn.active {

    background: #0f172a;

    border-color: #0f172a;

    color: #ffffff;

    box-shadow: 0 6px 16px -2px rgba(15, 23, 42, 0.18);

}

.zst-tab-icon {

    width: 42px;

    height: 42px;

    border-radius: 12px;

    background: #f1f5f9;

    color: #0284c7;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 18px;

    flex-shrink: 0;

    transition: all 0.2s;

}

.zst-ex-tab-btn.active .zst-tab-icon {

    background: #1e293b;

    color: #38bdf8;

}

.zst-tab-text {

    display: flex;

    flex-direction: column;

    min-width: 0;

}

.zst-tab-heading {

    font-size: 15px;

    font-weight: 700;

    line-height: 1.3;

    margin-bottom: 2px;

}

.zst-tab-sub {

    font-size: 12px;

    color: #64748b;

    line-height: 1.4;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

}

.zst-ex-tab-btn.active .zst-tab-sub {

    color: #94a3b8;

}

/* Tab Panels */

.zst-ex-tab-panel {

    display: none;

    background: #ffffff;

    border: 1px solid #e2e8f0;

    border-radius: 16px;

    padding: 30px;

    box-shadow: 0 4px 16px -2px rgba(15, 23, 42, 0.03);

}

.zst-ex-tab-panel.active {

    display: block;

    animation: zstFadeIn 0.25s ease-out;

}

@keyframes zstFadeIn {

    from { opacity: 0; transform: translateY(6px); }

    to { opacity: 1; transform: translateY(0); }

}

/* Portals Card */

.zst-ex-portals-card {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 22px 24px;

    margin-bottom: 28px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    flex-wrap: wrap;

}

.zst-portals-info {

    flex: 1 1 480px;

}

.zst-pill-official {

    display: inline-block;

    padding: 3px 10px;

    background: #e2e8f0;

    color: #334155;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    border-radius: 20px;

    margin-bottom: 8px;

}

.zst-portals-info h3 {

    font-size: 18px;

    font-weight: 700;

    color: #0f172a;

    margin: 0 0 6px 0;

}

.zst-portals-info p {

    font-size: 13.5px;

    color: #64748b;

    margin: 0;

    line-height: 1.55;

}

.zst-portals-links {

    display: flex !important;

    flex-wrap: wrap !important;

    gap: 12px !important;

    align-items: center !important;

}

/* Base Portal Button - with strong selector to override .zst-page-content-wrap a */

.zst-page-content-wrap a.zst-portal-btn,

.zst-exam-page-container a.zst-portal-btn,

.zst-portal-btn,

a.zst-portal-btn {

    display: inline-flex !important;

    align-items: center !important;

    gap: 10px !important;

    padding: 11px 20px !important;

    background: #ffffff !important;

    border: 1.5px solid #cbd5e1 !important;

    border-radius: 12px !important;

    color: #1e293b !important;

    font-size: 13.5px !important;

    font-weight: 600 !important;

    text-decoration: none !important;

    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.05) !important;

    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;

    cursor: pointer !important;

}

.zst-page-content-wrap a.zst-portal-btn,

.zst-page-content-wrap a.zst-portal-btn *,

.zst-page-content-wrap a.zst-portal-btn span,

.zst-portal-btn,

.zst-portal-btn *,

.zst-portal-btn span {

    text-decoration: none !important;

    text-decoration-line: none !important;

}

.zst-page-content-wrap a.zst-portal-btn:hover,

.zst-portal-btn:hover {

    border-color: #0284c7 !important;

    background: #f8fafc !important;

    color: #0284c7 !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 6px 18px rgba(2, 132, 199, 0.15) !important;

    text-decoration: none !important;

}

.zst-portal-btn i:first-child {

    font-size: 15px !important;

    color: #2563eb !important;

    transition: transform 0.2s ease !important;

}

.zst-portal-btn:hover i:first-child {

    transform: scale(1.12) !important;

}

/* Highlighted Portal Button (Portal Zdającego / Matura) */

.zst-page-content-wrap a.zst-portal-btn.zst-portal-highlight,

.zst-exam-page-container a.zst-portal-btn.zst-portal-highlight,

.zst-portal-btn.zst-portal-highlight,

a.zst-portal-btn.zst-portal-highlight {

    background: linear-gradient(135deg, #1d4ed8 0%, #0284c7 100%) !important;

    border-color: transparent !important;

    color: #ffffff !important;

    font-weight: 700 !important;

    box-shadow: 0 4px 14px rgba(2, 132, 199, 0.35) !important;

    text-decoration: none !important;

}

.zst-page-content-wrap a.zst-portal-btn.zst-portal-highlight,

.zst-page-content-wrap a.zst-portal-btn.zst-portal-highlight *,

.zst-page-content-wrap a.zst-portal-btn.zst-portal-highlight span,

.zst-portal-btn.zst-portal-highlight * {

    color: #ffffff !important;

    text-decoration: none !important;

    text-decoration-line: none !important;

}

.zst-portal-btn.zst-portal-highlight i:first-child {

    color: #ffffff !important;

}

.zst-page-content-wrap a.zst-portal-btn.zst-portal-highlight:hover,

.zst-portal-btn.zst-portal-highlight:hover {

    background: linear-gradient(135deg, #1e40af 0%, #0369a1 100%) !important;

    color: #ffffff !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 8px 22px rgba(2, 132, 199, 0.45) !important;

    text-decoration: none !important;

}

.zst-portal-btn.zst-portal-highlight:hover * {

    color: #ffffff !important;

    text-decoration: none !important;

}

.zst-ext {

    font-size: 11px !important;

    opacity: 0.7 !important;

    transition: transform 0.2s ease, opacity 0.2s ease !important;

    margin-left: 2px !important;

}

.zst-portal-btn:hover .zst-ext {

    opacity: 1 !important;

    transform: translate(2px, -2px) !important;

}

/* Headings */

.zst-ex-sec-head {

    display: flex;

    align-items: center;

    justify-content: space-between;

    flex-wrap: wrap;

    gap: 10px;

    margin-bottom: 20px;

    padding-bottom: 12px;

    border-bottom: 1px solid #f1f5f9;

}

.zst-ex-sec-head h2 {

    font-size: 19px;

    font-weight: 700;

    color: #0f172a;

    margin: 0;

}

.zst-sec-hint {

    font-size: 12.5px;

    color: #64748b;

}

/* Qualifications Grid */

.zst-qual-grid {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 16px !important;

    margin-bottom: 28px !important;

}

@media (max-width: 992px) {

    .zst-qual-grid {

        grid-template-columns: repeat(2, 1fr) !important;

    }

}

@media (max-width: 600px) {

    .zst-qual-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-qual-card {

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 16px;

    background: #fafbfc;

    display: flex;

    flex-direction: column;

    transition: all 0.2s ease;

}

.zst-qual-card:hover {

    border-color: #93c5fd;

    background: #ffffff;

    box-shadow: 0 4px 14px -2px rgba(15, 23, 42, 0.05);

    transform: translateY(-2px);

}

.zst-qc-header {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

}

.zst-qc-icon {

    width: 36px;

    height: 36px;

    border-radius: 8px;

    background: #e0f2fe;

    color: #0284c7;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 15px;

    flex-shrink: 0;

}

.zst-qc-header h4 {

    font-size: 14px;

    font-weight: 700;

    color: #0f172a;

    margin: 0 0 2px 0;

}

.zst-qc-code {

    font-size: 11px;

    color: #64748b;

}

.zst-qc-body {

    display: flex;

    flex-direction: column;

    gap: 8px;

    flex-grow: 1;

}

.zst-qual-item {

    display: flex;

    flex-direction: column;

    gap: 4px;

    background: #ffffff;

    border: 1px solid #f1f5f9;

    border-radius: 8px;

    padding: 8px 10px;

}

.zst-qtag {

    align-self: flex-start;

    padding: 2px 7px;

    background: #0284c7;

    color: #ffffff;

    font-size: 10.5px;

    font-weight: 700;

    border-radius: 5px;

    letter-spacing: 0.3px;

}

.zst-qdesc {

    font-size: 11.5px;

    color: #475569;

    line-height: 1.45;

}

.zst-qc-footer {

    margin-top: 12px;

    padding-top: 8px;

    border-top: 1px solid #f1f5f9;

}

.zst-qc-link {

    font-size: 12px;

    font-weight: 600;

    color: #0284c7;

    text-decoration: none;

    display: inline-flex;

    align-items: center;

    gap: 5px;

}

.zst-qc-link:hover {

    text-decoration: underline;

}

/* Graphical Features Grid - Modern Youth/Tech Edition */

.zst-ex-features-grid {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 20px !important;

    margin-top: 20px !important;

    margin-bottom: 30px !important;

}

@media (max-width: 992px) {

    .zst-ex-features-grid {

        grid-template-columns: repeat(2, 1fr) !important;

    }

}

@media (max-width: 640px) {

    .zst-ex-features-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-feature-box {

    background: #ffffff !important;

    border-radius: 16px !important;

    padding: 24px !important;

    border: 1px solid #e2e8f0 !important;

    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;

    display: flex !important;

    flex-direction: column !important;

    position: relative !important;

    overflow: hidden !important;

    transition: all 0.25s ease !important;

}

.zst-feature-box:hover {

    transform: translateY(-3px) !important;

    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08) !important;

}

.zst-feature-box::before {

    content: "" !important;

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    height: 4px !important;

}

.zst-feature-box.card-written::before {

    background: linear-gradient(90deg, #2563eb, #06b6d4) !important;

}

.zst-feature-box.card-practical::before {

    background: linear-gradient(90deg, #059669, #10b981) !important;

}

.zst-feature-box.card-formal::before {

    background: linear-gradient(90deg, #d97706, #f59e0b) !important;

}

.zst-fb-header {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    margin-bottom: 16px !important;

}

.zst-fb-icon {

    width: 48px !important;

    height: 48px !important;

    border-radius: 14px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 20px !important;

    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06) !important;

}

.zst-fb-icon.icon-blue {

    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%) !important;

    color: #1d4ed8 !important;

}

.zst-fb-icon.icon-green {

    background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%) !important;

    color: #047857 !important;

}

.zst-fb-icon.icon-amber {

    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;

    color: #b45309 !important;

}

.zst-fb-badge {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    padding: 6px 12px !important;

    border-radius: 20px !important;

    font-size: 12px !important;

    font-weight: 700 !important;

}

.zst-fb-badge.badge-blue {

    background: #eff6ff !important;

    color: #1d4ed8 !important;

    border: 1px solid #bfdbfe !important;

}

.zst-fb-badge.badge-green {

    background: #ecfdf5 !important;

    color: #047857 !important;

    border: 1px solid #a7f3d0 !important;

}

.zst-fb-badge.badge-amber {

    background: #fffbeb !important;

    color: #b45309 !important;

    border: 1px solid #fde68a !important;

}

.zst-feature-box h4 {

    font-size: 17px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

    margin: 0 0 4px 0 !important;

    line-height: 1.3 !important;

}

.zst-fb-subtitle {

    font-size: 13px !important;

    color: #64748b !important;

    margin: 0 0 16px 0 !important;

}

.zst-fb-list {

    list-style: none !important;

    padding: 0 !important;

    margin: 0 0 18px 0 !important;

    display: flex !important;

    flex-direction: column !important;

    gap: 12px !important;

    flex: 1 1 auto !important;

}

.zst-fb-list li {

    display: flex !important;

    align-items: flex-start !important;

    gap: 10px !important;

    font-size: 13.5px !important;

    color: #334155 !important;

    line-height: 1.45 !important;

}

.zst-li-ico {

    width: 24px !important;

    height: 24px !important;

    border-radius: 0 !important;

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-size: 11px !important;

    flex-shrink: 0 !important;

    margin-top: 1px !important;

}

.zst-li-ico.ico-blue {

    background: #e0f2fe !important;

    color: #0284c7 !important;

}

.zst-li-ico.ico-green {

    background: #dcfce7 !important;

    color: #16a34a !important;

}

.zst-li-ico.ico-amber {

    background: #fef3c7 !important;

    color: #d97706 !important;

}

.zst-fb-tip {

    padding: 10px 12px !important;

    border-radius: 10px !important;

    font-size: 12px !important;

    font-weight: 500 !important;

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    margin-top: auto !important;

}

.zst-fb-tip.tip-blue {

    background: #f0f9ff !important;

    color: #0369a1 !important;

    border: 1px dashed #bae6fd !important;

}

.zst-fb-tip.tip-green {

    background: #f0fdf4 !important;

    color: #15803d !important;

    border: 1px dashed #bbf7d0 !important;

}

.zst-fb-tip.tip-amber {

    background: #fffbeb !important;

    color: #b45309 !important;

    border: 1px dashed #fde68a !important;

}

/* Downloads Grid */

.zst-ex-downloads-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));

    gap: 14px;

}

.zst-doc-card {

    display: flex;

    align-items: flex-start;

    gap: 16px;

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 18px;

    background: #ffffff;

    transition: all 0.2s ease;

    flex-wrap: wrap;

}

.zst-doc-card:hover {

    border-color: #93c5fd;

    box-shadow: 0 4px 14px -2px rgba(15, 23, 42, 0.05);

}

.zst-doc-icon-wrap {

    width: 44px;

    height: 44px;

    border-radius: 10px;

    background: #fee2e2;

    color: #dc2626;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 20px;

    flex-shrink: 0;

}

.zst-doc-content {

    flex: 1 1 200px;

}

.zst-doc-content h4 {

    font-size: 14.5px;

    font-weight: 700;

    color: #0f172a;

    margin: 0 0 3px 0;

}

.zst-doc-filesize {

    display: block;

    font-size: 11.5px;

    color: #64748b;

    font-weight: 500;

    margin-bottom: 6px;

}

.zst-doc-content p {

    font-size: 12.5px;

    color: #475569;

    line-height: 1.45;

    margin: 0;

}

.zst-doc-card .zst-doc-action {

    margin-top: 10px;

    width: 100%;

}

.zst-btn-download {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 8px 16px;

    background: #0284c7;

    color: #ffffff;

    border-radius: 8px;

    font-size: 13px;

    font-weight: 600;

    text-decoration: none;

    transition: background 0.2s;

}

.zst-btn-download:hover {

    background: #0369a1;

    color: #ffffff;

}

/* Matura Structure Cards */

.zst-matura-structure-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));

    gap: 14px;

    margin-bottom: 24px;

}

.zst-ms-card {

    border: 1px solid #e2e8f0;

    border-radius: 12px;

    padding: 18px;

    background: #fafbfc;

}

.zst-ms-badge {

    display: inline-block;

    padding: 3px 9px;

    background: #0f172a;

    color: #ffffff;

    border-radius: 6px;

    font-size: 10.5px;

    font-weight: 700;

    letter-spacing: 0.4px;

    margin-bottom: 12px;

}

.zst-ms-card ul {

    list-style: none;

    padding: 0;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 8px;

}

.zst-ms-card li {

    font-size: 12.5px;

    color: #334155;

    display: flex;

    align-items: flex-start;

    gap: 8px;

    line-height: 1.45;

}

.zst-ms-card li i {

    color: #0284c7;

    margin-top: 2px;

}

/* Programs Grid */

.zst-programs-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));

    gap: 10px;

    margin-bottom: 24px;

}

.zst-prog-item {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding: 12px 16px;

    border: 1px solid #e2e8f0;

    border-radius: 10px;

    background: #fafbfc;

    transition: all 0.2s ease;

}

.zst-prog-item:hover {

    border-color: #0284c7;

    background: #ffffff;

    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);

}

.zst-prog-left {

    display: flex;

    align-items: center;

    gap: 12px;

}

.zst-prog-icon {

    width: 34px;

    height: 34px;

    border-radius: 8px;

    background: #e0f2fe;

    color: #0284c7;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 14px;

    flex-shrink: 0;

}

.zst-prog-left h5 {

    font-size: 13.5px;

    font-weight: 700;

    color: #0f172a;

    margin: 0 0 2px 0;

}

.zst-prog-size {

    font-size: 11px;

    color: #64748b;

}

.zst-prog-dl {

    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding: 6px 12px;

    background: #f1f5f9;

    color: #0f172a;

    border-radius: 6px;

    text-decoration: none;

    font-size: 12px;

    font-weight: 600;

    transition: all 0.2s;

    flex-shrink: 0;

}

.zst-prog-item:hover .zst-prog-dl {

    background: #0284c7;

    color: #ffffff;

}

/* Alert Note Box */

.zst-ex-alert-box {

    display: flex;

    align-items: flex-start;

    gap: 14px;

    padding: 16px 20px;

    background: #eff6ff;

    border-left: 4px solid #0284c7;

    border-radius: 0 10px 10px 0;

    font-size: 13.5px;

    color: #1e3a8a;

    line-height: 1.55;

    margin-top: 24px;

}

.zst-ex-alert-box i {

    font-size: 18px;

    color: #0284c7;

    margin-top: 2px;

    flex-shrink: 0;

}

/* Responsive adjustments */

@media (max-width: 900px) {

    .zst-ex-tabs-nav {

        grid-template-columns: 1fr;

    }

    .zst-ex-tab-btn {

        padding: 14px 16px;

    }

    .zst-ex-hero {

        padding: 24px 20px;

    }

    .zst-ex-tab-panel {

        padding: 20px 16px;

    }

}

@media (max-width: 600px) {

    .zst-ex-title {

        font-size: 23px;

    }

    .zst-portals-links {

        width: 100%;

    }

    .zst-portal-btn {

        width: 100%;

        justify-content: center;

    }

    .zst-doc-card {

        flex-direction: column;

    }

    .zst-btn-download {

        width: 100%;

        justify-content: center;

    }

}

/* Reset theme button styles on tab buttons */

button.zst-ex-tab-btn,

.zst-ex-tab-btn {

    all: unset !important;

    box-sizing: border-box !important;

    display: flex !important;

    align-items: center !important;

    gap: 14px !important;

    padding: 16px 18px !important;

    background: #ffffff !important;

    background-image: none !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 14px !important;

    cursor: pointer !important;

    text-align: left !important;

    text-transform: none !important;

    letter-spacing: normal !important;

    font-family: inherit !important;

    width: 100% !important;

    color: #1e293b !important;

    box-shadow: none !important;

    transition: all 0.2s ease !important;

}

button.zst-ex-tab-btn:hover,

.zst-ex-tab-btn:hover {

    border-color: #0284c7 !important;

    background: #f0f9ff !important;

    transform: translateY(-2px) !important;

    color: #0284c7 !important;

}

button.zst-ex-tab-btn.active,

.zst-ex-tab-btn.active {

    background: #0f172a !important;

    background-image: none !important;

    border-color: #0f172a !important;

    color: #ffffff !important;

    box-shadow: 0 6px 16px -2px rgba(15, 23, 42, 0.18) !important;

}

.zst-ex-tab-btn.active .zst-tab-heading {

    color: #ffffff !important;

}

.zst-ex-tab-btn.active .zst-tab-sub {

    color: #94a3b8 !important;

}

.zst-ex-tab-btn .zst-tab-heading {

    color: #0f172a !important;

    font-size: 15px !important;

    font-weight: 700 !important;

    line-height: 1.3 !important;

    display: block !important;

}

.zst-ex-tab-btn .zst-tab-sub {

    color: #64748b !important;

    font-size: 12px !important;

    line-height: 1.4 !important;

    display: block !important;

}

/* Fix zst-el responsive helper classes globally across all pages */

@media (min-width: 1025px) {

    .zst-el-hidden-desktop {

        display: none !important;

    }

}

@media (max-width: 1024px) and (min-width: 768px) {

    .zst-el-hidden-tablet {

        display: none !important;

    }

}

@media (max-width: 767px) {

    .zst-el-hidden-mobile {

        display: none !important;

    }

}

.zst-el-hidden-desktop.zst-el-hidden-tablet.zst-el-hidden-mobile {

    display: none !important;

}

.zst-ped-docs-section {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 16px !important;

    padding: 28px !important;

    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;

    margin-top: 36px !important;

}

.zst-docs-head-title {

    margin: 0 0 20px 0 !important;

    font-size: 19px !important;

    font-weight: 800 !important;

    color: #0f172a !important;

    display: flex !important;

    align-items: center !important;

    gap: 10px !important;

}

.zst-docs-head-title i {

    color: #2563eb !important;

    font-size: 20px !important;

}

.zst-ped-docs-grid {

    display: grid !important;

    grid-template-columns: repeat(2, 1fr) !important;

    gap: 14px !important;

}

@media (max-width: 860px) {

    .zst-ped-docs-grid {

        grid-template-columns: 1fr !important;

    }

}

.zst-doc-item {

    display: flex !important;

    align-items: center !important;

    gap: 14px !important;

    background: #ffffff !important;

    border: 1.5px solid #e2e8f0 !important;

    border-radius: 12px !important;

    padding: 14px 18px !important;

    text-decoration: none !important;

    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.03) !important;

    transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;

    cursor: pointer !important;

}

.zst-doc-item,

.zst-doc-item *,

.zst-doc-item span {

    text-decoration: none !important;

    text-decoration-line: none !important;

}

.zst-doc-item:hover {

    background: #ffffff !important;

    border-color: #2563eb !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.12) !important;

}

.zst-doc-icon {

    width: 42px !important;

    height: 42px !important;

    min-width: 42px !important;

    background: #eff6ff !important;

    border-radius: 10px !important;

    color: #2563eb !important;

    font-size: 18px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

    transition: transform 0.2s ease !important;

}

.zst-doc-item:hover .zst-doc-icon {

    transform: scale(1.08) !important;

    background: #dbeafe !important;

}

.zst-doc-info {

    flex: 1 1 auto !important;

    min-width: 0 !important;

    display: flex !important;

    flex-direction: column !important;

    gap: 3px !important;

    overflow: hidden !important;

}

.zst-doc-name {

    display: block !important;

    font-size: 13.5px !important;

    font-weight: 700 !important;

    color: #1e293b !important;

    line-height: 1.35 !important;

    transition: color 0.18s ease !important;

}

.zst-doc-item:hover .zst-doc-name {

    color: #1d4ed8 !important;

}

.zst-doc-meta {

    display: block !important;

    font-size: 11.5px !important;

    color: #64748b !important;

    line-height: 1.3 !important;

}

.zst-doc-action {

    display: inline-flex !important;

    align-items: center !important;

    gap: 6px !important;

    padding: 7px 14px !important;

    background: #f1f5f9 !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 8px !important;

    font-size: 12px !important;

    font-weight: 600 !important;

    color: #2563eb !important;

    white-space: nowrap !important;

    width: auto !important;

    margin-top: 0 !important;

    flex-shrink: 0 !important;

    transition: all 0.2s ease !important;

}

.zst-doc-action i {

    font-size: 11px !important;

}

.zst-doc-item:hover .zst-doc-action {

    background: #2563eb !important;

    border-color: #2563eb !important;

    color: #ffffff !important;

}

/* Usuniecie zaokraglen z bocznego bloku i styku sekcji Egzaminy i praktyki */

.zst-el-element-e9fa1cd,

.zst-el-element-e9fa1cd > .zst-el-widget-wrap,

.zst-el-element-e9fa1cd .zst-el-widget-wrap,

.zst-el-element-43a8284f,

.zst-el-element-43a8284f > .zst-el-container,

.zst-el-element-43a8284f .zst-el-widget-wrap {

    border-radius: 0 !important;

    border-top-left-radius: 0 !important;

    border-top-right-radius: 0 !important;

    border-bottom-left-radius: 0 !important;

    border-bottom-right-radius: 0 !important;

}

/* ==========================================================================

   NOWOCZESNE PRZYCISKI BOCZNE (Sekcja 43a8284f, Kolumna 4cdab61d)

   Zgrabne, blekitne przyciski nawigacyjne (sky-blue) z duzym odstepem od kart

   ========================================================================== */

.zst-el-element-578ae0e {

  width: 63% !important;

  max-width: 63% !important;

  flex: 0 0 63% !important;

}

.zst-el-element-4cdab61d {

  width: 37% !important;

  max-width: 37% !important;

  flex: 0 0 37% !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: flex-end !important;

  padding-bottom: 4px !important;

}

.zst-el-element-4cdab61d .zst-el-widget-wrap {

  padding: 0 0 0 190px !important;

  display: flex !important;

  flex-direction: column !important;

  justify-content: flex-end !important;

  width: 100% !important;

  border: none !important;

}

.zst-el-element-4f6211de {

  width: 100% !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-items {

  display: flex !important;

  flex-direction: column !important;

  gap: 8px !important;

  width: 100% !important;

  max-width: 300px !important;

  padding: 0 !important;

  margin: 0 !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item {

  margin: 0 !important;

  padding: 0 !important;

  width: 100% !important;

}

/* Eleganckie przyciski Ghost Outline na granatowym tle */

.zst-el-element-4cdab61d .zst-el-icon-list-item a {

  display: flex !important;

  align-items: center !important;

  gap: 12px !important;

  padding: 10px 16px !important;

  background: transparent !important;

  color: #ffffff !important;

  font-family: inherit !important;

  font-weight: 700 !important;

  font-size: 12px !important;

  letter-spacing: 0.5px !important;

  border: 1.5px solid rgba(255, 255, 255, 0.85) !important;

  border-radius: 8px !important;

  text-decoration: none !important;

  box-shadow: none !important;

  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;

  width: 100% !important;

  box-sizing: border-box !important;

  position: relative !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover {

  transform: none !important;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;

  border-color: #ffffff !important;

  background: rgba(255, 255, 255, 0.12) !important;

  color: #ffffff !important;

}

/* Kasetka ikony - subtelne szklo */

.zst-el-element-4cdab61d .zst-el-icon-list-icon {

  width: 28px !important;

  height: 28px !important;

  min-width: 28px !important;

  border-radius: 0 !important;

  background: rgba(255, 255, 255, 0.12) !important;

  border: 1px solid rgba(255, 255, 255, 0.25) !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  margin-right: 0 !important;

  transition: all 0.25s ease !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-icon i {

  color: #ffffff !important;

  font-size: 12px !important;

  font-weight: 900 !important;

  transition: color 0.25s ease !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon {

  background: rgba(255, 255, 255, 0.22) !important;

  border-color: #1e3a8a !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon i {

  color: #ffffff !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-text {

  flex: 1 1 auto !important;

  white-space: nowrap !important;

  color: #ffffff !important;

  font-weight: 700 !important;

  font-size: 12px !important;

  letter-spacing: 0.5px !important;

  transition: color 0.25s ease !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-text {

  color: #ffffff !important;

}

/* Dyskretna strzalka nawigacyjna na koncu */

.zst-el-element-4cdab61d .zst-el-icon-list-item a::after {

  content: '\f054' !important;

  font-family: 'Font Awesome 5 Free' !important;

  font-weight: 900 !important;

  font-size: 10px !important;

  color: rgba(255, 255, 255, 0.7) !important;

  margin-left: auto !important;

  transition: all 0.25s ease !important;

}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover::after {

  color: #ffffff !important;

  transform: none !important;

}

@media (max-width: 1024px) {

  .zst-el-element-42294e3 .zst-el-container {

    max-width: 100% !important;

    width: 100% !important;

    padding-left: 16px !important;

    padding-right: 16px !important;

    box-sizing: border-box !important;

  }

}

@media (min-width: 1920px) {

  .zst-el-element-42294e3 .zst-el-container,

  .zst-el-element-c71ee80 .zst-el-container {

    max-width: 1380px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 15px !important;

    padding-right: 15px !important;

    box-sizing: border-box !important;

  }

}

@media (min-width: 2560px) {

  .zst-el-element-42294e3 .zst-el-container,

  .zst-el-element-c71ee80 .zst-el-container {

    max-width: 1560px !important;

    margin-left: auto !important;

    margin-right: auto !important;

    padding-left: 15px !important;

    padding-right: 15px !important;

    box-sizing: border-box !important;

  }

}

.zst-el-element-e749f82 {

  width: auto !important;

  flex: 1 1 auto !important;

}

.zst-el-element-236f61e {

  width: auto !important;

  flex: 0 0 auto !important;

}

.zst-el-element-236f61e .zst-el-icon-list-items {

  justify-content: flex-end !important;

}

/* Główny pasek menu: Logo po lewej, Menu po prawej (z zachowaniem zdrowego marginesu) */

@media (min-width: 1025px) {

  .zst-el-element-c71ee80 .zst-el-container {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

    flex-wrap: nowrap !important;

  }

  .zst-el-element-f0f2e74 {

    width: auto !important;

    flex: 0 0 auto !important;

  }

  .zst-el-element-f0f2e74 img:not(.zst-header-emblem) {

    max-width: 100% !important;

    height: auto !important;

  }

  .zst-el-element-2f4d7d6 {

    width: auto !important;

    flex: 1 1 auto !important;

    display: flex !important;

    justify-content: flex-end !important;

  }

  .zst-el-element-2f4d7d6 .premium-nav-widget-container,

  .zst-el-element-2f4d7d6 .premium-nav-menu-container,

  .zst-el-element-2f4d7d6 .premium-nav-menu-container > ul {

    display: flex !important;

    justify-content: flex-end !important;

    margin-left: auto !important;

  }

  .zst-el-element-8871457 .premium-nav-menu-container > ul {

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    white-space: nowrap !important;

  }

}

/* === NOWY BRANDING SZKOŁY W NAGŁÓWKU === */

.zst-header-branding-link {

  text-decoration: none !important;

  display: inline-flex !important;

  align-items: center !important;

  padding: 4px 0 !important;

}

.zst-header-branding {

  display: flex !important;

  align-items: center !important;

  gap: 16px !important;

}

.zst-header-emblem {

  height: 88px !important;

  width: auto !important;

  max-width: 78px !important;

  object-fit: contain !important;

  flex-shrink: 0 !important;

  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.35)) !important;

  transition: none !important;

}

.zst-header-branding-link:hover .zst-header-emblem {

  transform: none !important;

}

.zst-header-text {

  display: flex !important;

  flex-direction: column !important;

  justify-content: center !important;

  text-align: left !important;

  line-height: 1.22 !important;

}

.zst-header-title {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 17.5px !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  letter-spacing: 0.2px !important;

  margin-bottom: 2px !important;

  white-space: nowrap !important;

}

.zst-header-sub {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 13.5px !important;

  font-weight: 600 !important;

  color: rgba(255, 255, 255, 0.95) !important;

  white-space: nowrap !important;

}

.zst-header-patron {

  font-family: 'Montserrat', 'Segoe UI', Roboto, sans-serif !important;

  font-size: 11.5px !important;

  font-weight: 400 !important;

  color: rgba(255, 255, 255, 0.82) !important;

  letter-spacing: 0.2px !important;

  margin-top: 2px !important;

  white-space: nowrap !important;

  font-style: italic !important;

}

@media (max-width: 1280px) and (min-width: 1025px) {

  .zst-header-emblem { height: 76px !important; max-width: 68px !important; }

  .zst-header-title { font-size: 15.5px !important; }

  .zst-header-sub { font-size: 12px !important; }

  .zst-header-patron { font-size: 10.5px !important; }

  .zst-header-branding { gap: 12px !important; }

}

.zst-actions { margin-left: auto !important; flex-shrink: 0 !important; }

/* ==========================================================================

   PODSTRONA: WYDAWANIE DUPLIKATÓW ŚWIADECTW I LEGITYMACJI (Post 5668)

   ========================================================================== */

.zst-duplikaty-page {

  font-family: inherit;

  color: #1e293b;

  max-width: 1100px;

  margin: 0 auto;

  padding: 10px 0 40px;

}

/* Kafelki podsumowujące (Górny grid) */

.zst-dup-summary-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;

  margin-bottom: 40px;

}

.zst-dup-summary-card {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 14px;

  padding: 22px 20px;

  display: flex;

  align-items: center;

  gap: 16px;

  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);

  transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.zst-dup-summary-card:hover {

  transform: translateY(-3px);

  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.09);

  border-color: #cbd5e1;

}

.zst-dup-card-icon {

  width: 54px;

  height: 54px;

  min-width: 54px;

  border-radius: 12px;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 22px;

}

.zst-icon-card {

  background: #eff6ff;

  color: #2563eb;

}

.zst-icon-cert {

  background: #fef3c7;

  color: #d97706;

}

.zst-icon-office {

  background: #f0fdf4;

  color: #16a34a;

}

.zst-dup-card-content {

  display: flex;

  flex-direction: column;

}

.zst-dup-card-label {

  font-size: 13px;

  color: #64748b;

  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.5px;

}

.zst-dup-card-value {

  font-size: 24px;

  font-weight: 800;

  color: #0f172a;

  line-height: 1.2;

  margin: 2px 0;

}

.zst-dup-card-hint {

  font-size: 12.5px;

  color: #64748b;

}

/* Sekcje */

.zst-dup-section {

  margin-bottom: 45px;

}

.zst-dup-section-header {

  margin-bottom: 24px;

}

.zst-dup-section-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  padding: 4px 12px;

  background: #eff6ff;

  color: #1e40af;

  border: 1px solid #bfdbfe;

  border-radius: 20px;

  font-size: 12px;

  font-weight: 700;

  letter-spacing: 0.5px;

  margin-bottom: 10px;

}

.zst-dup-section-header h2 {

  font-size: 26px;

  font-weight: 800;

  color: #0f172a;

  margin: 0 0 6px 0;

}

.zst-dup-section-header p {

  color: #64748b;

  font-size: 15px;

  margin: 0;

}

/* Kafelki pobierania formularzy */

.zst-dup-downloads-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 24px;

}

.zst-dup-doc-card {

  background: #ffffff;

  border: 1.5px solid #e2e8f0;

  border-radius: 16px;

  padding: 28px;

  display: flex;

  flex-direction: column;

  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.05);

  transition: all 0.2s ease;

}

.zst-dup-doc-card:hover {

  border-color: #3b82f6;

  box-shadow: 0 10px 28px rgba(37, 99, 235, 0.1);

  transform: translateY(-2px);

}

.zst-dup-doc-header {

  display: flex;

  align-items: flex-start;

  gap: 16px;

  margin-bottom: 14px;

}

.zst-dup-doc-badge-icon {

  width: 48px;

  height: 48px;

  min-width: 48px;

  border-radius: 12px;

  background: #eff6ff;

  color: #2563eb;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 20px;

}

.zst-badge-gold {

  background: #fef3c7;

  color: #d97706;

}

.zst-dup-doc-title-wrap {

  flex: 1;

}

.zst-dup-doc-tag {

  display: inline-block;

  font-size: 11px;

  font-weight: 800;

  color: #2563eb;

  letter-spacing: 0.6px;

  margin-bottom: 4px;

}

.zst-tag-gold {

  color: #d97706;

}

.zst-dup-doc-title-wrap h3 {

  font-size: 18px;

  font-weight: 700;

  color: #0f172a;

  margin: 0;

  line-height: 1.3;

}

.zst-dup-doc-desc {

  font-size: 14px;

  color: #64748b;

  line-height: 1.5;

  margin-bottom: 16px;

  flex: 1 1 auto;

}

.zst-dup-doc-requirements {

  display: flex;

  flex-direction: column;

  gap: 6px;

  background: #f8fafc;

  padding: 12px 14px;

  border-radius: 8px;

  margin-bottom: 20px;

  border: 1px solid #f1f5f9;

}

.zst-req-item {

  font-size: 13px;

  color: #334155;

  display: flex;

  align-items: center;

  gap: 8px;

}

.zst-req-item i {

  color: #10b981;

  font-size: 14px;

}

.zst-dup-doc-actions {

  display: flex;

  gap: 10px;

  flex-wrap: wrap;

}

.zst-dup-btn {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  padding: 11px 18px;

  border-radius: 8px;

  font-size: 13px;

  font-weight: 700;

  text-decoration: none !important;

  transition: all 0.2s ease;

  flex: 1 1 auto;

}

.zst-dup-btn-primary {

  background: #1e3a8a;

  color: #ffffff !important;

  border: 1px solid #1e3a8a;

  box-shadow: 0 2px 8px rgba(30, 58, 138, 0.25);

}

.zst-dup-btn-primary:hover {

  background: #2563eb;

  color: #ffffff !important;

  transform: translateY(-1px);

  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);

}

.zst-dup-btn-secondary {

  background: #f8fafc;

  color: #334155 !important;

  border: 1.5px solid #cbd5e1;

}

.zst-dup-btn-secondary:hover {

  background: #e2e8f0;

  color: #0f172a !important;

  border-color: #94a3b8;

}

/* Krok po kroku flow */

.zst-dup-steps-flow {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;

}

.zst-dup-step-item {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 12px;

  padding: 22px 18px;

  position: relative;

  display: flex;

  flex-direction: column;

}

.zst-dup-step-num {

  width: 36px;

  height: 36px;

  border-radius: 50%;

  background: #1e3a8a;

  color: #ffffff;

  font-size: 15px;

  font-weight: 800;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-bottom: 14px;

}

.zst-dup-step-body h4 {

  font-size: 15px;

  font-weight: 700;

  color: #0f172a;

  margin: 0 0 6px 0;

}

.zst-dup-step-body p {

  font-size: 13px;

  color: #64748b;

  line-height: 1.5;

  margin: 0;

}

/* Moduł przelewu bankowego */

.zst-dup-bank-card {

  background: #ffffff;

  border: 1.5px solid #cbd5e1;

  border-radius: 16px;

  padding: 30px;

  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);

}

.zst-dup-bank-header {

  display: flex;

  align-items: center;

  gap: 16px;

  margin-bottom: 24px;

  padding-bottom: 18px;

  border-bottom: 1px solid #e2e8f0;

}

.zst-dup-bank-icon {

  width: 50px;

  height: 50px;

  border-radius: 12px;

  background: #eff6ff;

  color: #1e3a8a;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 22px;

}

.zst-dup-bank-header h3 {

  font-size: 20px;

  font-weight: 800;

  color: #0f172a;

  margin: 0 0 4px 0;

}

.zst-dup-bank-header p {

  color: #64748b;

  font-size: 14px;

  margin: 0;

}

.zst-dup-bank-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 20px;

  margin-bottom: 20px;

}

.zst-dup-bank-item {

  background: #f8fafc;

  border: 1px solid #e2e8f0;

  border-radius: 10px;

  padding: 16px 18px;

}

.zst-dup-bank-label {

  display: block;

  font-size: 11px;

  font-weight: 800;

  color: #64748b;

  letter-spacing: 0.6px;

  margin-bottom: 6px;

}

.zst-dup-bank-val {

  font-size: 14px;

  color: #1e293b;

  margin: 0;

  line-height: 1.5;

}

.zst-bank-account-box {

  background: #eff6ff;

  border-color: #bfdbfe;

  position: relative;

}

.zst-dup-account-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 10px;

  flex-wrap: wrap;

}

.zst-dup-account-number {

  font-family: 'SF Mono', Consolas, Monaco, monospace;

  font-size: 16px;

  font-weight: 800;

  color: #1e3a8a;

  letter-spacing: 0.5px;

}

.zst-dup-copy-btn {

  background: #1e3a8a;

  color: #ffffff;

  border: none;

  padding: 6px 14px;

  border-radius: 6px;

  font-size: 12px;

  font-weight: 700;

  cursor: pointer;

  display: inline-flex;

  align-items: center;

  gap: 6px;

  transition: all 0.18s ease;

}

.zst-dup-copy-btn:hover {

  background: #2563eb;

  transform: translateY(-1px);

}

.zst-dup-copy-hint {

  display: none;

  font-size: 11.5px;

  color: #059669;

  font-weight: 700;

  margin-top: 6px;

}

.zst-dup-copy-hint.active {

  display: block;

}

.zst-bank-code {

  font-family: 'SF Mono', Consolas, Monaco, monospace;

  font-size: 12.5px;

  background: #f1f5f9;

  padding: 6px 10px;

  border-radius: 6px;

  border: 1px dashed #cbd5e1;

  color: #0f172a;

}

.zst-dup-bank-footer {

  display: flex;

  align-items: flex-start;

  gap: 12px;

  background: #fefce8;

  border: 1px solid #fef08a;

  padding: 14px 18px;

  border-radius: 10px;

  color: #854d0e;

  font-size: 13px;

  line-height: 1.5;

}

.zst-dup-bank-footer i {

  color: #eab308;

  font-size: 16px;

  margin-top: 2px;

}

/* Informacje prawne */

.zst-dup-legal-card {

  background: #f8fafc;

  border: 1px solid #e2e8f0;

  border-radius: 12px;

  padding: 24px;

}

.zst-dup-legal-header {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 14px;

  color: #475569;

}

.zst-dup-legal-header i {

  font-size: 18px;

  color: #64748b;

}

.zst-dup-legal-header h4 {

  font-size: 15px;

  font-weight: 700;

  color: #334155;

  margin: 0;

}

.zst-dup-bullets {

  margin: 0;

  padding-left: 18px;

  color: #64748b;

  font-size: 13px;

  line-height: 1.6;

}

.zst-dup-bullets li {

  margin-bottom: 8px;

}

.zst-dup-bullets li:last-child {

  margin-bottom: 0;

}

/* Responsywność */

@media (max-width: 900px) {

  .zst-dup-summary-grid {

    grid-template-columns: 1fr;

  }

  .zst-dup-downloads-grid {

    grid-template-columns: 1fr;

  }

  .zst-dup-steps-flow {

    grid-template-columns: repeat(2, 1fr);

  }

  .zst-dup-bank-grid {

    grid-template-columns: 1fr;

  }

}

@media (max-width: 600px) {

  .zst-dup-steps-flow {

    grid-template-columns: 1fr;

  }

  .zst-dup-doc-actions {

    flex-direction: column;

  }

  .zst-dup-btn {

    width: 100%;

  }

  .zst-dup-account-row {

    flex-direction: column;

    align-items: flex-start;

  }

}

/* Fixy przyciskow i etykiet na podstronie duplikatow */

.zst-dup-doc-tag {

  font-size: 11px !important;

  font-weight: 800 !important;

  letter-spacing: 0.6px !important;

  margin-bottom: 4px !important;

  background: transparent !important;

  border: none !important;

  padding: 0 !important;

  display: inline-block !important;

  color: #2563eb !important;

}

.zst-dup-tag-gold {

  color: #d97706 !important;

  background: transparent !important;

  border: none !important;

}

.zst-page-content-wrap a.zst-dup-btn,

.zst-dup-doc-actions a.zst-dup-btn,

a.zst-dup-btn {

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  gap: 8px !important;

  padding: 11px 20px !important;

  border-radius: 8px !important;

  font-size: 13.5px !important;

  font-weight: 700 !important;

  text-decoration: none !important;

  transition: all 0.2s ease !important;

  box-sizing: border-box !important;

  height: 44px !important;

}

.zst-page-content-wrap a.zst-dup-btn-primary,

.zst-dup-doc-actions a.zst-dup-btn-primary,

a.zst-dup-btn-primary {

  background: #1e3a8a !important;

  color: #ffffff !important;

  border: 1px solid #1e3a8a !important;

  box-shadow: 0 2px 8px rgba(30, 58, 138, 0.25) !important;

}

.zst-page-content-wrap a.zst-dup-btn-primary:hover,

.zst-dup-doc-actions a.zst-dup-btn-primary:hover,

a.zst-dup-btn-primary:hover {

  background: #2563eb !important;

  color: #ffffff !important;

  border-color: #2563eb !important;

  transform: translateY(-1px) !important;

  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35) !important;

}

.zst-page-content-wrap a.zst-dup-btn-primary i,

.zst-dup-doc-actions a.zst-dup-btn-primary i,

a.zst-dup-btn-primary i {

  color: #ffffff !important;

}

.zst-page-content-wrap a.zst-dup-btn-secondary,

.zst-dup-doc-actions a.zst-dup-btn-secondary,

a.zst-dup-btn-secondary {

  background: #ffffff !important;

  color: #1e3a8a !important;

  border: 1.5px solid #cbd5e1 !important;

  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;

}

.zst-page-content-wrap a.zst-dup-btn-secondary:hover,

.zst-dup-doc-actions a.zst-dup-btn-secondary:hover,

a.zst-dup-btn-secondary:hover {

  background: #f8fafc !important;

  color: #1e3a8a !important;

  border-color: #94a3b8 !important;

  transform: translateY(-1px) !important;

}

.zst-page-content-wrap a.zst-dup-btn-secondary i,

.zst-dup-doc-actions a.zst-dup-btn-secondary i,

a.zst-dup-btn-secondary i {

  color: #2563eb !important;

}

.zst-dup-doc-card:nth-child(2) .zst-dup-btn {

  max-width: 250px !important;

}

/* ==========================================================================

   ZST KIERUNKI KSZTAŁCENIA - NOWOCZESNE PANELE INFORMACYJNE

   ========================================================================== */

.zst-kierunki-wrapper {

  --navy-900: #0a192f;

  --navy-800: #0f2444;

  --slate-100: #f1f5f9;

  --slate-200: #e2e8f0;

  --slate-600: #475569;

  --slate-700: #334155;

  --slate-900: #0f172a;

  

  --c-it: #0284c7;

  --c-it-dark: #0369a1;

  --c-it-bg: #f0f9ff;

  --c-it-border: #bae6fd;

  --c-mecha: #ea580c;

  --c-mecha-dark: #c2410c;

  --c-mecha-bg: #fff7ed;

  --c-mecha-border: #fed7aa;

  --c-sped: #16a34a;

  --c-sped-dark: #15803d;

  --c-sped-bg: #f0fdf4;

  --c-sped-border: #bbf7d0;

  --c-elek: #d97706;

  --c-elek-dark: #b45309;

  --c-elek-bg: #fffbeb;

  --c-elek-border: #fde68a;

  --c-auto: #0891b2;

  --c-auto-dark: #0e7490;

  --c-auto-bg: #ecfeff;

  --c-auto-border: #a5f3fc;

  --c-moda: #9333ea;

  --c-moda-dark: #7e22ce;

  --c-moda-bg: #faf5ff;

  --c-moda-border: #e9d5ff;

  --card-radius: 20px;

  font-family: inherit;

  color: var(--slate-700);

  line-height: 1.6;

  max-width: 1240px;

  margin: 0 auto;

  padding: 10px 0 40px;

}

/* Header */

.zst-kierunki-header {

  text-align: center;

  padding: 10px 0 32px;

}

.zst-kierunki-title {

  font-size: 2.4rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  letter-spacing: -0.02em;

  line-height: 1.25 !important;

  margin-bottom: 14px !important;

}

.zst-kierunki-title span {

  background: linear-gradient(135deg, #0284c7 0%, #2563eb 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}

.zst-kierunki-lead {

  max-width: 780px;

  margin: 0 auto 32px;

  font-size: 1.05rem;

  color: #475569;

  line-height: 1.6;

}

/* 4 Key Pillars */

.zst-kierunki-stats {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;

  margin-bottom: 36px;

}

.zst-stat-pill {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 16px;

  padding: 16px 18px;

  display: flex;

  align-items: center;

  gap: 14px;

  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);

  transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.zst-stat-pill:hover {

  transform: translateY(-2px);

  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);

}

.zst-stat-icon {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #eff6ff;

  color: #2563eb;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.25rem;

  flex-shrink: 0;

}

.zst-stat-text strong {

  display: block;

  font-size: 1.02rem;

  color: #0f172a;

  line-height: 1.2;

}

.zst-stat-text span {

  font-size: 0.8rem;

  color: #64748b;

}

/* Top Cyber Banner Tile */

.zst-cyber-tile {

  margin-bottom: 44px;

}

.zst-cyber-link {

  position: relative;

  border-radius: 22px;

  overflow: hidden;

  box-shadow: 0 16px 36px rgba(10, 25, 47, 0.22);

  border: 1px solid rgba(56, 189, 248, 0.35);

  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);

  cursor: pointer;

  display: block;

  text-decoration: none !important;

  background: #07152b;

}

.zst-cyber-link:hover {

  transform: translateY(-4px);

  box-shadow: 0 22px 46px rgba(2, 132, 199, 0.32);

}

.zst-cyber-img {

  width: 100%;

  height: auto;

  display: block;

  object-fit: cover;

}

.zst-cyber-bar {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  padding: 16px 28px;

  background: linear-gradient(180deg, rgba(7, 21, 43, 0) 0%, rgba(7, 21, 43, 0.85) 50%, rgba(7, 21, 43, 0.98) 100%);

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

}

.zst-cyber-badge {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(220, 38, 38, 0.95);

  color: #ffffff;

  font-size: 0.76rem;

  font-weight: 800;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  padding: 6px 16px;

  border-radius: 999px;

  box-shadow: 0 2px 10px rgba(220, 38, 38, 0.5);

}

.zst-cyber-btn {

  background: #0284c7;

  color: #ffffff !important;

  font-size: 0.9rem;

  font-weight: 700;

  padding: 11px 24px;

  border-radius: 12px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 4px 16px rgba(2, 132, 199, 0.5);

  border: 1px solid rgba(255, 255, 255, 0.25);

  transition: background 0.2s ease;

}

.zst-cyber-link:hover .zst-cyber-btn {

  background: #0369a1;

}

/* Section Title */

.zst-kierunki-section-title {

  font-size: 1.75rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin-bottom: 24px !important;

  display: flex;

  align-items: center;

  gap: 12px;

}

.zst-kierunki-section-title i {

  color: #0284c7;

  font-size: 1.45rem;

}

/* Cards Grid */

.zst-cards-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 32px;

}

.zst-prof-card {

  background: #ffffff;

  border-radius: var(--card-radius);

  border: 1px solid #e2e8f0;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);

  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.28s ease;

  position: relative;

}

.zst-prof-card:hover {

  transform: translateY(-6px);

  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.15);

}

.card-informatyk { --b-color: var(--c-it); --b-dark: var(--c-it-dark); --b-bg: var(--c-it-bg); --b-border: var(--c-it-border); }

.card-mechatronik { --b-color: var(--c-mecha); --b-dark: var(--c-mecha-dark); --b-bg: var(--c-mecha-bg); --b-border: var(--c-mecha-border); }

.card-spedytor { --b-color: var(--c-sped); --b-dark: var(--c-sped-dark); --b-bg: var(--c-sped-bg); --b-border: var(--c-sped-border); }

.card-elektryk { --b-color: var(--c-elek); --b-dark: var(--c-elek-dark); --b-bg: var(--c-elek-bg); --b-border: var(--c-elek-border); }

.card-pojazdy { --b-color: var(--c-auto); --b-dark: var(--c-auto-dark); --b-bg: var(--c-auto-bg); --b-border: var(--c-auto-border); }

.card-moda { --b-color: var(--c-moda); --b-dark: var(--c-moda-dark); --b-bg: var(--c-moda-bg); --b-border: var(--c-moda-border); }

.zst-prof-card:hover {

  border-color: var(--b-border);

}

/* Card Hero */

.zst-card-hero {

  position: relative;

  height: 155px;

  overflow: hidden;

  background: #0f172a;

}

.zst-card-hero-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  transition: transform 0.5s ease;

}

.zst-prof-card:hover .zst-card-hero-img {

  transform: scale(1.04);

}

.zst-card-hero-overlay {

  position: absolute;

  inset: 0;

  pointer-events: none;

  background: linear-gradient(180deg, rgba(15, 23, 42, 0.45) 0%, rgba(15, 23, 42, 0) 50%, rgba(15, 23, 42, 0.3) 100%);

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  padding: 14px 18px;

}

.zst-card-top-badges {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 8px;

}

.zst-badge-duration {

  background: rgba(15, 23, 42, 0.75);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.25);

  color: #ffffff;

  font-size: 0.74rem;

  font-weight: 700;

  padding: 4px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}

.zst-badge-special {

  background: var(--b-color);

  color: #ffffff;

  font-size: 0.74rem;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);

}

/* Card Body */

.zst-card-body {

  padding: 24px;

  display: flex;

  flex-direction: column;

  flex: 1;

}

.zst-card-body-title {

  font-size: 1.45rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin: 0 0 6px 0 !important;

  display: flex;

  align-items: center;

  gap: 10px;

  line-height: 1.25 !important;

}

.zst-card-body-title i {

  color: var(--b-color);

  font-size: 1.25rem;

}

.zst-card-tagline {

  font-size: 0.88rem;

  font-weight: 600;

  color: var(--b-dark);

  margin-bottom: 18px;

  display: flex;

  align-items: center;

  gap: 8px;

}

/* CKE Qual box */

.zst-qual-box {

  background: var(--b-bg);

  border: 1px solid var(--b-border);

  border-radius: 12px;

  padding: 12px 16px;

  margin-bottom: 20px;

}

.zst-qual-label {

  font-size: 0.72rem;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.08em;

  color: var(--b-dark);

  margin-bottom: 8px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-qual-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 6px;

  padding: 0;

  margin: 0;

}

.zst-qual-item {

  font-size: 0.82rem;

  color: #334155;

  display: flex;

  align-items: flex-start;

  gap: 8px;

  line-height: 1.35;

}

.zst-qual-code {

  background: #ffffff;

  border: 1px solid var(--b-border);

  color: var(--b-dark);

  font-weight: 800;

  font-size: 0.74rem;

  padding: 1px 7px;

  border-radius: 6px;

  flex-shrink: 0;

}

/* Skills */

.zst-skills-title {

  font-size: 0.82rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #0f172a;

  margin-bottom: 10px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-skills-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 9px;

  margin-bottom: 22px;

  padding: 0;

}

.zst-skill-point {

  display: flex;

  align-items: flex-start;

  gap: 10px;

  font-size: 0.87rem;

  color: #334155;

  line-height: 1.4;

}

.zst-skill-point i {

  color: var(--b-color);

  font-size: 0.85rem;

  margin-top: 3px;

  flex-shrink: 0;

}

/* Career tags */

.zst-career-wrap {

  margin-top: auto;

  padding-top: 16px;

  border-top: 1px solid #e2e8f0;

  margin-bottom: 20px;

}

.zst-career-label {

  font-size: 0.72rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #64748b;

  margin-bottom: 8px;

}

.zst-career-tags {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

}

.zst-career-tag {

  background: #f1f5f9;

  color: #334155;

  font-size: 0.76rem;

  font-weight: 600;

  padding: 4px 10px;

  border-radius: 6px;

  border: 1px solid #e2e8f0;

}

/* Card Footer Actions */

.zst-card-footer {

  display: flex;

  gap: 10px;

}

.zst-btn-main {

  flex: 1;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: var(--b-color);

  color: #ffffff !important;

  text-decoration: none !important;

  font-weight: 700;

  font-size: 0.9rem;

  padding: 12px 18px;

  border-radius: 12px;

  transition: all 0.2s ease;

  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);

  border: none;

  cursor: pointer;

}

.zst-btn-main:hover {

  background: var(--b-dark);

  transform: translateY(-2px);

  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.15);

}

.zst-btn-flyer {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #f1f5f9;

  border: 1px solid #e2e8f0;

  color: #334155 !important;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1rem;

  cursor: pointer;

  transition: all 0.2s ease;

  text-decoration: none !important;

}

.zst-btn-flyer:hover {

  background: #ffffff;

  color: var(--b-color) !important;

  border-color: var(--b-color);

  transform: translateY(-2px);

}

/* Recruitment banner */

.zst-recruitment-banner {

  background: linear-gradient(135deg, #1e3a8a 0%, #0f172a 100%);

  border-radius: 20px;

  padding: 34px 40px;

  color: #ffffff;

  margin-top: 48px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 24px;

  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.12);

}

.zst-recruitment-text h3 {

  font-size: 1.55rem !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  margin-bottom: 6px !important;

}

.zst-recruitment-text p {

  color: #cbd5e1;

  font-size: 0.95rem;

  margin: 0;

}

.zst-recruitment-actions {

  display: flex;

  gap: 12px;

  flex-shrink: 0;

}

.zst-btn-recruit-primary {

  background: #f59e0b;

  color: #0f172a !important;

  font-weight: 800;

  padding: 12px 24px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 6px 16px rgba(245, 158, 11, 0.4);

  transition: all 0.2s ease;

}

.zst-btn-recruit-primary:hover {

  background: #d97706;

  transform: translateY(-2px);

}

.zst-btn-recruit-sec {

  background: rgba(255, 255, 255, 0.1);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.2);

  color: #ffffff !important;

  font-weight: 700;

  padding: 12px 20px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  transition: all 0.2s ease;

}

.zst-btn-recruit-sec:hover {

  background: rgba(255, 255, 255, 0.2);

}

/* Responsive */

@media (max-width: 992px) {

  .zst-cards-grid {

    grid-template-columns: 1fr;

    gap: 24px;

  }

  .zst-kierunki-stats {

    grid-template-columns: repeat(2, 1fr);

  }

  .zst-recruitment-banner {

    flex-direction: column;

    align-items: flex-start;

  }

}

@media (max-width: 640px) {

  .zst-kierunki-title {

    font-size: 1.8rem !important;

  }

  .zst-kierunki-stats {

    grid-template-columns: 1fr;

  }

  .zst-cyber-bar {

    flex-direction: column;

    align-items: flex-start;

    padding: 14px;

  }

  .zst-cyber-btn {

    width: 100%;

    justify-content: center;

  }

}

/* ==========================================================================

   ZST KIERUNKI KSZTAŁCENIA - NOWOCZESNE PANELE INFORMACYJNE

   ========================================================================== */

.zst-kierunki-wrapper {

  --navy-900: #0a192f;

  --navy-800: #0f2444;

  --slate-100: #f1f5f9;

  --slate-200: #e2e8f0;

  --slate-600: #475569;

  --slate-700: #334155;

  --slate-900: #0f172a;

  

  --c-it: #0284c7;

  --c-it-dark: #0369a1;

  --c-it-bg: #f0f9ff;

  --c-it-border: #bae6fd;

  --c-mecha: #ea580c;

  --c-mecha-dark: #c2410c;

  --c-mecha-bg: #fff7ed;

  --c-mecha-border: #fed7aa;

  --c-sped: #16a34a;

  --c-sped-dark: #15803d;

  --c-sped-bg: #f0fdf4;

  --c-sped-border: #bbf7d0;

  --c-elek: #d97706;

  --c-elek-dark: #b45309;

  --c-elek-bg: #fffbeb;

  --c-elek-border: #fde68a;

  --c-auto: #0891b2;

  --c-auto-dark: #0e7490;

  --c-auto-bg: #ecfeff;

  --c-auto-border: #a5f3fc;

  --c-moda: #9333ea;

  --c-moda-dark: #7e22ce;

  --c-moda-bg: #faf5ff;

  --c-moda-border: #e9d5ff;

  --card-radius: 20px;

  font-family: inherit;

  color: var(--slate-700);

  line-height: 1.6;

  max-width: 1240px;

  margin: 0 auto;

  padding: 10px 0 40px;

}

/* Header */

.zst-kierunki-header {

  text-align: center;

  padding: 10px 0 32px;

}

.zst-kierunki-title {

  font-size: 2.4rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  letter-spacing: -0.02em;

  line-height: 1.25 !important;

  margin-bottom: 14px !important;

}

.zst-kierunki-title span {

  background: linear-gradient(135deg, #0284c7 0%, #2563eb 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}

.zst-kierunki-lead {

  max-width: 780px;

  margin: 0 auto 32px;

  font-size: 1.05rem;

  color: #475569;

  line-height: 1.6;

}

/* 4 Key Pillars */

.zst-kierunki-stats {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;

  margin-bottom: 36px;

}

.zst-stat-pill {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 16px;

  padding: 16px 18px;

  display: flex;

  align-items: center;

  gap: 14px;

  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);

  transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.zst-stat-pill:hover {

  transform: translateY(-2px);

  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);

}

.zst-stat-icon {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #eff6ff;

  color: #2563eb;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.25rem;

  flex-shrink: 0;

}

.zst-stat-text strong {

  display: block;

  font-size: 1.02rem;

  color: #0f172a;

  line-height: 1.2;

}

.zst-stat-text span {

  font-size: 0.8rem;

  color: #64748b;

}

/* Top Cyber Banner Tile */

.zst-cyber-tile {

  margin-bottom: 44px;

}

.zst-cyber-link {

  position: relative;

  border-radius: 22px;

  overflow: hidden;

  box-shadow: 0 16px 36px rgba(10, 25, 47, 0.22);

  border: 1px solid rgba(56, 189, 248, 0.35);

  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);

  cursor: pointer;

  display: block;

  text-decoration: none !important;

  background: #07152b;

}

.zst-cyber-link:hover {

  transform: translateY(-4px);

  box-shadow: 0 22px 46px rgba(2, 132, 199, 0.32);

}

.zst-cyber-img {

  width: 100%;

  height: auto;

  display: block;

  object-fit: cover;

}

.zst-cyber-bar {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  padding: 16px 28px;

  background: linear-gradient(180deg, rgba(7, 21, 43, 0) 0%, rgba(7, 21, 43, 0.85) 50%, rgba(7, 21, 43, 0.98) 100%);

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

}

.zst-cyber-badge {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(220, 38, 38, 0.95);

  color: #ffffff;

  font-size: 0.76rem;

  font-weight: 800;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  padding: 6px 16px;

  border-radius: 999px;

  box-shadow: 0 2px 10px rgba(220, 38, 38, 0.5);

}

.zst-cyber-btn {

  background: #0284c7;

  color: #ffffff !important;

  font-size: 0.9rem;

  font-weight: 700;

  padding: 11px 24px;

  border-radius: 12px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 4px 16px rgba(2, 132, 199, 0.5);

  border: 1px solid rgba(255, 255, 255, 0.25);

  transition: background 0.2s ease;

}

.zst-cyber-link:hover .zst-cyber-btn {

  background: #0369a1;

}

/* Section Title */

.zst-kierunki-section-title {

  font-size: 1.75rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin-bottom: 24px !important;

  display: flex;

  align-items: center;

  gap: 12px;

}

.zst-kierunki-section-title i {

  color: #0284c7;

  font-size: 1.45rem;

}

/* Cards Grid */

.zst-cards-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 32px;

}

.zst-prof-card {

  background: #ffffff;

  border-radius: var(--card-radius);

  border: 1px solid #e2e8f0;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);

  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.28s ease;

  position: relative;

}

.zst-prof-card:hover {

  transform: translateY(-6px);

  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.15);

}

.card-informatyk { --b-color: var(--c-it); --b-dark: var(--c-it-dark); --b-bg: var(--c-it-bg); --b-border: var(--c-it-border); }

.card-mechatronik { --b-color: var(--c-mecha); --b-dark: var(--c-mecha-dark); --b-bg: var(--c-mecha-bg); --b-border: var(--c-mecha-border); }

.card-spedytor { --b-color: var(--c-sped); --b-dark: var(--c-sped-dark); --b-bg: var(--c-sped-bg); --b-border: var(--c-sped-border); }

.card-elektryk { --b-color: var(--c-elek); --b-dark: var(--c-elek-dark); --b-bg: var(--c-elek-bg); --b-border: var(--c-elek-border); }

.card-pojazdy { --b-color: var(--c-auto); --b-dark: var(--c-auto-dark); --b-bg: var(--c-auto-bg); --b-border: var(--c-auto-border); }

.card-moda { --b-color: var(--c-moda); --b-dark: var(--c-moda-dark); --b-bg: var(--c-moda-bg); --b-border: var(--c-moda-border); }

.zst-prof-card:hover {

  border-color: var(--b-border);

}

/* Card Hero */

.zst-card-hero {

  position: relative;

  height: 155px;

  overflow: hidden;

  background: #0f172a;

}

.zst-card-hero-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: left center;

  transition: transform 0.5s ease;

}

.zst-prof-card:hover .zst-card-hero-img {

  transform: scale(1.04);

}

.zst-card-hero-overlay {

  position: absolute;

  inset: 0;

  pointer-events: none;

  background: linear-gradient(180deg, rgba(15, 23, 42, 0.45) 0%, rgba(15, 23, 42, 0) 50%, rgba(15, 23, 42, 0.3) 100%);

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  padding: 14px 18px;

}

.zst-card-top-badges {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 8px;

}

.zst-badge-duration {

  background: rgba(15, 23, 42, 0.75);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.25);

  color: #ffffff;

  font-size: 0.74rem;

  font-weight: 700;

  padding: 4px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}

.zst-badge-special {

  background: var(--b-color);

  color: #ffffff;

  font-size: 0.74rem;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);

}

/* Card Body */

.zst-card-body {

  padding: 24px;

  display: flex;

  flex-direction: column;

  flex: 1;

}

.zst-card-body-title {

  font-size: 1.45rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin: 0 0 6px 0 !important;

  display: flex;

  align-items: center;

  gap: 10px;

  line-height: 1.25 !important;

}

.zst-card-body-title i {

  color: var(--b-color);

  font-size: 1.25rem;

}

.zst-card-tagline {

  font-size: 0.88rem;

  font-weight: 600;

  color: var(--b-dark);

  margin-bottom: 18px;

  display: flex;

  align-items: center;

  gap: 8px;

}

/* CKE Qual box */

.zst-qual-box {

  background: var(--b-bg);

  border: 1px solid var(--b-border);

  border-radius: 12px;

  padding: 12px 16px;

  margin-bottom: 20px;

}

.zst-qual-label {

  font-size: 0.72rem;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.08em;

  color: var(--b-dark);

  margin-bottom: 8px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-qual-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 6px;

  padding: 0;

  margin: 0;

}

.zst-qual-item {

  font-size: 0.82rem;

  color: #334155;

  display: flex;

  align-items: flex-start;

  gap: 8px;

  line-height: 1.35;

}

.zst-qual-code {

  background: #ffffff;

  border: 1px solid var(--b-border);

  color: var(--b-dark);

  font-weight: 800;

  font-size: 0.74rem;

  padding: 1px 7px;

  border-radius: 6px;

  flex-shrink: 0;

}

/* Skills */

.zst-skills-title {

  font-size: 0.82rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #0f172a;

  margin-bottom: 10px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-skills-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 9px;

  margin-bottom: 22px;

  padding: 0;

}

.zst-skill-point {

  display: flex;

  align-items: flex-start;

  gap: 10px;

  font-size: 0.87rem;

  color: #334155;

  line-height: 1.4;

}

.zst-skill-point i {

  color: var(--b-color);

  font-size: 0.85rem;

  margin-top: 3px;

  flex-shrink: 0;

}

/* Career tags */

.zst-career-wrap {

  margin-top: auto;

  padding-top: 16px;

  border-top: 1px solid #e2e8f0;

  margin-bottom: 20px;

}

.zst-career-label {

  font-size: 0.72rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #64748b;

  margin-bottom: 8px;

}

.zst-career-tags {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

}

.zst-career-tag {

  background: #f1f5f9;

  color: #334155;

  font-size: 0.76rem;

  font-weight: 600;

  padding: 4px 10px;

  border-radius: 6px;

  border: 1px solid #e2e8f0;

}

/* Card Footer Actions */

.zst-card-footer {

  display: flex;

  gap: 10px;

}

.zst-btn-main {

  flex: 1;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: var(--b-color);

  color: #ffffff !important;

  text-decoration: none !important;

  font-weight: 700;

  font-size: 0.9rem;

  padding: 12px 18px;

  border-radius: 12px;

  transition: all 0.2s ease;

  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);

  border: none;

  cursor: pointer;

}

.zst-btn-main:hover {

  background: var(--b-dark);

  transform: translateY(-2px);

  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.15);

}

.zst-btn-flyer {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #f1f5f9;

  border: 1px solid #e2e8f0;

  color: #334155 !important;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1rem;

  cursor: pointer;

  transition: all 0.2s ease;

  text-decoration: none !important;

}

.zst-btn-flyer:hover {

  background: #ffffff;

  color: var(--b-color) !important;

  border-color: var(--b-color);

  transform: translateY(-2px);

}

/* Recruitment banner */

.zst-recruitment-banner {

  background: linear-gradient(135deg, #1e3a8a 0%, #0f172a 100%);

  border-radius: 20px;

  padding: 34px 40px;

  color: #ffffff;

  margin-top: 48px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 24px;

  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.12);

}

.zst-recruitment-text h3 {

  font-size: 1.55rem !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  margin-bottom: 6px !important;

}

.zst-recruitment-text p {

  color: #cbd5e1;

  font-size: 0.95rem;

  margin: 0;

}

.zst-recruitment-actions {

  display: flex;

  gap: 12px;

  flex-shrink: 0;

}

.zst-btn-recruit-primary {

  background: #f59e0b;

  color: #0f172a !important;

  font-weight: 800;

  padding: 12px 24px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 6px 16px rgba(245, 158, 11, 0.4);

  transition: all 0.2s ease;

}

.zst-btn-recruit-primary:hover {

  background: #d97706;

  transform: translateY(-2px);

}

.zst-btn-recruit-sec {

  background: rgba(255, 255, 255, 0.1);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.2);

  color: #ffffff !important;

  font-weight: 700;

  padding: 12px 20px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  transition: all 0.2s ease;

}

.zst-btn-recruit-sec:hover {

  background: rgba(255, 255, 255, 0.2);

}

/* Responsive */

@media (max-width: 992px) {

  .zst-cards-grid {

    grid-template-columns: 1fr;

    gap: 24px;

  }

  .zst-kierunki-stats {

    grid-template-columns: repeat(2, 1fr);

  }

  .zst-recruitment-banner {

    flex-direction: column;

    align-items: flex-start;

  }

}

@media (max-width: 640px) {

  .zst-kierunki-title {

    font-size: 1.8rem !important;

  }

  .zst-kierunki-stats {

    grid-template-columns: 1fr;

  }

  .zst-cyber-bar {

    flex-direction: column;

    align-items: flex-start;

    padding: 14px;

  }

  .zst-cyber-btn {

    width: 100%;

    justify-content: center;

  }

  .zst-card-hero {

    height: 130px;

  }

}

/* ==========================================================================

   ZST KIERUNKI KSZTAŁCENIA - NOWOCZESNE PANELE INFORMACYJNE

   ========================================================================== */

.zst-kierunki-wrapper {

  --navy-900: #0a192f;

  --navy-800: #0f2444;

  --slate-100: #f1f5f9;

  --slate-200: #e2e8f0;

  --slate-600: #475569;

  --slate-700: #334155;

  --slate-900: #0f172a;

  

  --c-it: #0284c7;

  --c-it-dark: #0369a1;

  --c-it-bg: #f0f9ff;

  --c-it-border: #bae6fd;

  --c-mecha: #ea580c;

  --c-mecha-dark: #c2410c;

  --c-mecha-bg: #fff7ed;

  --c-mecha-border: #fed7aa;

  --c-sped: #16a34a;

  --c-sped-dark: #15803d;

  --c-sped-bg: #f0fdf4;

  --c-sped-border: #bbf7d0;

  --c-elek: #d97706;

  --c-elek-dark: #b45309;

  --c-elek-bg: #fffbeb;

  --c-elek-border: #fde68a;

  --c-auto: #0891b2;

  --c-auto-dark: #0e7490;

  --c-auto-bg: #ecfeff;

  --c-auto-border: #a5f3fc;

  --c-moda: #9333ea;

  --c-moda-dark: #7e22ce;

  --c-moda-bg: #faf5ff;

  --c-moda-border: #e9d5ff;

  --card-radius: 20px;

  font-family: inherit;

  color: var(--slate-700);

  line-height: 1.6;

  max-width: 1240px;

  margin: 0 auto;

  padding: 10px 0 40px;

}

/* Header */

.zst-kierunki-header {

  text-align: center;

  padding: 10px 0 32px;

}

.zst-kierunki-title {

  font-size: 2.4rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  letter-spacing: -0.02em;

  line-height: 1.25 !important;

  margin-bottom: 14px !important;

}

.zst-kierunki-title span {

  background: linear-gradient(135deg, #0284c7 0%, #2563eb 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}

.zst-kierunki-lead {

  max-width: 780px;

  margin: 0 auto 32px;

  font-size: 1.05rem;

  color: #475569;

  line-height: 1.6;

}

/* 4 Key Pillars */

.zst-kierunki-stats {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;

  margin-bottom: 36px;

}

.zst-stat-pill {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 16px;

  padding: 16px 18px;

  display: flex;

  align-items: center;

  gap: 14px;

  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);

  transition: transform 0.2s ease, box-shadow 0.2s ease;

}

.zst-stat-pill:hover {

  transform: translateY(-2px);

  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);

}

.zst-stat-icon {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #eff6ff;

  color: #2563eb;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.25rem;

  flex-shrink: 0;

}

.zst-stat-text strong {

  display: block;

  font-size: 1.02rem;

  color: #0f172a;

  line-height: 1.2;

}

.zst-stat-text span {

  font-size: 0.8rem;

  color: #64748b;

}

/* Top Cyber Banner Tile */

.zst-cyber-tile {

  margin-bottom: 44px;

}

.zst-cyber-link {

  position: relative;

  border-radius: 22px;

  overflow: hidden;

  box-shadow: 0 16px 36px rgba(10, 25, 47, 0.22);

  border: 1px solid rgba(56, 189, 248, 0.35);

  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);

  cursor: pointer;

  display: block;

  text-decoration: none !important;

  background: #07152b;

}

.zst-cyber-link:hover {

  transform: translateY(-4px);

  box-shadow: 0 22px 46px rgba(2, 132, 199, 0.32);

}

.zst-cyber-img {

  width: 100%;

  height: auto;

  display: block;

  object-fit: cover;

}

.zst-cyber-bar {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  padding: 16px 28px;

  background: linear-gradient(180deg, rgba(7, 21, 43, 0) 0%, rgba(7, 21, 43, 0.85) 50%, rgba(7, 21, 43, 0.98) 100%);

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

}

.zst-cyber-badge {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(220, 38, 38, 0.95);

  color: #ffffff;

  font-size: 0.76rem;

  font-weight: 800;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  padding: 6px 16px;

  border-radius: 999px;

  box-shadow: 0 2px 10px rgba(220, 38, 38, 0.5);

}

.zst-cyber-btn {

  background: #0284c7;

  color: #ffffff !important;

  font-size: 0.9rem;

  font-weight: 700;

  padding: 11px 24px;

  border-radius: 12px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 4px 16px rgba(2, 132, 199, 0.5);

  border: 1px solid rgba(255, 255, 255, 0.25);

  transition: background 0.2s ease;

}

.zst-cyber-link:hover .zst-cyber-btn {

  background: #0369a1;

}

/* Section Title */

.zst-kierunki-section-title {

  font-size: 1.75rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin-bottom: 24px !important;

  display: flex;

  align-items: center;

  gap: 12px;

}

.zst-kierunki-section-title i {

  color: #0284c7;

  font-size: 1.45rem;

}

/* Cards Grid */

.zst-cards-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 32px;

}

.zst-prof-card {

  background: #ffffff;

  border-radius: var(--card-radius);

  border: 1px solid #e2e8f0;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);

  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.28s ease;

  position: relative;

}

.zst-prof-card:hover {

  transform: translateY(-6px);

  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.15);

}

.card-informatyk { --b-color: var(--c-it); --b-dark: var(--c-it-dark); --b-bg: var(--c-it-bg); --b-border: var(--c-it-border); }

.card-mechatronik { --b-color: var(--c-mecha); --b-dark: var(--c-mecha-dark); --b-bg: var(--c-mecha-bg); --b-border: var(--c-mecha-border); }

.card-spedytor { --b-color: var(--c-sped); --b-dark: var(--c-sped-dark); --b-bg: var(--c-sped-bg); --b-border: var(--c-sped-border); }

.card-elektryk { --b-color: var(--c-elek); --b-dark: var(--c-elek-dark); --b-bg: var(--c-elek-bg); --b-border: var(--c-elek-border); }

.card-pojazdy { --b-color: var(--c-auto); --b-dark: var(--c-auto-dark); --b-bg: var(--c-auto-bg); --b-border: var(--c-auto-border); }

.card-moda { --b-color: var(--c-moda); --b-dark: var(--c-moda-dark); --b-bg: var(--c-moda-bg); --b-border: var(--c-moda-border); }

.zst-prof-card:hover {

  border-color: var(--b-border);

}

/* Card Hero */

.zst-card-hero {

  position: relative;

  height: 155px;

  overflow: hidden;

  background: #0f172a;

}

.zst-card-hero-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: left center;

  transition: transform 0.5s ease;

}

.zst-prof-card:hover .zst-card-hero-img {

  transform: scale(1.04);

}

/* Card Meta Pills */

.zst-card-meta-pills {

  display: flex;

  align-items: center;

  gap: 8px;

  margin-bottom: 14px;

}

.zst-pill-time {

  font-size: 0.74rem;

  font-weight: 700;

  color: #475569;

  background: #f1f5f9;

  border: 1px solid #e2e8f0;

  padding: 3px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}

.zst-pill-branch {

  font-size: 0.74rem;

  font-weight: 700;

  color: var(--b-dark);

  background: var(--b-bg);

  border: 1px solid var(--b-border);

  padding: 3px 10px;

  border-radius: 999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}

/* Card Body */

.zst-card-body {

  padding: 24px;

  display: flex;

  flex-direction: column;

  flex: 1;

}

.zst-card-body-title {

  font-size: 1.45rem !important;

  font-weight: 800 !important;

  color: #0a192f !important;

  margin: 0 0 6px 0 !important;

  display: flex;

  align-items: center;

  gap: 10px;

  line-height: 1.25 !important;

}

.zst-card-body-title i {

  color: var(--b-color);

  font-size: 1.25rem;

}

.zst-card-tagline {

  font-size: 0.88rem;

  font-weight: 600;

  color: var(--b-dark);

  margin-bottom: 18px;

  display: flex;

  align-items: center;

  gap: 8px;

}

/* CKE Qual box */

.zst-qual-box {

  background: var(--b-bg);

  border: 1px solid var(--b-border);

  border-radius: 12px;

  padding: 12px 16px;

  margin-bottom: 20px;

}

.zst-qual-label {

  font-size: 0.72rem;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.08em;

  color: var(--b-dark);

  margin-bottom: 8px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-qual-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 6px;

  padding: 0;

  margin: 0;

}

.zst-qual-item {

  font-size: 0.82rem;

  color: #334155;

  display: flex;

  align-items: flex-start;

  gap: 8px;

  line-height: 1.35;

}

.zst-qual-code {

  background: #ffffff;

  border: 1px solid var(--b-border);

  color: var(--b-dark);

  font-weight: 800;

  font-size: 0.74rem;

  padding: 1px 7px;

  border-radius: 6px;

  flex-shrink: 0;

}

/* Skills */

.zst-skills-title {

  font-size: 0.82rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #0f172a;

  margin-bottom: 10px;

  display: flex;

  align-items: center;

  gap: 6px;

}

.zst-skills-list {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 9px;

  margin-bottom: 22px;

  padding: 0;

}

.zst-skill-point {

  display: flex;

  align-items: flex-start;

  gap: 10px;

  font-size: 0.87rem;

  color: #334155;

  line-height: 1.4;

}

.zst-skill-point i {

  color: var(--b-color);

  font-size: 0.85rem;

  margin-top: 3px;

  flex-shrink: 0;

}

/* Career tags */

.zst-career-wrap {

  margin-top: auto;

  padding-top: 16px;

  border-top: 1px solid #e2e8f0;

  margin-bottom: 20px;

}

.zst-career-label {

  font-size: 0.72rem;

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: #64748b;

  margin-bottom: 8px;

}

.zst-career-tags {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

}

.zst-career-tag {

  background: #f1f5f9;

  color: #334155;

  font-size: 0.76rem;

  font-weight: 600;

  padding: 4px 10px;

  border-radius: 6px;

  border: 1px solid #e2e8f0;

}

/* Card Footer Actions */

.zst-card-footer {

  display: flex;

  gap: 10px;

}

.zst-btn-main {

  flex: 1;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: var(--b-color);

  color: #ffffff !important;

  text-decoration: none !important;

  font-weight: 700;

  font-size: 0.9rem;

  padding: 12px 18px;

  border-radius: 12px;

  transition: all 0.2s ease;

  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);

  border: none;

  cursor: pointer;

}

.zst-btn-main:hover {

  background: var(--b-dark);

  transform: translateY(-2px);

  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.15);

}

.zst-btn-flyer {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: #f1f5f9;

  border: 1px solid #e2e8f0;

  color: #334155 !important;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1rem;

  cursor: pointer;

  transition: all 0.2s ease;

  text-decoration: none !important;

}

.zst-btn-flyer:hover {

  background: #ffffff;

  color: var(--b-color) !important;

  border-color: var(--b-color);

  transform: translateY(-2px);

}

/* Recruitment banner */

.zst-recruitment-banner {

  background: linear-gradient(135deg, #1e3a8a 0%, #0f172a 100%);

  border-radius: 20px;

  padding: 34px 40px;

  color: #ffffff;

  margin-top: 48px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 24px;

  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.12);

}

.zst-recruitment-text h3 {

  font-size: 1.55rem !important;

  font-weight: 800 !important;

  color: #ffffff !important;

  margin-bottom: 6px !important;

}

.zst-recruitment-text p {

  color: #cbd5e1;

  font-size: 0.95rem;

  margin: 0;

}

.zst-recruitment-actions {

  display: flex;

  gap: 12px;

  flex-shrink: 0;

}

.zst-btn-recruit-primary {

  background: #f59e0b;

  color: #0f172a !important;

  font-weight: 800;

  padding: 12px 24px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 6px 16px rgba(245, 158, 11, 0.4);

  transition: all 0.2s ease;

}

.zst-btn-recruit-primary:hover {

  background: #d97706;

  transform: translateY(-2px);

}

.zst-btn-recruit-sec {

  background: rgba(255, 255, 255, 0.1);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.2);

  color: #ffffff !important;

  font-weight: 700;

  padding: 12px 20px;

  border-radius: 12px;

  text-decoration: none !important;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  transition: all 0.2s ease;

}

.zst-btn-recruit-sec:hover {

  background: rgba(255, 255, 255, 0.2);

}

/* Responsive */

@media (max-width: 992px) {

  .zst-cards-grid {

    grid-template-columns: 1fr;

    gap: 24px;

  }

  .zst-kierunki-stats {

    grid-template-columns: repeat(2, 1fr);

  }

  .zst-recruitment-banner {

    flex-direction: column;

    align-items: flex-start;

  }

}

@media (max-width: 640px) {

  .zst-kierunki-title {

    font-size: 1.8rem !important;

  }

  .zst-kierunki-stats {

    grid-template-columns: 1fr;

  }

  .zst-cyber-bar {

    flex-direction: column;

    align-items: flex-start;

    padding: 14px;

  }

  .zst-cyber-btn {

    width: 100%;

    justify-content: center;

  }

  .zst-card-hero {

    height: 130px;

  }

}

/* ==========================================================================
   EGZAMINY - TAB 3 PRAKTYKI: OPCJA 2 (FEATURED REGULAMIN + 3 KARTY)
   ========================================================================== */
.zst-praktyki-opcja2-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  margin-bottom: 24px !important;
}
.zst-featured-reg-banner {
  background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 100%) !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 16px !important;
  padding: 22px 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.06) !important;
  transition: all 0.25s ease !important;
}
.zst-featured-reg-banner:hover {
  border-color: #60a5fa !important;
  box-shadow: 0 8px 24px rgba(37, 99, 235, 0.12) !important;
}
.zst-featured-reg-left {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}
.zst-featured-reg-icon {
  width: 52px !important;
  height: 52px !important;
  border-radius: 12px !important;
  background: #dbeafe !important;
  color: #1d4ed8 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.4rem !important;
  flex-shrink: 0 !important;
}
.zst-featured-reg-text h4 {
  margin: 0 0 4px 0 !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}
.zst-featured-reg-text p {
  margin: 0 !important;
  font-size: 0.88rem !important;
  color: #475569 !important;
  line-height: 1.5 !important;
}
.zst-featured-reg-btn {
  background: #2563eb !important;
  color: #ffffff !important;
  padding: 12px 24px !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25) !important;
  transition: all 0.2s ease !important;
}
.zst-featured-reg-btn:hover {
  background: #1d4ed8 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(37, 99, 235, 0.35) !important;
}
.zst-praktyki-3col-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 18px !important;
}
@media (max-width: 900px) {
  .zst-featured-reg-banner {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .zst-featured-reg-btn {
    width: 100% !important;
    justify-content: center !important;
  }
  .zst-praktyki-3col-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   BIURO KARIERY - MODERN JOB PORTAL STYLES
   ========================================================================== */
.zst-job-portal-wrap {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 30px 20px 60px !important;
}
.zst-portal-header {
  background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%) !important;
  border-radius: 20px !important;
  padding: 36px 40px !important;
  color: #ffffff !important;
  box-shadow: 0 12px 32px rgba(10, 25, 47, 0.15) !important;
  margin-bottom: 30px !important;
  position: relative !important;
  overflow: hidden !important;
}
.zst-portal-header::after {
  content: '' !important;
  position: absolute !important;
  right: -40px !important;
  bottom: -40px !important;
  width: 260px !important;
  height: 260px !important;
  background: radial-gradient(circle, rgba(56, 189, 248, 0.18) 0%, rgba(255, 255, 255, 0) 70%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}
.zst-portal-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  color: #38bdf8 !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  padding: 5px 14px !important;
  border-radius: 999px !important;
  margin-bottom: 16px !important;
  letter-spacing: 0.5px !important;
}
.zst-portal-title {
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  margin: 0 0 12px 0 !important;
  letter-spacing: -0.5px !important;
  line-height: 1.2 !important;
}
.zst-portal-title span {
  color: #38bdf8 !important;
}
.zst-portal-lead {
  font-size: 1.05rem !important;
  color: #cbd5e1 !important;
  max-width: 820px !important;
  line-height: 1.55 !important;
  margin: 0 0 24px 0 !important;
}
.zst-portal-actions-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding-top: 20px !important;
}
.zst-portal-stats {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
  flex-wrap: wrap !important;
}
.zst-stat-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 0.88rem !important;
  color: #e2e8f0 !important;
}
.zst-stat-item i {
  color: #38bdf8 !important;
}
.zst-employer-btn {
  background: #f59e0b !important;
  color: #0f172a !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
  padding: 10px 20px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.2s ease !important;
}
.zst-employer-btn:hover {
  background: #fbbf24 !important;
  color: #0f172a !important;
  transform: translateY(-2px) !important;
}

.zst-filter-bar {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 16px 20px !important;
  margin-bottom: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
}
.zst-filter-pills {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
.zst-filter-pill {
  padding: 7px 15px !important;
  border-radius: 999px !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: #475569 !important;
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: all 0.2s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.zst-filter-pill:hover, .zst-filter-pill.active {
  background: #0284c7 !important;
  border-color: #0284c7 !important;
  color: #ffffff !important;
}
.zst-filter-pill.active i {
  color: #ffffff !important;
}
.zst-offers-counter {
  font-size: 0.84rem !important;
  color: #64748b !important;
  font-weight: 600 !important;
}
.zst-jobs-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 22px !important;
}
.zst-job-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.05) !important;
  transition: all 0.24s ease !important;
  position: relative !important;
}
.zst-job-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.1) !important;
  border-color: #93c5fd !important;
}
.zst-job-card-top {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-bottom: 14px !important;
}
.zst-company-meta {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.zst-company-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  color: #0284c7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.25rem !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}
.zst-company-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.zst-company-info strong {
  display: block !important;
  font-size: 0.96rem !important;
  color: #0f172a !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
}
.zst-company-info span {
  font-size: 0.78rem !important;
  color: #64748b !important;
}
.zst-job-type-pill {
  background: #ecfdf5 !important;
  color: #059669 !important;
  border: 1px solid #a7f3d0 !important;
  font-size: 0.74rem !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
}
.zst-job-type-pill.internship {
  background: #fef3c7 !important;
  color: #d97706 !important;
  border-color: #fde68a !important;
}
.zst-job-title {
  font-size: 1.22rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.35 !important;
  margin: 0 0 10px 0 !important;
}
.zst-job-tags-row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 14px !important;
}
.zst-job-tag {
  font-size: 0.76rem !important;
  color: #475569 !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  padding: 3px 9px !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}
.zst-job-tag i {
  color: #0284c7 !important;
}
.zst-job-excerpt {
  font-size: 0.88rem !important;
  color: #475569 !important;
  line-height: 1.5 !important;
  margin-bottom: 20px !important;
  flex-grow: 1 !important;
}
.zst-job-card-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 16px !important;
}
.zst-job-date {
  font-size: 0.78rem !important;
  color: #94a3b8 !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}
.zst-job-btn-view {
  background: #0284c7 !important;
  color: #ffffff !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  padding: 9px 18px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  transition: all 0.2s ease !important;
}
.zst-job-btn-view:hover {
  background: #0369a1 !important;
  color: #ffffff !important;
}
@media (max-width: 900px) {
  .zst-jobs-grid {
    grid-template-columns: 1fr !important;
  }
  .zst-portal-title {
    font-size: 1.7rem !important;
  }
  .zst-portal-header {
    padding: 24px 20px !important;
  }
}

/* Compact Biuro Karier Job Portal */
.zst-search-filter-hub {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 16px 20px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}
.zst-search-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.zst-search-box {
  position: relative !important;
  flex: 1 !important;
}
.zst-search-box i.fa-search {
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #94a3b8 !important;
  font-size: 0.95rem !important;
  pointer-events: none !important;
}
.zst-search-input {
  width: 100% !important;
  padding: 11px 40px !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 10px !important;
  font-size: 0.92rem !important;
  color: #1e293b !important;
  outline: none !important;
  background: #f8fafc !important;
  box-sizing: border-box !important;
  transition: all 0.2s !important;
}
.zst-search-input:focus {
  border-color: #0284c7 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15) !important;
}
.zst-search-clear {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: none !important;
  border: none !important;
  color: #94a3b8 !important;
  cursor: pointer !important;
  font-size: 0.9rem !important;
  display: none !important;
  padding: 4px !important;
}
.zst-search-clear:hover { color: #475569 !important; }

.zst-filter-pills-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}
.zst-filter-pills {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
.zst-filter-pill {
  background: #f1f5f9 !important;
  color: #475569 !important;
  border: 1px solid #e2e8f0 !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  transition: all 0.18s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.zst-filter-pill:hover {
  background: #e2e8f0 !important;
  color: #0f172a !important;
}
.zst-filter-pill.active {
  background: #0284c7 !important;
  color: #ffffff !important;
  border-color: #0284c7 !important;
  box-shadow: 0 2px 8px rgba(2, 132, 199, 0.3) !important;
}
.zst-offers-counter {
  font-size: 0.84rem !important;
  color: #475569 !important;
  font-weight: 500 !important;
}
.zst-offers-counter strong {
  color: #0369a1 !important;
  font-weight: 700 !important;
}

/* 3 Columns Compact Grid */
.zst-jobs-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
}
.zst-job-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
  transition: all 0.2s ease !important;
  min-height: 220px !important;
}
.zst-job-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
  border-color: #93c5fd !important;
}
.zst-card-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}
.zst-company-badge-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
}
.zst-comp-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 9px !important;
  background: #f0f9ff !important;
  border: 1px solid #bae6fd !important;
  color: #0284c7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.95rem !important;
  flex-shrink: 0 !important;
}
.zst-comp-meta {
  min-width: 0 !important;
}
.zst-comp-name {
  font-size: 0.8rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
}
.zst-comp-loc {
  font-size: 0.72rem !important;
  color: #94a3b8 !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}
.zst-type-pill {
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  padding: 3px 8px !important;
  border-radius: 0 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.zst-type-work {
  background: #ecfdf5 !important;
  color: #059669 !important;
  border: 1px solid #a7f3d0 !important;
}
.zst-type-intern {
  background: #eff6ff !important;
  color: #2563eb !important;
  border: 1px solid #bfdbfe !important;
}
.zst-job-title {
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  line-height: 1.35 !important;
  margin: 0 0 8px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
.zst-job-snippet {
  font-size: 0.82rem !important;
  color: #475569 !important;
  line-height: 1.45 !important;
  margin: 0 0 14px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  flex-grow: 1 !important;
}
.zst-card-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 10px !important;
  margin-top: auto !important;
}
.zst-job-date {
  font-size: 0.74rem !important;
  color: #94a3b8 !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}
.zst-view-link {
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  color: #0284c7 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 5px 10px !important;
  border-radius: 0 !important;
  background: #f0f9ff !important;
  border: 1px solid #e0f2fe !important;
  transition: all 0.18s !important;
}
.zst-view-link:hover {
  background: #0284c7 !important;
  color: #ffffff !important;
  border-color: #0284c7 !important;
}
.zst-empty-jobs {
  grid-column: 1 / -1 !important;
  text-align: center !important;
  padding: 40px 20px !important;
  background: #ffffff !important;
  border: 1px dashed #e2e8f0 !important;
  border-radius: 14px !important;
  display: none;
}
.zst-empty-jobs i {
  font-size: 2.5rem !important;
  color: #94a3b8 !important;
  margin-bottom: 12px !important;
  display: block !important;
}
.zst-empty-jobs h3 {
  margin: 0 0 6px 0 !important;
  font-size: 1.1rem !important;
  color: #0f172a !important;
}
.zst-empty-jobs p {
  margin: 0 0 14px 0 !important;
  font-size: 0.85rem !important;
  color: #64748b !important;
}
.zst-btn-reset-filters {
  background: #0284c7 !important;
  color: white !important;
  border: none !important;
  padding: 8px 18px !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
}

@media (max-width: 1024px) {
  .zst-jobs-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 680px) {
  .zst-jobs-grid { grid-template-columns: 1fr !important; }
  .zst-portal-header { padding: 22px 18px !important; }
  .zst-portal-title { font-size: 1.6rem !important; }
}

.zst-job-card.zst-hidden {
  display: none !important;
}

/* WYMAGANE DOKUMENTY */

  :root {
    --primary: #0284c7;
    --primary-dark: #0369a1;
    --navy-950: #071324;
    --navy-900: #0a192f;
    --navy-800: #0f2444;
    --slate-50: #f8fafc;
    --slate-100: #f1f5f9;
    --slate-200: #e2e8f0;
    --slate-300: #cbd5e1;
    --slate-500: #64748b;
    --slate-600: #475569;
    --slate-700: #334155;
    --slate-900: #0f172a;
    --amber-500: #f59e0b;
    --amber-600: #d97706;
    --emerald-600: #059669;
  }

  .zst-docs-page-wrap {
    max-width: 1200px;
    margin: 0 auto;
  }

  /* Breadcrumb bar */
  .zst-crumbs-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.86rem;
    color: var(--slate-500);
    margin-bottom: 20px;
  }
  .zst-crumbs-bar a {
    color: var(--primary);
    text-decoration: none;
    font-weight: 500;
  }
  .zst-crumbs-bar a:hover {
    text-decoration: underline;
  }

  /* Hero Banner */
  .zst-docs-hero {
    background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%);
    border-radius: 20px;
    padding: 38px 40px;
    color: #ffffff;
    box-shadow: 0 12px 32px rgba(10, 25, 47, 0.15);
    margin-bottom: 32px;
    position: relative;
    overflow: hidden;
  }
  .zst-docs-hero::after {
    content: '';
    position: absolute;
    right: -40px;
    bottom: -40px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(56, 189, 248, 0.18) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
  }
  .zst-docs-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: #38bdf8;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 999px;
    margin-bottom: 16px;
    letter-spacing: 0.5px;
  }
  .zst-docs-hero-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 12px 0;
    letter-spacing: -0.5px;
    line-height: 1.25;
  }
  .zst-docs-hero-title span {
    color: #38bdf8;
  }
  .zst-docs-hero-lead {
    font-size: 1.05rem;
    color: #cbd5e1;
    max-width: 820px;
    line-height: 1.6;
    margin: 0 0 24px 0;
  }
  .zst-docs-hero-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 20px;
  }
  .zst-btn-pcss {
    background: #0284c7;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 11px 22px;
    border-radius: 10px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;
    box-shadow: 0 4px 14px rgba(2, 132, 199, 0.35);
  }
  .zst-btn-pcss:hover {
    background: #0369a1;
    transform: translateY(-2px);
  }
  .zst-btn-info-quick {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #ffffff;
    font-weight: 600;
    font-size: 0.88rem;
    padding: 11px 20px;
    border-radius: 10px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;
  }
  .zst-btn-info-quick:hover {
    background: rgba(255, 255, 255, 0.2);
  }

  /* Two column layout: Main docs grid + Sidebar with Secretary & Timeline */
  .zst-docs-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 28px;
    align-items: start;
  }

  /* Section Title */
  .zst-sec-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .zst-sec-heading h2 {
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .zst-sec-heading h2 i {
    color: var(--primary);
  }
  .zst-sec-count {
    background: #e0f2fe;
    color: var(--primary-dark);
    font-size: 0.8rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 999px;
  }

  /* Document Cards List */
  .zst-docs-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .zst-doc-item {
    background: #ffffff;
    border: 1px solid var(--slate-200);
    border-radius: 16px;
    padding: 22px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
    transition: all 0.22s ease;
    position: relative;
  }
  .zst-doc-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    border-color: #93c5fd;
  }

  .zst-doc-icon-box {
    width: 50px;
    height: 50px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    flex-shrink: 0;
  }
  .icon-blue { background: #e0f2fe; color: #0284c7; }
  .icon-amber { background: #fef3c7; color: #d97706; }
  .icon-green { background: #dcfce7; color: #16a34a; }
  .icon-purple { background: #f3e8ff; color: #9333ea; }
  .icon-rose { background: #ffe4e6; color: #e11d48; }

  .zst-doc-
  .zst-doc-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px;
    flex-wrap: wrap;
  }
  .zst-doc-title {
    font-size: 1.08rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0;
  }
  .zst-doc-badge {
    font-size: 0.74rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 999px;
    letter-spacing: 0.3px;
  }
  .badge-mandatory {
    background: #fee2e2;
    color: #dc2626;
    border: 1px solid #fecaca;
  }
  .badge-step2 {
    background: #e0f2fe;
    color: #0284c7;
    border: 1px solid #bae6fd;
  }
  .badge-health {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
  }
  .badge-optional {
    background: #f1f5f9;
    color: #64748b;
    border: 1px solid #e2e8f0;
  }

  .zst-doc-desc {
    font-size: 0.88rem;
    color: var(--slate-600);
    line-height: 1.5;
    margin: 0 0 10px 0;
  }
  .zst-doc-tip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.78rem;
    color: #475569;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 4px 10px;
    border-radius: 8px;
    font-weight: 500;
  }
  .zst-doc-tip i {
    color: var(--amber-500);
  }

  /* Sidebar Cards */
  .zst-sidebar {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .zst-side-card {
    background: #ffffff;
    border: 1px solid var(--slate-200);
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
  }
  .zst-side-card-title {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .zst-side-card-title i {
    color: var(--primary);
  }

  /* Secretariat Info List */
  .zst-sec-info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  .zst-sec-info-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.86rem;
    color: var(--slate-700);
    line-height: 1.45;
  }
  .zst-sec-info-item i {
    color: var(--primary);
    font-size: 1rem;
    margin-top: 2px;
    flex-shrink: 0;
  }
  .zst-sec-info-item strong {
    color: var(--slate-900);
    display: block;
    margin-bottom: 2px;
  }

  /* Checklist Tips Card */
  .zst-callout-card {
    background: linear-gradient(135deg, #eff6ff 0%, #f0fdf4 100%);
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    padding: 22px;
  }
  .zst-callout-card h4 {
    margin: 0 0 10px 0;
    font-size: 0.98rem;
    font-weight: 800;
    color: #1e3a8a;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .zst-callout-card p {
    margin: 0 0 14px 0;
    font-size: 0.84rem;
    color: #334155;
    line-height: 1.5;
  }
  .zst-quick-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .zst-quick-links-list li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.82rem;
    font-weight: 700;
    color: #0369a1;
    text-decoration: none;
    background: #ffffff;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid #cbd5e1;
    transition: all 0.2s;
  }
  .zst-quick-links-list li a:hover {
    background: #0284c7;
    color: #ffffff;
    border-color: #0284c7;
  }

  /* Responsive */
  @media (max-width: 960px) {
    .zst-docs-layout {
      grid-template-columns: 1fr;
    }
    .zst-docs-hero {
      padding: 26px 20px;
    }
    .zst-docs-hero-title {
      font-size: 1.7rem;
    }
  }

/* KONTAKT I DOJAZD */

  :root {
    --primary: #0284c7;
    --primary-dark: #0369a1;
    --navy-950: #071324;
    --navy-900: #0a192f;
    --navy-800: #0f2444;
    --slate-50: #f8fafc;
    --slate-100: #f1f5f9;
    --slate-200: #e2e8f0;
    --slate-300: #cbd5e1;
    --slate-500: #64748b;
    --slate-600: #475569;
    --slate-700: #334155;
    --slate-900: #0f172a;
    --amber-500: #f59e0b;
    --amber-600: #d97706;
  }

  .zst-kontakt-wrap {
    max-width: 1240px;
    margin: 0 auto;
  }

  /* Breadcrumbs */
  .zst-crumbs-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.86rem;
    color: var(--slate-500);
    margin-bottom: 20px;
  }
  .zst-crumbs-bar a {
    color: var(--primary);
    text-decoration: none;
    font-weight: 500;
  }
  .zst-crumbs-bar a:hover {
    text-decoration: underline;
  }

  /* Hero Header */
  .zst-kontakt-hero {
    background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%);
    border-radius: 20px;
    padding: 38px 40px;
    color: #ffffff;
    box-shadow: 0 12px 32px rgba(10, 25, 47, 0.15);
    margin-bottom: 32px;
    position: relative;
    overflow: hidden;
  }
  .zst-kontakt-hero::after {
    content: '';
    position: absolute;
    right: -40px;
    bottom: -40px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(56, 189, 248, 0.18) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
  }
  .zst-kontakt-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: #38bdf8;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 999px;
    margin-bottom: 16px;
    letter-spacing: 0.5px;
  }
  .zst-kontakt-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 12px 0;
    letter-spacing: -0.5px;
    line-height: 1.2;
  }
  .zst-kontakt-title span {
    color: #38bdf8;
  }
  .zst-kontakt-lead {
    font-size: 1.05rem;
    color: #cbd5e1;
    max-width: 820px;
    line-height: 1.55;
    margin: 0 0 24px 0;
  }
  .zst-kontakt-hero-pills {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 20px;
  }
  .hero-pill-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.88rem;
    color: #e2e8f0;
  }
  .hero-pill-item i {
    color: #38bdf8;
  }

  /* Quick Contact Cards Grid (3 cards) */
  .zst-contact-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 32px;
  }
  .zst-contact-card {
    background: #ffffff;
    border: 1px solid var(--slate-200);
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.22s ease;
  }
  .zst-contact-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
    border-color: #93c5fd;
  }
  .zst-card-top {
    margin-bottom: 18px;
  }
  .zst-card-icon-wrap {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    margin-bottom: 14px;
  }
  .icon-blue { background: #e0f2fe; color: #0284c7; }
  .icon-amber { background: #fef3c7; color: #d97706; }
  .icon-green { background: #dcfce7; color: #16a34a; }

  .zst-card-title {
    font-size: 1.12rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0 0 6px 0;
  }
  .zst-card-subtitle {
    font-size: 0.82rem;
    color: var(--slate-500);
    margin-bottom: 14px;
    display: block;
  }
  .zst-card-info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .zst-card-info-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.88rem;
    color: var(--slate-700);
  }
  .zst-card-info-item i {
    width: 16px;
    color: var(--primary);
    text-align: center;
    flex-shrink: 0;
  }
  .zst-card-info-item a {
    color: var(--slate-900);
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s;
  }
  .zst-card-info-item a:hover {
    color: var(--primary);
  }
  .zst-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 10px;
    font-size: 0.84rem;
    font-weight: 700;
    text-decoration: none;
    background: #f1f5f9;
    color: var(--slate-800);
    border: 1px solid var(--slate-200);
    transition: all 0.2s;
    margin-top: 14px;
  }
  .zst-card-btn:hover {
    background: #0284c7;
    color: #ffffff;
    border-color: #0284c7;
  }

  /* Two Column Section: Formal info + Map */
  .zst-info-map-section {
    display: grid;
    grid-template-columns: 1.1fr 1.3fr;
    gap: 28px;
    align-items: stretch;
  }

  /* Left: Formal info card */
  .zst-formal-card {
    background: #ffffff;
    border: 1px solid var(--slate-200);
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .zst-formal-title {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .zst-formal-title i {
    color: var(--primary);
  }

  .zst-school-brand-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 16px 18px;
    margin-bottom: 20px;
  }
  .zst-brand-name {
    font-size: 1rem;
    font-weight: 800;
    color: var(--slate-900);
    line-height: 1.4;
  }
  .zst-brand-patron {
    font-size: 0.85rem;
    color: var(--slate-600);
    margin-top: 4px;
    font-style: italic;
  }

  .zst-formal-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 20px;
  }
  .zst-meta-box {
    background: #f1f5f9;
    border-radius: 10px;
    padding: 10px 14px;
  }
  .zst-meta-label {
    font-size: 0.72rem;
    color: var(--slate-500);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.4px;
    display: block;
    margin-bottom: 2px;
  }
  .zst-meta-val {
    font-size: 0.94rem;
    font-weight: 800;
    color: var(--slate-900);
  }

  .zst-formal-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.88rem;
    color: var(--slate-700);
    margin-bottom: 12px;
    line-height: 1.45;
  }
  .zst-formal-item i {
    color: var(--primary);
    font-size: 1rem;
    margin-top: 2px;
    flex-shrink: 0;
  }
  .zst-formal-item strong {
    color: var(--slate-900);
  }

  /* Right: Map Box */
  .zst-map-container {
    background: #ffffff;
    border: 1px solid var(--slate-200);
    border-radius: 20px;
    padding: 16px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .zst-map-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    padding: 6px 8px 0;
  }
  .zst-map-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--slate-900);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .zst-map-title i {
    color: #ef4444;
  }
  .zst-map-badge {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
    font-size: 0.74rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 999px;
  }

  .zst-map-frame-wrap {
    width: 100%;
    height: 380px;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    border: 1px solid #e2e8f0;
  }
  .zst-map-frame-wrap iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
  }

  .zst-map-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 14px;
    padding: 0 6px;
  }
  .zst-map-hint {
    font-size: 0.82rem;
    color: var(--slate-500);
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .zst-map-hint i {
    color: var(--primary);
  }
  .zst-btn-route {
    background: #0284c7;
    color: #ffffff;
    font-size: 0.86rem;
    font-weight: 700;
    padding: 9px 18px;
    border-radius: 10px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;
    box-shadow: 0 4px 12px rgba(2, 132, 199, 0.25);
  }
  .zst-btn-route:hover {
    background: #0369a1;
    transform: translateY(-2px);
  }

  /* Access & Accessibility Notice */
  .zst-accessibility-strip {
    background: linear-gradient(135deg, #eff6ff 0%, #f0fdf4 100%);
    border: 1px solid #bfdbfe;
    border-radius: 16px;
    padding: 20px 24px;
    margin-top: 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
  }
  .zst-acc-left {
    display: flex;
    align-items: center;
    gap: 14px;
  }
  .zst-acc-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #dbeafe;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
  }
  .zst-acc-text strong {
    display: block;
    font-size: 0.94rem;
    color: #0f172a;
    margin-bottom: 2px;
  }
  .zst-acc-text span {
    font-size: 0.82rem;
    color: #475569;
  }
  .zst-acc-btn {
    background: #ffffff;
    color: #0369a1;
    border: 1px solid #93c5fd;
    font-size: 0.84rem;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.2s;
  }
  .zst-acc-btn:hover {
    background: #0284c7;
    color: #ffffff;
    border-color: #0284c7;
  }

  /* Responsive */
  @media (max-width: 960px) {
    .zst-contact-cards-grid {
      grid-template-columns: 1fr;
    }
    .zst-info-map-section {
      grid-template-columns: 1fr;
    }
    .zst-kontakt-hero {
      padding: 26px 20px;
    }
    .zst-kontakt-title {
      font-size: 1.7rem;
    }
    .zst-map-frame-wrap {
      height: 300px;
    }
  }

/* ==========================================================================
   BIURO KARIER - REAL COMPANY LOGO & MONOGRAM STYLES
   ========================================================================== */
.zst-comp-icon {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.04) !important;
    padding: 3px !important;
}
.zst-comp-logo-img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}
.zst-comp-monogram {
    font-size: 11px !important;
    font-weight: 800 !important;
    color: #0284c7 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
}

/* ==========================================================================
   DEDYKOWANY SZABLON POJEDYNCZEJ OFERTY PRACY (single-biuro-kariery.php)
   ========================================================================== */
.zst-single-job-page-wrap {
    background: #f8fafc;
    min-height: 80vh;
    padding: 30px 20px 70px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: #0f172a;
}
.zst-single-job-container {
    max-width: 1240px;
    margin: 0 auto;
}
.zst-job-top-nav-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 24px;
    background: #ffffff;
    padding: 14px 22px;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.zst-job-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.86rem;
    color: #64748b;
    flex-wrap: wrap;
}
.zst-job-breadcrumbs a {
    color: #0284c7;
    text-decoration: none;
    font-weight: 500;
}
.zst-job-breadcrumbs a:hover {
    text-decoration: underline;
}
.zst-crumb-sep {
    color: #cbd5e1;
}
.zst-crumb-current {
    color: #0f172a;
    font-weight: 600;
}
.zst-btn-back-to-portal {
    background: #0a192f;
    color: #ffffff !important;
    font-size: 0.86rem;
    font-weight: 700;
    padding: 9px 18px;
    border-radius: 8px;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
    box-shadow: 0 3px 8px rgba(10, 25, 47, 0.15);
}
.zst-btn-back-to-portal:hover {
    background: #0284c7;
    transform: translateX(-3px);
}

.zst-job-main-layout {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 28px;
    align-items: start;
}
@media (max-width: 991px) {
    .zst-job-main-layout {
        grid-template-columns: 1fr;
    }
}

.zst-job-content-card {
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.04);
    overflow: hidden;
}
.zst-job-card-hero {
    background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%);
    padding: 32px 36px;
    color: #ffffff;
    position: relative;
}
.zst-job-hero-top {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}
.zst-job-comp-logo-large {
    width: 68px;
    height: 68px;
    min-width: 68px;
    border-radius: 14px;
    background: #ffffff;
    border: 2px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 4px 14px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 6px;
}
.zst-job-comp-logo-large img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}
.zst-job-comp-logo-large .zst-logo-monogram {
    font-size: 16px;
    font-weight: 800;
    color: #0284c7;
    letter-spacing: 1px;
}
.zst-job-hero-meta {
    flex: 1;
}
.zst-job-hero-badges {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.zst-badge-type {
    font-size: 0.76rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.zst-badge-job {
    background: #0284c7;
    color: #ffffff;
}
.zst-badge-intern {
    background: #059669;
    color: #ffffff;
}
.zst-badge-status {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #38bdf8;
    font-size: 0.76rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.zst-badge-date {
    color: #cbd5e1;
    font-size: 0.78rem;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.zst-job-hero-title {
    font-size: 1.7rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 10px 0;
    line-height: 1.3;
}
.zst-job-hero-company {
    font-size: 0.95rem;
    color: #94a3b8;
}
.zst-job-hero-company strong {
    color: #ffffff;
}

.zst-job-body-text {
    padding: 36px;
    font-size: 1.02rem;
    line-height: 1.75;
    color: #334155;
}
.zst-job-body-text p {
    margin-bottom: 20px;
}
.zst-job-body-text img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 12px;
    margin: 20px auto;
    display: block;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}
.zst-job-body-text ul, .zst-job-body-text ol {
    margin-left: 24px;
    margin-bottom: 20px;
}
.zst-job-body-text li {
    margin-bottom: 8px;
}

.zst-job-card-footer {
    padding: 20px 36px;
    border-top: 1px solid #e2e8f0;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}
.zst-btn-back-bottom {
    background: #0284c7;
    color: #ffffff !important;
    font-weight: 700;
    font-size: 0.88rem;
    padding: 10px 20px;
    border-radius: 8px;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;
}
.zst-btn-back-bottom:hover {
    background: #0369a1;
}
.zst-btn-print {
    background: #ffffff;
    border: 1px solid #cbd5e1;
    color: #475569;
    font-weight: 600;
    font-size: 0.88rem;
    padding: 10px 18px;
    border-radius: 8px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;
}
.zst-btn-print:hover {
    background: #f1f5f9;
    color: #0f172a;
}

/* Sidebar */
.zst-job-sidebar {
    position: sticky;
    top: 24px;
}
.zst-job-summary-card {
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.04);
    padding: 26px;
}
.zst-summary-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0a192f;
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid #0284c7;
    display: flex;
    align-items: center;
    gap: 8px;
}
.zst-summary-list {
    list-style: none;
    padding: 0;
    margin: 0 0 24px 0;
}
.zst-summary-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #f1f5f9;
    font-size: 0.88rem;
    gap: 12px;
}
.zst-s-label {
    color: #64748b;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.zst-s-val {
    color: #0f172a;
    text-align: right;
}
.zst-summary-apply-box {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 12px;
    padding: 18px;
    margin-bottom: 20px;
}
.zst-summary-apply-box h4 {
    margin: 0 0 8px 0;
    color: #0369a1;
    font-size: 0.96rem;
    display: flex;
    align-items: center;
    gap: 7px;
}
.zst-summary-apply-box p {
    font-size: 0.83rem;
    color: #475569;
    margin: 0 0 14px 0;
    line-height: 1.5;
}
.zst-btn-contact-school {
    background: #0284c7;
    color: #ffffff !important;
    font-size: 0.82rem;
    font-weight: 700;
    padding: 9px 14px;
    border-radius: 8px;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-align: center;
}
.zst-btn-contact-school:hover {
    background: #0369a1;
}
.zst-btn-sidebar-all {
    background: #ffffff;
    border: 1px solid #cbd5e1;
    color: #0f172a !important;
    font-size: 0.84rem;
    font-weight: 700;
    padding: 11px 16px;
    border-radius: 8px;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s;
}
.zst-btn-sidebar-all:hover {
    background: #f8fafc;
    border-color: #0284c7;
    color: #0284c7 !important;
}

/* ==========================================================================
   MODAL DLA PRACODAWCÓW - ZGŁOŚ OFERTĘ PRACY Z PLAKATEM
   ========================================================================== */
.zst-modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(10, 25, 47, 0.78);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    overflow-y: auto;
}
.zst-modal-dialog {
    background: #ffffff;
    width: 100%;
    max-width: 680px;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.3);
    overflow: hidden;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    animation: zstModalFadeIn 0.25s ease-out;
}
@keyframes zstModalFadeIn {
    from { opacity: 0; transform: scale(0.96) translateY(10px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}
.zst-modal-header {
    background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%);
    color: #ffffff;
    padding: 24px 28px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.zst-modal-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.15);
    color: #38bdf8;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 999px;
    margin-bottom: 6px;
}
.zst-modal-title-wrap h3 {
    margin: 0 0 6px 0;
    font-size: 1.4rem;
    font-weight: 800;
    color: #ffffff;
}
.zst-modal-title-wrap p {
    margin: 0;
    font-size: 0.86rem;
    color: #cbd5e1;
}
.zst-modal-close {
    background: rgba(255, 255, 255, 0.15);
    border: none;
    color: #ffffff;
    font-size: 24px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transition: background 0.2s;
}
.zst-modal-close:hover {
    background: rgba(255, 255, 255, 0.3);
}

.zst-modal-body {
    padding: 24px 28px;
    overflow-y: auto;
    flex: 1;
}
.zst-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
@media (max-width: 600px) {
    .zst-form-grid {
        grid-template-columns: 1fr;
    }
}
.zst-form-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.zst-field-full {
    grid-column: 1 / -1;
}
.zst-form-field label {
    font-size: 0.84rem;
    font-weight: 700;
    color: #334155;
}
.zst-form-field label .req {
    color: #dc2626;
}
.zst-form-field input, .zst-form-field select, .zst-form-field textarea {
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 0.9rem;
    color: #0f172a;
    font-family: inherit;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.zst-form-field input:focus, .zst-form-field select:focus, .zst-form-field textarea:focus {
    outline: none;
    border-color: #0284c7;
    box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

/* Dropzone */
.zst-file-dropzone {
    border: 2px dashed #94a3b8;
    border-radius: 12px;
    background: #f8fafc;
    padding: 24px 16px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
}
.zst-file-dropzone:hover, .zst-file-dropzone.dragover {
    border-color: #0284c7;
    background: #f0f9ff;
}
.zst-file-dropzone i {
    font-size: 32px;
    color: #0284c7;
    margin-bottom: 8px;
}
.zst-file-dropzone p {
    margin: 0 0 4px 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: #1e293b;
}
.zst-drop-hint {
    font-size: 0.76rem;
    color: #64748b;
}
.zst-file-list-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}
.zst-file-item {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 5px 10px;
    font-size: 0.78rem;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #334155;
}
.zst-file-item i {
    color: #0284c7;
}

.zst-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.8rem !important;
    font-weight: normal !important;
    color: #475569;
    cursor: pointer;
}
.zst-checkbox-label input {
    margin-top: 2px;
}

.zst-form-feedback {
    margin-top: 16px;
    padding: 12px 16px;
    border-radius: 8px;
    font-size: 0.88rem;
}
.zst-form-feedback.success {
    background: #ecfdf5;
    border: 1px solid #6ee7b7;
    color: #065f46;
}
.zst-form-feedback.error {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    color: #991b1b;
}

.zst-modal-footer {
    padding: 16px 28px;
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
}
.zst-btn-modal-cancel {
    background: transparent;
    border: 1px solid #cbd5e1;
    color: #64748b;
    padding: 10px 18px;
    border-radius: 8px;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
}
.zst-btn-modal-cancel:hover {
    background: #e2e8f0;
    color: #0f172a;
}
.zst-btn-modal-submit {
    background: #0284c7;
    border: none;
    color: #ffffff;
    padding: 10px 22px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(2, 132, 199, 0.3);
    transition: all 0.2s;
}
.zst-btn-modal-submit:hover {
    background: #0369a1;
}
.zst-btn-modal-submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Print CSS */
@media print {
    body * {
        visibility: hidden;
    }
    .zst-single-job-container, .zst-single-job-container * {
        visibility: visible;
    }
    .zst-single-job-container {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
    }
    .zst-job-top-nav-bar, .zst-job-sidebar, .zst-job-card-footer {
        display: none !important;
    }
    .zst-job-main-layout {
        grid-template-columns: 1fr !important;
    }
}

/* Fix single job hero title color */
.zst-job-card-hero .zst-job-hero-title,
.zst-job-card-hero h1,
.zst-job-hero-meta h1 {
    color: #ffffff !important;
}

.zst-home-cal-accent { display: none !important; }

/* ==========================================================================
   MODAL SCROLL & FLEX FIX - ZGŁOŚ OFERTĘ PRACY (POPRAWIONE)
   ========================================================================== */
.zst-modal-backdrop {
    display: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(10, 25, 47, 0.82) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    z-index: 999999 !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 16px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

.zst-modal-backdrop.zst-active,
.zst-modal-backdrop[style*="display: flex"],
.zst-modal-backdrop[style*="display:flex"] {
    display: flex !important;
}

@media (max-height: 850px) {
    .zst-modal-backdrop {
        align-items: flex-start !important;
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }
}

.zst-modal-dialog {
    background: #ffffff !important;
    width: 100% !important;
    max-width: 680px !important;
    border-radius: 18px !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35) !important;
    overflow: hidden !important;
    max-height: 85vh !important;
    display: flex !important;
    flex-direction: column !important;
    margin: auto !important;
    position: relative !important;
}

.zst-modal-header {
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 2 !important;
    padding: 20px 24px !important;
}

#zstEmployerJobForm {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.zst-modal-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 20px 24px !important;
}

.zst-modal-body::-webkit-scrollbar {
    width: 8px !important;
}
.zst-modal-body::-webkit-scrollbar-track {
    background: #f1f5f9 !important;
}
.zst-modal-body::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 4px !important;
}
.zst-modal-body::-webkit-scrollbar-thumb:hover {
    background: #94a3b8 !important;
}

.zst-modal-footer {
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 2 !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
    padding: 14px 24px !important;
}

/* Dynamiczne Style Kalendarza ZST-CKZiU: Swieta, Egzaminy, Multiday */
.zst-date-holiday {
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
}
.zst-date-holiday .zst-ev-mo { color: #991b1b !important; }
.zst-date-holiday .zst-ev-days { color: #dc2626 !important; }

.zst-date-red {
    background: #fff1f2 !important;
    border: 1px solid #fecdd3 !important;
}
.zst-date-red .zst-ev-mo { color: #9f1239 !important; }
.zst-date-red .zst-ev-days { color: #e11d48 !important; }

.zst-date-green {
    background: #ecfdf5 !important;
    border: 1px solid #a7f3d0 !important;
}
.zst-date-green .zst-ev-mo { color: #065f46 !important; }
.zst-date-green .zst-ev-days { color: #059669 !important; }

.zst-h-ev-date .zst-days-fit {
    font-size: 10px !important;
    letter-spacing: -0.04em !important;
    white-space: nowrap !important;
}

/* Kalendarz podstrony - swieta i wyroznienia */
.zst-ev-holiday {
    background: #fef2f2 !important;
    border-color: #fca5a5 !important;
}
.zst-tag-holiday {
    background: #ef4444 !important;
    color: #ffffff !important;
}
.zst-agenda-holiday {
    border-left: 4px solid #ef4444 !important;
    background: #fff5f5 !important;
}
.zst-agenda-holiday .zst-agenda-date {
    color: #dc2626 !important;
    font-weight: 800 !important;
}
.zst-cal-download-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, #0a192f, #1e293b);
    color: #ffffff;
    padding: 18px 24px;
    border-radius: 12px;
    margin-bottom: 24px;
    box-shadow: 0 4px 16px rgba(10, 25, 47, 0.08);
}
.zst-cal-banner-left {
    display: flex;
    align-items: center;
    gap: 16px;
}
.zst-cal-banner-icon {
    font-size: 28px;
    color: #f87171;
}
.zst-cal-banner-title {
    margin: 0 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}
.zst-cal-banner-subtitle {
    margin: 4px 0 0 !important;
    font-size: 13px !important;
    color: #cbd5e1 !important;
}
.zst-cal-pdf-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #ef4444;
    color: #ffffff !important;
    padding: 10px 20px;
    border-radius: 8px;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.2s ease;
}
.zst-cal-pdf-btn:hover {
    background: #dc2626;
    transform: translateY(-1px);
}
.zst-m-badge {
    background: rgba(255, 255, 255, 0.2);
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 10.5px;
    margin-left: 4px;
}
.zst-m-btn:not(.active) .zst-m-badge {
    background: #e2e8f0;
    color: #334155;
}

/* ==========================================================================
   DARMOWA GALERIA ZDJĘĆ ZST-CKZiU (RESPONSYWNY GRID + LIGHTBOX)
   ========================================================================== */
.gallery {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
    gap: 18px !important;
    margin: 28px 0 !important;
    padding: 0 !important;
    width: 100% !important;
    clear: both !important;
}
.gallery-columns-1 { grid-template-columns: 1fr !important; }
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr) !important; }
.gallery-columns-3 { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; }
.gallery-columns-4 { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important; }
.gallery-columns-5, .gallery-columns-6 { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important; }

.gallery-item {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(15, 41, 74, 0.08) !important;
    border: 1px solid #e2e8f0 !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
}
.gallery-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(15, 41, 74, 0.16) !important;
    border-color: #cbd5e1 !important;
}
.gallery-icon {
    width: 100% !important;
    height: 220px !important;
    overflow: hidden !important;
    background: #0f294a !important;
    position: relative !important;
}
.gallery-icon a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    text-decoration: none !important;
    cursor: zoom-in !important;
}
.gallery-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    border: none !important;
    transition: transform 0.35s ease !important;
}
.gallery-item:hover .gallery-icon img {
    transform: scale(1.06) !important;
}
.gallery-icon a::after {
    content: "🔍";
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: rgba(15, 41, 74, 0.75);
    backdrop-filter: blur(4px);
    color: #ffffff;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.2s ease;
    pointer-events: none;
}
.gallery-item:hover .gallery-icon a::after {
    opacity: 1;
    transform: scale(1);
}
.gallery-caption {
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: #475569 !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    text-align: center !important;
    background: #f8fafc !important;
    border-top: 1px solid #f1f5f9 !important;
    font-weight: 500 !important;
}
@media (max-width: 640px) {
    .gallery {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)) !important;
        gap: 12px !important;
    }
    .gallery-icon {
        height: 140px !important;
    }
}

/* ==========================================================================
   MASTER OVERRIDE: PRZYCISKI BOCZNE ZST-CKZiU (STATUT SZKOŁY, PODRĘCZNIKI, STOWARZYSZENIE, DZIENNIK, DOKUMENTY)
   BEZWZGLĘDNIE STATYCZNE (ZERO RUCHU), NAPISY I IKONY ZAWSZE BIAŁE (#ffffff)
   ========================================================================== */
.zst-el-element-4cdab61d .zst-el-icon-list-items {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 300px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item,
.zst-el-element-4cdab61d .zst-el-icon-list-item * {
  transform: none !important;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:focus,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:active {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.85) !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
  position: relative !important;
  transform: none !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a {
  background: transparent !important;
  box-shadow: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
  color: #ffffff !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-icon {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 0 !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon {
  background: rgba(255, 255, 255, 0.22) !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-icon i,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon i {
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:focus .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:active .zst-el-icon-list-text {
  flex: 1 1 auto !important;
  white-space: nowrap !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a::after,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover::after {
  content: '\f054' !important;
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 900 !important;
  font-size: 10px !important;
  color: #ffffff !important;
  margin-left: auto !important;
  transform: none !important;
}

/* ==========================================================================
   MOBILE HEADER GUARD: ZST-CKZiU BRANDING & BURGER BUTTON IMMUNITY
   ========================================================================== */
@media (max-width: 768px) {
  .zst-el-element-c71ee80 .zst-el-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 12px !important;
    width: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    gap: 8px !important;
  }
  .zst-el-element-f0f2e74 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 58px) !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .zst-el-element-2f4d7d6 {
    flex: 0 0 50px !important;
    width: 50px !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .zst-header-branding-link {
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
  }
  .zst-header-branding {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .zst-header-emblem {
    height: 52px !important;
    width: auto !important;
    max-width: 44px !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
  }
  .zst-header-text {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
    line-height: 1.18 !important;
  }
  .zst-header-title {
    font-size: clamp(12px, 3.4vw, 15px) !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: -0.2px !important;
    margin-bottom: 2px !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }
  .zst-header-sub {
    font-size: clamp(9.5px, 2.7vw, 11.5px) !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    letter-spacing: -0.1px !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }
  .zst-header-patron {
    font-size: clamp(8.5px, 2.4vw, 10px) !important;
    font-weight: 400 !important;
    color: rgba(255, 255, 255, 0.82) !important;
    letter-spacing: 0px !important;
    margin-top: 1px !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }
}
@media (max-width: 380px) {
  .zst-header-emblem {
    height: 46px !important;
    max-width: 38px !important;
  }
  .zst-header-branding {
    gap: 7px !important;
  }
  .zst-header-title {
    font-size: 11.5px !important;
  }
  .zst-header-sub {
    font-size: 9px !important;
  }
  .zst-header-patron {
    font-size: 8px !important;
  }
}

/* ==========================================================================
   PRAKTYKI OPCJA 2: Wyróżniony Regulamin + 3 Kolumny Dokumentów
   ========================================================================== */
.zst-praktyki-opcja2-wrap {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-bottom: 20px;
}
.zst-featured-reg-banner {
    background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 100%);
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.05);
}
.zst-featured-reg-left {
    display: flex;
    align-items: center;
    gap: 18px;
}
.zst-featured-reg-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #dbeafe;
    color: #1d4ed8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}
.zst-featured-reg-left h4 {
    margin: 0 0 4px 0;
    font-size: 1.12rem;
    font-weight: 800;
    color: #0f172a;
}
.zst-featured-reg-left p {
    margin: 0;
    font-size: 0.88rem;
    color: #475569;
    line-height: 1.45;
}
.zst-btn-featured-reg {
    background: #2563eb;
    color: #ffffff !important;
    padding: 11px 22px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 0.88rem;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.22);
    transition: all 0.2s ease;
}
.zst-btn-featured-reg:hover {
    background: #1d4ed8;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(37, 99, 235, 0.3);
}
.zst-praktyki-3col-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

@media (max-width: 992px) {
    .zst-featured-reg-banner {
        flex-direction: column;
        align-items: flex-start;
    }
    .zst-btn-featured-reg {
        width: 100%;
        justify-content: center;
    }
    .zst-praktyki-3col-grid {
        grid-template-columns: 1fr;
    }
}

/* ZST-CKZiU HEADER DROPDOWN SAFETY: Ensure sub-menus are hidden by default unless hovered */
.pp-advanced-menu:not(.pp-menu-mobile) .sub-menu.pp-advanced-menu--dropdown {
    display: none !important;
}
.pp-advanced-menu:not(.pp-menu-mobile) .menu-item:hover > .sub-menu.pp-advanced-menu--dropdown,
.pp-advanced-menu:not(.pp-menu-mobile) .pp-menu-item:hover > .sub-menu.pp-advanced-menu--dropdown {
    display: block !important;
}

body.home .page-header, body.home > .site-main > .page-header { display: none !important; margin: 0 !important; padding: 0 !important; }

/* ==========================================================================
   FIX: Section 4 - Egzaminy i praktyki & Przyciski boczne SIDE BY SIDE
   ========================================================================== */

/* Outer Section */
.zst-el-element-43a8284f {
    background: #192e62 !important;
    padding: 50px 0 60px 0 !important;
    position: relative !important;
    width: 100% !important;
}

.zst-el-element-43a8284f > .zst-el-container {
    max-width: 1380px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
}

/* Inner Section Container - FORCE FLEX ROW */
.zst-el-element-65c16854 {
    width: 100% !important;
}

.zst-el-element-65c16854 > .zst-el-container {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 40px !important;
    width: 100% !important;
}

/* Left Column: 3 Cards (Matura, Egzaminy zawodowe, Praktyki) */
.zst-el-element-578ae0e {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: 900px !important;
}

.zst-el-element-578ae0e .zst-exam-hub {
    margin-bottom: 0 !important;
}

.zst-el-element-578ae0e .zst-exam-options {
    display: flex !important;
    flex-direction: row !important;
    gap: 16px !important;
    flex-wrap: nowrap !important;
}

.zst-el-element-578ae0e .zst-exam-option {
    flex: 1 1 0 !important;
    min-width: 200px !important;
}

/* Right Column: Przyciski boczne (Statut, Podręczniki, etc.) */
.zst-el-element-4cdab61d {
    flex: 0 0 280px !important;
    width: 280px !important;
    max-width: 280px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
    margin-left: auto !important;
    padding: 0 !important;
    margin-bottom: 2px !important;
}

.zst-el-element-4cdab61d .zst-el-widget-wrap {
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
    width: 100% !important;
    border: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 280px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 10px 18px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-weight: 700 !important;
    font-size: 12.5px !important;
    letter-spacing: 0.5px !important;
    border: 1.5px solid rgba(255, 255, 255, 0.85) !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    transition: all 0.22s ease !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: #ffb300 !important;
    color: #ffb300 !important;
    transform: translateX(-4px) !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-icon {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 14px !important;
    color: #ffb300 !important;
    flex: 0 0 16px !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-text {
    flex: 1 1 auto !important;
    color: #ffffff !important;
}

@media (max-width: 1100px) {
    .zst-el-element-65c16854 > .zst-el-container {
        flex-direction: column !important;
        align-items: center !important;
        gap: 30px !important;
    }
    .zst-el-element-578ae0e {
        width: 100% !important;
        max-width: 100% !important;
    }
    .zst-el-element-4cdab61d {
        width: 100% !important;
        max-width: 400px !important;
        align-items: center !important;
        margin: 0 auto !important;
    }
}

@media (max-width: 768px) {
    .zst-el-element-578ae0e .zst-exam-options {
        flex-direction: column !important;
    }
}

/* ==========================================================================
   FIX: Nasi partnerzy aligned to the LEFT
   ========================================================================== */
.zst-partners-header,
.zst-el-element-521df90 .zst-partners-header,
.zst-el-element.zst-el-element-521df90 .zst-partners-header {
    text-align: left !important;
    display: block !important;
    width: 100% !important;
    margin-bottom: 20px !important;
    padding-left: 0 !important;
}

.zst-partners-title,
.zst-el-element-521df90 .zst-partners-title {
    text-align: left !important;
    display: inline-block !important;
}

/* ==========================================================================
   FIX: Jednostka Organizacyjna Miasta Leszna aligned to the LEFT
   ========================================================================== */
.zst-el-element.zst-el-element-8e318b9 > .zst-el-container,
.zst-el-element-8e318b9 > .zst-el-container {
    max-width: 1380px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 40px !important;
    box-sizing: border-box !important;
}

.zst-el-element-8e318b9 .zst-el-element-d16c92b {
    text-align: left !important;
}

.zst-el-element-8e318b9 .zst-el-element-d16c92b .zst-el-widget-container {
    text-align: left !important;
}

/* ==========================================================================
   FIX: Ultra-slim Copyright Footer
   ========================================================================== */
.zst-el-element-5feb0ee,
.zst-el-element-5feb0ee.zst-el-section,
.zst-el-element-5feb0ee.zst-el-top-section {
    padding: 3px 0 !important;
    min-height: auto !important;
    height: auto !important;
    background: #060d1f !important;
    border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.zst-el-element-5feb0ee .zst-el-container,
.zst-el-element-5feb0ee .zst-el-column,
.zst-el-element-5feb0ee .zst-el-widget-wrap,
.zst-el-element-5feb0ee .zst-el-widget,
.zst-el-element-5feb0ee .zst-el-widget-container {
    min-height: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}

.zst-el-element-5feb0ee h3,
.zst-el-element-5feb0ee .zst-el-heading-title,
.zst-el-element-5feb0ee p,
.zst-el-element-5feb0ee span {
    margin: 0 !important;
    padding: 4px 0 !important;
    line-height: 1.2 !important;
    font-size: 11px !important;
}
/* ==========================================================================
   LIVE PRODUCTION - NATIVE RESPONSIVE MOBILE DRAWER & HEADER (ZST-CKZiU)
   ========================================================================== */

/* Top bar on mobile: display clean contact info bar */
@media (max-width: 1024px) {
    .zst-el-element-42294e3 {
        display: block !important;
        background: #060d1f !important;
        padding: 6px 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }
    .zst-el-element-42294e3 .zst-el-element-e749f82 {
        display: none !important;
    }
    .zst-el-element-42294e3 .zst-el-element-236f61e {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .zst-el-element-42294e3 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-item,
    .zst-el-element-42294e3 .zst-el-icon-list-text,
    .zst-el-element-42294e3 .zst-el-icon-list-item a {
        font-size: 11.5px !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-icon {
        display: none !important;
    }

    /* Main Navigation Bar */
    .zst-el-element-c71ee80 {
        padding: 8px 0 !important;
        background: #10265c !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Logo */
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 img {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        display: block !important;
    }

    /* Hide desktop nav */
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-f9afbcc {
        display: none !important;
    }

    /* Hamburger column */
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        width: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* 7a340c0 (Hamburger Button) */
    .zst-el-element-7a340c0 {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
    }
    .zst-el-element-7a340c0 .pp-advanced-menu--main,
    .zst-el-element-7a340c0 .pp-advanced-menu--dropdown {
        display: none !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 46px !important;
        height: 44px !important;
        background: #162a5c !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle:hover {
        background: #1c3674 !important;
        border-color: #ffb300 !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-box {
        width: 24px !important;
        height: 18px !important;
        display: inline-block !important;
        position: relative !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner,
    .zst-el-element-7a340c0 .pp-hamburger-inner::before,
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        width: 24px !important;
        height: 2.5px !important;
        background-color: #ffffff !important;
        border-radius: 2px !important;
        position: absolute !important;
        transition: transform 0.15s ease !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::before {
        content: "" !important;
        top: -7px !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        content: "" !important;
        bottom: -7px !important;
    }

    /* Mobile Hero Banner */
    .zst-el-element-27a1745 {
        display: block !important;
    }
}

/* ==========================================================================
   SLIDE-OVER MOBILE DRAWER (Bumerang / Drawer Menu)
   ========================================================================== */
#zst-mobile-nav-drawer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 9999999 !important;
    display: none;
    pointer-events: none;
}

#zst-mobile-nav-drawer.zst-drawer-open {
    display: block !important;
    pointer-events: auto !important;
}

.zst-mobile-nav-backdrop {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(4, 9, 20, 0.7) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    opacity: 0;
    transition: opacity 0.3s ease !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-backdrop {
    opacity: 1;
}

.zst-mobile-nav-panel {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(340px, 86vw) !important;
    height: 100% !important;
    background: #0b1736 !important;
    box-shadow: -8px 0 35px rgba(0, 0, 0, 0.6) !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateX(100%) !important;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-sizing: border-box !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-panel {
    transform: translateX(0) !important;
}

.zst-mobile-nav-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: #060d1f !important;
}

.zst-mobile-nav-school {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
}

.zst-mobile-nav-close {
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    font-size: 28px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    padding: 0 4px !important;
}

.zst-mobile-nav-close:hover {
    color: #ffb300 !important;
}

.zst-mobile-nav-items {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    padding: 12px 0 30px 0 !important;
}

/* Tree styling */
.zst-mobile-menu-tree {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 20px !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.zst-mobile-menu-tree li > a:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #ffb300 !important;
}

.zst-mobile-menu-tree .zst-mob-caret {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    margin-left: 8px !important;
    font-size: 14px !important;
    color: #ffb300 !important;
    transition: transform 0.25s ease !important;
}

.zst-mobile-menu-tree li.zst-mob-open > a .zst-mob-caret {
    transform: rotate(180deg) !important;
}

/* Submenu dropdown */
.zst-mobile-menu-tree ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #071026 !important;
    display: none !important;
}

.zst-mobile-menu-tree li.zst-mob-open > ul {
    display: block !important;
}

.zst-mobile-menu-tree ul li a {
    padding: 10px 20px 10px 34px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.85) !important;
}

.zst-mobile-menu-tree ul ul li a {
    padding-left: 48px !important;
    font-size: 12.5px !important;
}
/* ==========================================================================
   LIVE PRODUCTION - NATIVE RESPONSIVE MOBILE DRAWER & HEADER (ZST-CKZiU)
   ========================================================================== */

/* Top bar on mobile: display clean contact info bar */
@media (max-width: 1024px) {
    .zst-el-element-42294e3 {
        display: block !important;
        background: #060d1f !important;
        padding: 6px 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }
    .zst-el-element-42294e3 .zst-el-element-e749f82 {
        display: none !important;
    }
    .zst-el-element-42294e3 .zst-el-element-236f61e {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .zst-el-element-42294e3 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-item,
    .zst-el-element-42294e3 .zst-el-icon-list-text,
    .zst-el-element-42294e3 .zst-el-icon-list-item a {
        font-size: 11.5px !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-icon {
        display: none !important;
    }

    /* Main Navigation Bar */
    .zst-el-element-c71ee80 {
        padding: 8px 0 !important;
        background: #10265c !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Logo */
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 img {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        display: block !important;
    }

    /* Hide desktop nav */
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-f9afbcc {
        display: none !important;
    }

    /* Hamburger column */
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        width: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* 7a340c0 (Hamburger Button) */
    .zst-el-element-7a340c0 {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
    }
    .zst-el-element-7a340c0 .pp-advanced-menu--main,
    .zst-el-element-7a340c0 .pp-advanced-menu--dropdown {
        display: none !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 46px !important;
        height: 44px !important;
        background: #162a5c !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle:hover {
        background: #1c3674 !important;
        border-color: #ffb300 !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-box {
        width: 24px !important;
        height: 18px !important;
        display: inline-block !important;
        position: relative !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner,
    .zst-el-element-7a340c0 .pp-hamburger-inner::before,
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        width: 24px !important;
        height: 2.5px !important;
        background-color: #ffffff !important;
        border-radius: 2px !important;
        position: absolute !important;
        transition: transform 0.15s ease !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::before {
        content: "" !important;
        top: -7px !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        content: "" !important;
        bottom: -7px !important;
    }

    /* Mobile Hero Banner */
    .zst-el-element-27a1745 {
        display: block !important;
    }
}

/* ==========================================================================
   SLIDE-OVER MOBILE DRAWER (Bumerang / Drawer Menu)
   ========================================================================== */
#zst-mobile-nav-drawer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 9999999 !important;
    display: none;
    pointer-events: none;
}

#zst-mobile-nav-drawer.zst-drawer-open {
    display: block !important;
    pointer-events: auto !important;
}

.zst-mobile-nav-backdrop {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(4, 9, 20, 0.7) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    opacity: 0;
    transition: opacity 0.3s ease !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-backdrop {
    opacity: 1;
}

.zst-mobile-nav-panel {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(340px, 86vw) !important;
    height: 100% !important;
    background: #0b1736 !important;
    box-shadow: -8px 0 35px rgba(0, 0, 0, 0.6) !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateX(100%) !important;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-sizing: border-box !important;
}

#zst-mobile-nav-drawer.zst-drawer-open .zst-mobile-nav-panel {
    transform: translateX(0) !important;
}

.zst-mobile-nav-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: #060d1f !important;
}

.zst-mobile-nav-school {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
}

.zst-mobile-nav-close {
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    font-size: 28px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    padding: 0 4px !important;
}

.zst-mobile-nav-close:hover {
    color: #ffb300 !important;
}

.zst-mobile-nav-items {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    padding: 12px 0 30px 0 !important;
}

/* Tree styling */
.zst-mobile-menu-tree {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.zst-mobile-menu-tree li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 20px !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.zst-mobile-menu-tree li > a:hover {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #ffb300 !important;
}

.zst-mobile-menu-tree .zst-mob-caret {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    margin-left: 8px !important;
    font-size: 14px !important;
    color: #ffb300 !important;
    transition: transform 0.25s ease !important;
}

.zst-mobile-menu-tree li.zst-mob-open > a .zst-mob-caret {
    transform: rotate(180deg) !important;
}

/* Submenu dropdown */
.zst-mobile-menu-tree ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #071026 !important;
    display: none !important;
}

.zst-mobile-menu-tree li.zst-mob-open > ul {
    display: block !important;
}

.zst-mobile-menu-tree ul li a {
    padding: 10px 20px 10px 34px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.85) !important;
}

.zst-mobile-menu-tree ul ul li a {
    padding-left: 48px !important;
    font-size: 12.5px !important;
}
/* ==========================================================================
   LIVE PRODUCTION - PERFECT RESPONSIVE MOBILE DRAWER & BANNER OVERRIDES
   ========================================================================== */

/* 1. Mobile top bar */
@media (max-width: 1024px) {
    .zst-el-element-42294e3,
    .zst-el-36056 .zst-el-element-42294e3 {
        display: block !important;
        background: #060d1f !important;
        padding: 6px 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }
    .zst-el-element-42294e3 .zst-el-element-e749f82 {
        display: none !important;
    }
    .zst-el-element-42294e3 .zst-el-element-236f61e {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .zst-el-element-42294e3 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-item,
    .zst-el-element-42294e3 .zst-el-icon-list-text,
    .zst-el-element-42294e3 .zst-el-icon-list-item a {
        font-size: 11.5px !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
    }
    .zst-el-element-42294e3 .zst-el-icon-list-icon {
        display: none !important;
    }

    /* 2. Main bar c71ee80 on mobile */
    .zst-el-element-c71ee80,
    .zst-el-36056 .zst-el-element-c71ee80 {
        padding: 8px 0 !important;
        background: #10265c !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Logo */
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f0f2e74 img {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        display: block !important;
    }

    /* Hide desktop navs */
    .zst-el-element-c71ee80 .zst-el-element-8871457,
    .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-f9afbcc,
    .zst-el-element-f9afbcc {
        display: none !important;
    }

    /* Hamburger Column & Button */
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: auto !important;
    }
    .zst-el-element-c71ee80 .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        width: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Override zst-el-hidden-desktop/tablet/mobile on 7a340c0 */
    .zst-el-element.zst-el-element-7a340c0,
    .zst-el-element-7a340c0 {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        visibility: visible !important;
    }
    .zst-el-element-7a340c0 .pp-advanced-menu--main,
    .zst-el-element-7a340c0 .pp-advanced-menu--dropdown {
        display: none !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        height: 44px !important;
        background: #162a5c !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        visibility: visible !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle:hover {
        background: #1c3674 !important;
        border-color: #ffb300 !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger {
        display: block !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-box {
        width: 24px !important;
        height: 18px !important;
        display: inline-block !important;
        position: relative !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner,
    .zst-el-element-7a340c0 .pp-hamburger-inner::before,
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        width: 24px !important;
        height: 2.5px !important;
        background-color: #ffffff !important;
        border-radius: 2px !important;
        position: absolute !important;
        transition: transform 0.15s ease !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::before {
        content: "" !important;
        top: -7px !important;
    }
    .zst-el-element-7a340c0 .pp-hamburger-inner::after {
        content: "" !important;
        bottom: -7px !important;
    }

    /* 3. Mobile Hero Banner 27a1745 */
    .zst-el-section.zst-el-element-27a1745,
    .zst-el-element-27a1745 {
        display: block !important;
        visibility: visible !important;
    }
}

/* ==========================================================================
   PERFECT SUBPAGE & TITLE CARD RESPONSIVE LAYOUT
   ========================================================================== */
.zst-page-title {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: auto !important;
}

@media (max-width: 768px) {
    .zst-page-title-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
        margin-top: 6px !important;
    }
    .zst-page-title {
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        font-size: 22px !important;
        line-height: 1.25 !important;
    }
    .zst-page-header-card {
        padding: 16px 18px !important;
        margin-bottom: 20px !important;
    }
    .zst-page-title-row .zst-actions {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        margin-top: 6px !important;
    }
    .zst-page-title-row .zst-actions .zst-action-btn {
        flex: 1 1 auto !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 8px 12px !important;
        font-size: 13px !important;
    }
}

/* ==========================================================================
   GLOBAL 1380PX WIDE GRID ALIGNMENT (Matching Nasi partnerzy)
   ========================================================================== */
@media (min-width: 1200px) {
    .zst-el-element-3abdd9df > .zst-el-container,
    .zst-el-element-3aa54026 > .zst-el-container,
    .zst-el-element-644d4792 > .zst-el-container,
    .zst-el-element-43a8284f > .zst-el-container,
    .zst-el-element-65c16854 > .zst-el-container,
    .zst-el-element-521df90 > .zst-el-container,
    .zst-el-element-8e318b9 > .zst-el-container,
    .zst-el-element-5e855e11 > .zst-el-container,
    .zst-page-content-container,
    .zst-single-content-container,
    .zst-hist-container,
    .zst-pulk-container,
    .zst-kadra-container,
    .zst-statut-container,
    .zst-koncepcja-container,
    .zst-stow-container,
    .zst-exam-page-container,
    .zst-single-job-container {
        max-width: 1380px !important;
        box-sizing: border-box !important;
    }

    /* Section 4 inner layout optimization when wide */
    .zst-el-element-65c16854 > .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        gap: 30px !important;
        width: 100% !important;
    }
    .zst-el-element-578ae0e {
        flex: 1 1 auto !important;
        max-width: none !important;
    }
    .zst-el-element-578ae0e .zst-exam-options {
        display: flex !important;
        flex-direction: row !important;
        gap: 16px !important;
        width: 100% !important;
    }
    .zst-el-element-578ae0e .zst-exam-option {
        flex: 1 1 0 !important;
    }
    .zst-el-element-4cdab61d {
        flex: 0 0 280px !important;
        width: 280px !important;
        max-width: 280px !important;
    }
}

/* ==========================================================================
   PERFECT FINAL MOBILE FIXES:
   1. 1-LINE CONTACT
   2. FULL TYPOGRAPHY BRANDING & VERTICAL ALIGNMENT (NO SHORTENING)
   3. HERO VIDEO OVERLAY WITH SHARP RECTANGLE CORNERS
   4. INTACT FOOTER STYLES
   ========================================================================== */
@media (max-width: 768px) {
        /* 1. TOPBAR: target ONLY .zst-el-element-ec02cb2, fit 1 line */
    .zst-el-element-42294e3 {
        display: block !important;
        padding: 4px 0 !important;
        background: #061126 !important;
        min-height: auto !important;
        height: auto !important;
    }
    .zst-el-element-42294e3 > .zst-el-container,
    .zst-el-element-42294e3 .zst-el-container {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 4px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .zst-el-element-236f61e {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }
    .zst-el-element-ec02cb2 {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }
    .zst-el-element-ec02cb2 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 2px !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-item {
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        font-size: clamp(7px, 2.1vw, 8.5px) !important; letter-spacing: -0.2px !important;
        line-height: 1 !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-item a {
        display: inline-flex !important;
        align-items: center !important;
        font-size: inherit !important;
        color: rgba(255, 255, 255, 0.88) !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-icon {
        font-size: clamp(7.5px, 2.3vw, 9px) !important;
        margin-right: 3px !important;
        color: #f5b324 !important;
        display: inline-flex !important;
        align-items: center !important;
    }
    .zst-el-element-ec02cb2 .zst-el-icon-list-text {
        font-size: inherit !important;
        letter-spacing: -0.2px !important;
    }
    .zst-el-element-ec02cb2 .zst-hide-mobile {
        display: inline !important;
    }

    /* FOOTER MOBILE CONTACT & NAVIGATION LAYOUT */
    .zst-el-element-5e855e11 .zst-el-container {
        display: flex !important;
        flex-direction: column !important;
        padding: 24px 16px !important;
        gap: 22px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-5e855e11 .zst-footer-col-title {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #ffffff !important;
        margin-bottom: 12px !important;
        display: flex !important;
        align-items: center !important;
        border-bottom: 2px solid #f5b324 !important;
        padding-bottom: 6px !important;
    }
    .zst-el-element-50796328 {
        width: 100% !important;
    }
    .zst-el-element-50796328 ul.zst-el-icon-list-items {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        white-space: normal !important;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-item {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-icon {
        flex: 0 0 20px !important;
        width: 20px !important;
        margin-top: 2px !important;
        margin-right: 8px !important;
        color: #f5b324 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .zst-el-element-50796328 .zst-el-icon-list-text {
        flex: 1 1 auto !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        color: rgba(255, 255, 255, 0.9) !important;
        word-break: break-word !important;
        text-align: left !important;
    }
    .zst-el-element-50796328 a {
        color: #ffffff !important;
        text-decoration: underline !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list li a {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        color: rgba(255, 255, 255, 0.9) !important;
        text-decoration: none !important;
        font-size: 13px !important;
    }
    .zst-el-element-5e855e11 .zst-footer-links-list li a i {
        color: #f5b324 !important;
        width: 16px !important;
        text-align: center !important;
    }

    /* 2. NAVBAR: DELICATE HEIGHT, NO ORANGE LINE, GENTLE SHADOW */
    .zst-el-element-c71ee80,
    .zst-el-36056 .zst-el-element-c71ee80 {
        position: relative !important;
        z-index: 25 !important;
        background: linear-gradient(180deg, #091a3e 0%, #0d2352 100%) !important;
        border-bottom: none !important;
        padding: 8px 0 !important;
        min-height: 72px !important;
        max-height: none !important;
        height: auto !important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.45) !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
    }
    .zst-el-element-c71ee80 > .zst-el-container,
    .zst-el-element-c71ee80 .zst-el-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: auto !important;
        max-height: none !important;
        height: auto !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }
    .zst-el-element-f0f2e74 {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-f0f2e74 > .zst-el-widget-wrap,
    .zst-el-element-f0f2e74 .zst-el-widget-wrap,
    .zst-el-element-f0f2e74 .zst-el-widget {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .zst-el-element-2f4d7d6 {
        flex: 0 0 auto !important;
        margin: 0 0 0 8px !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }
    .zst-el-element-2f4d7d6 > .zst-el-widget-wrap,
    .zst-el-element-2f4d7d6 .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-f9afbcc,
    .zst-el-element-8871457,
    .zst-el-element-2f4d7d6 .zst-el-element-f9afbcc,
    .zst-el-element-2f4d7d6 .zst-el-element-8871457 {
        display: none !important;
    }
    .zst-el-element-7a340c0,
    .zst-el-element-2f4d7d6 .zst-el-element-7a340c0 {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 3. FULL LOGO BRANDING (1:1 MOCKUP) + VERTICAL CENTERING */
    .zst-header-branding-link {
        text-decoration: none !important;
        display: flex !important;
        align-items: center !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-branding {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-emblem {
        height: 52px !important;
        max-height: 52px !important;
        width: auto !important;
        max-width: 44px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
        display: block !important;
        filter: drop-shadow(0 2px 4px rgba(0,0,0,0.35)) !important;
        margin: 0 !important;
    }
    .zst-header-text {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        min-width: 0 !important;
        gap: 1px !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-header-text::after {
        display: none !important;
        content: none !important;
    }
    .zst-header-title {
        font-size: 13.5px !important;
        font-weight: 800 !important;
        color: #ffffff !important;
        letter-spacing: -0.2px !important;
        line-height: 1.15 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 3px rgba(0,0,0,0.5) !important;
    }
    .zst-header-sub {
        display: block !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        color: #ffffff !important;
        letter-spacing: -0.1px !important;
        line-height: 1.15 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    }
    .zst-header-patron {
        display: block !important;
        font-size: 9px !important;
        font-weight: 400 !important;
        font-style: italic !important;
        color: rgba(255, 255, 255, 0.85) !important;
        letter-spacing: -0.1px !important;
        line-height: 1.15 !important;
        margin: 1px 0 0 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    }
    .zst-el-element-7a340c0 .pp-menu-toggle {
        width: 38px !important;
        height: 38px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
        border-radius: 6px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2) !important;
        margin: 0 !important;
        align-self: center !important;
    }

    /* 4. HERO VIDEO: CRISP RECTANGLE & OVERLAY ON VIDEO */
    .zst-mobile-hero-stage {
        position: relative !important;
        width: 100% !important;
        aspect-ratio: 16 / 9 !important;
        min-height: 215px !important;
        border-radius: 0 !important;
        overflow: hidden !important;
        box-shadow: 0 4px 20px rgba(0,0,0,0.35) !important;
        margin-bottom: 14px !important;
        background: #0b1736 !important;
    }
    .zst-mobile-hero-stage .zst-mobile-video-wrap {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        border-radius: 0 !important;
        z-index: 1 !important;
    }
    .zst-mobile-hero-stage .zst-mobile-video-wrap iframe,
    .zst-mobile-hero-stage .zst-mobile-video-wrap video {
        width: 100% !important;
        height: 100% !important;
        border: none !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 0 !important;
    }
    .zst-mobile-video-overlay {
        position: absolute !important;
        inset: 0 !important;
        background: linear-gradient(180deg, rgba(8, 22, 54, 0.25) 0%, rgba(8, 22, 54, 0.85) 100%) !important;
        z-index: 2 !important;
        pointer-events: none !important;
        border-radius: 0 !important;
    }
    .zst-mobile-hero-content-card {
        position: absolute !important;
        inset: 0 !important;
        z-index: 3 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-end !important;
        align-items: flex-start !important;
        padding: 10px 14px !important;
        background: none !important;
        box-shadow: none !important;
        border: none !important;
        pointer-events: auto !important;
    }
    .zst-mobile-hero-content-card .zst-hero-badge {
        font-size: 8px !important;
        padding: 2px 7px !important;
        margin-bottom: 4px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        border-radius: 4px !important;
        background: #f6c343 !important;
        color: #0b1736 !important;
        display: inline-block !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-title {
        font-size: clamp(14px, 4.2vw, 18px) !important;
        font-weight: 900 !important;
        color: #ffffff !important;
        line-height: 1.15 !important;
        margin: 0 0 3px 0 !important;
        text-shadow: 0 2px 8px rgba(0,0,0,0.8) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-subtitle {
        font-size: clamp(9px, 2.7vw, 11px) !important;
        font-weight: 700 !important;
        color: #f6c343 !important;
        line-height: 1.2 !important;
        margin: 0 0 8px 0 !important;
        text-shadow: 0 1px 4px rgba(0,0,0,0.8) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-buttons {
        display: flex !important;
        gap: 6px !important;
        width: 100% !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn {
        flex: 1 1 0 !important;
        padding: 5px 8px !important;
        font-size: 9.5px !important;
        font-weight: 800 !important;
        text-align: center !important;
        border-radius: 4px !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.5) !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn.zst-btn-accent {
        background: #c61a1a !important;
        color: #ffffff !important;
    }
    .zst-mobile-hero-content-card .zst-mobile-hero-btn.zst-btn-outline {
        background: rgba(11, 23, 54, 0.75) !important;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.8) !important;
        backdrop-filter: blur(4px) !important;
    }
}

@media (max-width: 375px) {
    .zst-header-emblem {
        height: 48px !important;
        max-height: 48px !important;
        max-width: 40px !important;
    }
    .zst-header-title {
        font-size: 12.5px !important;
    }
    .zst-header-sub {
        font-size: 9.5px !important;
    }
    .zst-header-patron {
        font-size: 8.5px !important;
    }
}

/* ==========================================================================
   5. JEDNOSTKA ORGANIZACYJNA MIASTA LESZNA I HERBY W JEDNEJ LINII (MOBILE)
   ========================================================================== */
@media (max-width: 768px) {
    .zst-el-element-8e318b9,
    .zst-el-section.zst-el-element-8e318b9,
    section.zst-el-element-8e318b9 {
        min-height: auto !important;
        height: auto !important;
        padding: 10px 0 !important;
        background: #ffffff !important;
        border-top: 1px solid #e2e8f0 !important;
        border-bottom: 1px solid #e2e8f0 !important;
        display: block !important;
        box-sizing: border-box !important;
    }
    .zst-el-element.zst-el-element-8e318b9 > .zst-el-container,
    .zst-el-element-8e318b9 > .zst-el-container,
    .zst-el-section.zst-el-element-8e318b9 > .zst-el-container {
        min-height: auto !important;
        height: auto !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 14px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        gap: 8px !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-410b647 {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-410b647 .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-jednostka-box {
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
        text-align: left !important;
        width: 100% !important;
    }
    .zst-el-element-8e318b9 .zst-jednostka-l1,
    .zst-el-element-8e318b9 .zst-jednostka-l2 {
        font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
        font-size: clamp(11.5px, 3.4vw, 13.5px) !important;
        font-weight: 800 !important;
        color: #0b1736 !important;
        letter-spacing: 0.25px !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        text-transform: uppercase !important;
        display: block !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-d16c92b,
    .zst-el-element-8e318b9 .zst-el-element-d16c92b .zst-el-widget-container {
        font-size: clamp(11.5px, 3.4vw, 13.5px) !important;
        font-weight: 800 !important;
        color: #0b1736 !important;
        line-height: 1.25 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.25px !important;
        text-align: left !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-170e590,
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-897a26d {
        flex: 0 0 44px !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-170e590 .zst-el-widget-wrap,
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-897a26d .zst-el-widget-wrap {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-71b0351,
    .zst-el-element-8e318b9 .zst-el-element-074f7c5 {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .zst-el-element-8e318b9 .zst-el-element-170e590 .zst-el-widget-container img,
    .zst-el-element-8e318b9 .zst-el-element-897a26d .zst-el-widget-container img,
    .zst-el-element-8e318b9 .zst-el-element-71b0351 img,
    .zst-el-element-8e318b9 .zst-el-element-074f7c5 img {
        height: 38px !important;
        max-height: 38px !important;
        width: auto !important;
        max-width: 42px !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }
    .zst-el-element-8e318b9 .zst-el-column.zst-el-element-6622188 {
        display: none !important;
    }
}

/* ==========================================================================
   KOMPLEKSOWA OPTYMALIZACJA MOBILNA: NAGŁÓWKI WPISÓW, DOKUMENTY ORAZ PDF
   ========================================================================== */

/* 1. Poprawka czytelności przycisków wydruku na desktop */
@media (min-width: 769px) {
    .zst-btn-print,
    .zst-btn-print-fixed {
        background: #ffffff !important;
        color: #1e293b !important;
        border: 1px solid #cbd5e1 !important;
        font-weight: 600 !important;
    }
    .zst-btn-print i,
    .zst-btn-print svg,
    .zst-btn-print-fixed i,
    .zst-btn-print-fixed svg {
        color: #0b1e48 !important;
    }
    .zst-btn-print:hover,
    .zst-btn-print-fixed:hover {
        background: #f1f5f9 !important;
        color: #0b1e48 !important;
        border-color: #94a3b8 !important;
    }
}

/* 2. Zoptymalizowana, estetyczna i kompaktowa część informacyjna na mobile */
@media (max-width: 768px) {
    .zst-single-content-container,
    .site-main.zst-post-main {
        padding: 0 10px !important;
    }

    /* Karta nagłówka wpisu / dokumentu - zredukowana wysokość, elegancka ramka */
    .zst-post-header-card,
    .zst-page-header-card {
        padding: 10px 12px 12px 12px !important;
        margin: 6px 0 12px 0 !important;
        border-radius: 10px !important;
        border: 1px solid #e2e8f0 !important;
        border-left: 4px solid #0b1e48 !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(11, 30, 72, 0.05) !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-crumbs {
        font-size: 11px !important;
        margin-bottom: 4px !important;
        color: #64748b !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }
    .zst-crumbs a {
        color: #64748b !important;
        text-decoration: none !important;
    }

    .zst-el-heading-title.zst-el-size-default,
    .zst-post-header-card h1,
    .zst-post-header-card .zst-el-heading-title,
    .zst-page-header-card h1,
    .zst-page-header-card .zst-el-heading-title {
        font-size: clamp(17px, 4.8vw, 20px) !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #0b1736 !important;
        margin: 2px 0 6px 0 !important;
    }

    .zst-meta-row-wrap,
    .zst-page-title-row {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 6px !important;
        margin-top: 4px !important;
        flex-wrap: wrap !important;
    }

    .zst-meta {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        font-size: 11px !important;
        color: #64748b !important;
    }

    .zst-tag {
        font-size: 9.5px !important;
        font-weight: 700 !important;
        padding: 2px 7px !important;
        border-radius: 4px !important;
        letter-spacing: 0.2px !important;
        background: #0b1e48 !important;
        color: #ffffff !important;
        text-decoration: none !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 3px !important;
        white-space: nowrap !important;
    }

    .zst-date {
        font-size: 10.5px !important;
        color: #64748b !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 3px !important;
        white-space: nowrap !important;
    }

    /* CAŁKOWICIE UKRYWAMY PRZYCISKI WYDRUKU I ZAPISU DO PDF NA TELEFONIE */
    .zst-btn-print,
    .zst-btn-print-fixed,
    .zst-btn-pdf,
    .zst-btn-pdf-fixed,
    .zst-actions .zst-btn-print,
    .zst-actions .zst-btn-print-fixed,
    .zst-actions .zst-btn-pdf,
    .zst-actions .zst-btn-pdf-fixed {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .zst-actions {
        width: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 4px !important;
    }

    .zst-action-btn.zst-btn-fb {
        padding: 2px 8px !important;
        font-size: 10.5px !important;
        border-radius: 4px !important;
        height: 22px !important;
        line-height: 1 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        background: #1877f2 !important;
        color: #ffffff !important;
        border: none !important;
        font-weight: 600 !important;
    }

    .zst-read,
    .zst-meta .zst-dot:last-of-type {
        display: none !important;
    }

    /* 3. Szeroki i nowoczesny blok dokumentu i podglądu PDF na mobile */
    .zst-wpdm-wrapper {
        margin: 8px auto 16px auto !important;
        padding: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-wpdm-card {
        padding: 8px 8px 14px 8px !important;
        border-radius: 12px !important;
        box-shadow: 0 2px 12px rgba(11, 30, 72, 0.05) !important;
        border: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        width: 100% !important;
    }

    .zst-wpdm-viewer-frame {
        border-radius: 8px !important;
        overflow: hidden !important;
        margin-bottom: 8px !important;
        width: 100% !important;
        background: #f8fafc !important;
    }

    .zst-wpdm-viewer-frame iframe {
        height: clamp(380px, 58vh, 500px) !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 8px !important;
        margin-bottom: 0 !important;
        display: block !important;
        width: 100% !important;
    }

    /* Pasek akcji pobierania i metadanych pod PDF */
    .zst-wpdm-bottom-bar {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid #f1f5f9 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .zst-wpdm-download-bar {
        width: 100% !important;
        margin: 0 !important;
    }

    .zst-wpdm-download-bar a.wpdm-download-link {
        width: 100% !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 12px 18px !important;
        font-size: 14.5px !important;
        font-weight: 700 !important;
        border-radius: 8px !important;
        background: linear-gradient(135deg, #0b1e48 0%, #153b82 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 12px rgba(11, 30, 72, 0.18) !important;
        text-align: center !important;
        letter-spacing: 0.3px !important;
    }

    .zst-wpdm-meta-row {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .zst-wpdm-badge {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        background: #f8fafc !important;
        color: #475569 !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        padding: 5px 9px !important;
        border-radius: 6px !important;
        border: 1px solid #e2e8f0 !important;
    }

    .zst-wpdm-badge.zst-badge-pdf {
        background: #fef2f2 !important;
        color: #b91c1c !important;
        border-color: #fecaca !important;
    }

    /* Przycisk powrotu */
    .zst-back-news-wrap {
        margin: 14px 0 6px 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .zst-back-news-btn {
        display: inline-flex !important;
        width: 100% !important;
        justify-content: center !important;
        align-items: center !important;
        box-sizing: border-box !important;
        padding: 10px 14px !important;
        font-size: 13px !important;
        border-radius: 8px !important;
    }
}

/* Gwarancja jednej linii dla numeru telefonu w stopce na telefonach */
.zst-el-element-50796328 .zst-el-icon-list-item a[href^="tel:"],
.zst-el-element-50796328 .zst-footer-phone-item,
.zst-el-element-50796328 .zst-footer-phone-item .zst-el-icon-list-text,
.zst-footer-phone-link {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    display: inline-block !important;
}

@media (max-width: 768px) {
    .zst-el-element-50796328 .zst-el-icon-list-item:nth-child(2) .zst-el-icon-list-text,
    .zst-el-element-50796328 .zst-footer-phone-item .zst-el-icon-list-text {
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
    }
}

/* Header logo proportion enhancement - matches school name height / slightly above */
@media (min-width: 769px) {
    .zst-el-element-c71ee80 .zst-el-widget-image img.zst-header-emblem,
    .zst-el-element-c71ee80 img.zst-header-emblem,
    .zst-header-branding img.zst-header-emblem,
    .zst-header-emblem {
        height: 76px !important;
        max-height: 76px !important;
        width: auto !important;
        max-width: 68px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
    }
    .zst-header-branding {
        align-items: center !important;
    }
}
@media (max-width: 768px) {
    .zst-el-element-c71ee80 .zst-el-widget-image img.zst-header-emblem,
    .zst-el-element-c71ee80 img.zst-header-emblem,
    .zst-header-branding img.zst-header-emblem,
    .zst-header-emblem {
        height: 62px !important;
        max-height: 62px !important;
        width: auto !important;
        max-width: 53px !important;
        flex: 0 0 auto !important;
        object-fit: contain !important;
    }
    .zst-header-branding {
        align-items: center !important;
    }
}

/* ==========================================================================
   PERFECT RESPONSIVE FULL CALENDAR (/plan-roku-szkolnego/)
   ========================================================================== */
@media (min-width: 769px) {
    .zst-wk-short { display: none !important; }
    .zst-wk-full { display: inline !important; }
}

@media (max-width: 768px) {
    .zst-wk-full { display: none !important; }
    .zst-wk-short { display: inline !important; font-weight: 800 !important; }

    .zst-calendar-app-wrapper {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    /* 1. Compact Modern Download Banner */
    .zst-cal-download-banner {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 12px 14px !important;
        gap: 10px !important;
        border-radius: 12px !important;
        margin-bottom: 12px !important;
        height: auto !important;
    }
    .zst-cal-banner-left {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
    .zst-cal-banner-icon {
        font-size: 24px !important;
        flex: 0 0 auto !important;
    }
    .zst-cal-banner-title {
        font-size: 13.5px !important;
        margin: 0 0 2px 0 !important;
        line-height: 1.3 !important;
    }
    .zst-cal-banner-subtitle {
        font-size: 11px !important;
        margin: 0 !important;
        opacity: 0.85 !important;
    }
    .zst-cal-pdf-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 8px 12px !important;
        font-size: 12.5px !important;
        box-sizing: border-box !important;
        border-radius: 8px !important;
    }

    /* 2. Month Selector Tabs */
    .zst-month-tabs {
        gap: 6px !important;
        padding: 4px 0 10px !important;
        margin-bottom: 10px !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }
    .zst-month-tabs::-webkit-scrollbar {
        display: none !important;
    }
    .zst-m-btn {
        padding: 6px 12px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
        border-radius: 8px !important;
        flex: 0 0 auto !important;
    }
    .zst-m-badge {
        font-size: 10px !important;
        padding: 1px 5px !important;
        margin-left: 4px !important;
    }

    /* 3. Card Box & Month View (Eliminate 480px overflow) */
    .zst-calendar-card-box {
        padding: 14px 10px !important;
        border-radius: 12px !important;
        overflow-x: hidden !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-month-view {
        min-width: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 4. Month Header */
    .zst-cal-header {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        margin-bottom: 12px !important;
        padding-bottom: 10px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        gap: 8px !important;
    }
    .zst-cal-header-left {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 4px !important;
    }
    .zst-cal-title {
        font-size: 16px !important;
        font-weight: 800 !important;
        margin: 0 !important;
        padding-left: 8px !important;
        line-height: 1.2 !important;
        border-left: 3px solid #132c6b !important;
        color: #0f172a !important;
    }
    .zst-cal-tag {
        font-size: 10px !important;
        padding: 2px 7px !important;
        border-radius: 4px !important;
        white-space: normal !important;
        line-height: 1.25 !important;
    }
    .zst-cal-nav-buttons {
        display: flex !important;
        gap: 4px !important;
        align-self: flex-start !important;
    }
    .zst-nav-btn {
        width: 30px !important;
        height: 30px !important;
        font-size: 11px !important;
        border-radius: 6px !important;
    }

    /* 5. Weekdays (7 columns fit 100% width) */
    .zst-weekdays-row {
        display: grid !important;
        grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
        gap: 3px !important;
        width: 100% !important;
        margin-bottom: 5px !important;
        box-sizing: border-box !important;
    }
    .zst-weekdays-row > div {
        font-size: 11px !important;
        font-weight: 800 !important;
        padding: 6px 1px !important;
        text-align: center !important;
        background: #f8fafc !important;
        border-radius: 4px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        color: #475569 !important;
        line-height: 1.2 !important;
    }
    .zst-weekdays-row .zst-wk-sun {
        color: #dc2626 !important;
        background: #fef2f2 !important;
    }

    /* 6. Days Grid (7 columns fit 100% width) */
    .zst-days-grid {
        display: grid !important;
        grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
        gap: 3px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-cal-cell {
        min-height: 52px !important;
        padding: 4px 2px !important;
        border-radius: 6px !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        border: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
    }
    .zst-day-num {
        font-size: 11.5px !important;
        font-weight: 800 !important;
        margin-bottom: 2px !important;
        text-align: center !important;
        line-height: 1 !important;
    }
    .zst-cal-weekend {
        background: #fff8f8 !important;
        border-color: #fee2e2 !important;
    }
    .zst-cal-weekend .zst-day-num {
        color: #dc2626 !important;
    }
    .zst-cal-dim {
        background: #f8fafc !important;
        opacity: 0.45 !important;
    }
    .zst-event-tag {
        font-size: 7.5px !important;
        line-height: 1.1 !important;
        padding: 1.5px 2px !important;
        border-radius: 3px !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-weight: 700 !important;
        margin-top: auto !important;
    }

    /* 7. Agenda / Wykaz oficjalnych terminów */
    .zst-month-agenda {
        margin-top: 16px !important;
        padding-top: 14px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .zst-agenda-header {
        font-size: 11.5px !important;
        letter-spacing: 0.02em !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
        white-space: normal !important;
        word-break: break-word !important;
    }
    .zst-agenda-row {
        flex-direction: column !important;
        gap: 2px !important;
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
    .zst-agenda-date {
        min-width: 0 !important;
        font-size: 11.5px !important;
        color: #132c6b !important;
    }
    .zst-agenda-desc {
        font-size: 11.5px !important;
        line-height: 1.35 !important;
    }

    /* 8. Legend */
    .zst-calendar-legend {
        gap: 6px 12px !important;
        margin-top: 14px !important;
        padding-top: 10px !important;
        font-size: 10.5px !important;
    }
    .zst-leg-item {
        font-size: 10.5px !important;
    }
}

/* ==========================================================================
   HARMONIZED CALENDAR DOWNLOAD BANNER (Spójna biała karta z granatem)
   ========================================================================== */
.zst-page-content-wrap .zst-cal-download-banner,
.zst-cal-download-banner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #132c6b !important;
    padding: 16px 22px !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 16px rgba(19, 44, 107, 0.04) !important;
    margin-bottom: 20px !important;
    color: #0f172a !important;
}

.zst-cal-download-banner .zst-cal-banner-left {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.zst-cal-download-banner .zst-cal-banner-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #1e40af !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    flex: 0 0 auto !important;
}

.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-title,
.zst-cal-download-banner .zst-cal-banner-title {
    margin: 0 0 2px 0 !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

.zst-page-content-wrap .zst-cal-download-banner .zst-cal-banner-subtitle,
.zst-cal-download-banner .zst-cal-banner-subtitle {
    margin: 0 !important;
    font-size: 12.5px !important;
    color: #64748b !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn,
.zst-cal-download-banner a.zst-cal-pdf-btn,
.zst-cal-pdf-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #132c6b !important;
    color: #ffffff !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;
    transition: all 0.2s ease !important;
    border: none !important;
}

.zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn:hover,
.zst-cal-download-banner a.zst-cal-pdf-btn:hover {
    background: #0b1a40 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.3) !important;
}

@media (max-width: 768px) {
    .zst-page-content-wrap .zst-cal-download-banner,
    .zst-cal-download-banner {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 14px !important;
        gap: 12px !important;
        margin-bottom: 12px !important;
    }
    .zst-page-content-wrap .zst-cal-download-banner a.zst-cal-pdf-btn,
    .zst-cal-download-banner a.zst-cal-pdf-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 9px 14px !important;
        font-size: 13px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   CLEAN SINGLE PDF DOWNLOAD BUTTON (BEZ BANERA)
   ========================================================================== */
.zst-cal-download-wrap {
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 0 16px 0 !important;
    width: 100% !important;
}

.zst-page-content-wrap a.zst-cal-pdf-btn,
.zst-cal-download-wrap a.zst-cal-pdf-btn,
a.zst-cal-pdf-btn,
.zst-cal-pdf-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #132c6b !important;
    color: #ffffff !important;
    padding: 10px 22px !important;
    border-radius: 8px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;
    transition: all 0.2s ease !important;
    border: none !important;
    width: auto !important;
}

.zst-page-content-wrap a.zst-cal-pdf-btn:hover,
.zst-cal-download-wrap a.zst-cal-pdf-btn:hover,
a.zst-cal-pdf-btn:hover,
.zst-cal-pdf-btn:hover {
    background: #0b1a40 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(19, 44, 107, 0.3) !important;
}

.zst-cal-pdf-btn i {
    color: #ffffff !important;
    font-size: 15px !important;
}

@media (max-width: 768px) {
    .zst-cal-download-wrap {
        margin: 0 0 12px 0 !important;
    }
    .zst-page-content-wrap a.zst-cal-pdf-btn,
    .zst-cal-download-wrap a.zst-cal-pdf-btn,
    a.zst-cal-pdf-btn,
    .zst-cal-pdf-btn {
        width: 100% !important;
        padding: 11px 16px !important;
        font-size: 13.5px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   STOPKA MOBILE: ZMNIEJSZENIE ODSTĘPÓW TOP/BOTTOM I USUNIĘCIE PODKREŚLENIA
   ========================================================================== */
/* Usunięcie podkreślenia z numeru telefonu w stopce */
.zst-footer-phone-link,
a.zst-footer-phone-link,
.zst-el-element-50796328 a[href^="tel"],
.zst-el-element-50796328 a {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.zst-footer-phone-link:hover,
a.zst-footer-phone-link:hover,
.zst-el-element-50796328 a[href^="tel"]:hover {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: none !important;
}

@media (max-width: 767px) {
    /* Zmniejszenie górnego i dolnego odstępu (padding) w sekcji stopki */
    .zst-el-element-5e855e11 {
        padding-top: 24px !important;
        padding-bottom: 20px !important;
    }

    .zst-el-element-5e855e11 .zst-el-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Zmniejszenie odstępów między kolumnami stopki */
    .zst-el-element-5e855e11 .zst-el-column.zst-el-col-33 {
        width: 100% !important;
        padding: 0 !important;
        margin-bottom: 20px !important;
    }

    /* Ostatnia kolumna (Informacje prawne) nie generuje nadmiarowego odstępu na dole */
    .zst-el-element-5e855e11 .zst-el-column.zst-el-element-737b0917 {
        margin-bottom: 0 !important;
    }

    /* Dopasowanie nagłówków sekcji stopki */
    .zst-footer-col-title {
        font-size: 15px !important;
        margin: 0 0 12px 0 !important;
        padding-bottom: 8px !important;
    }

    /* Kompaktowe odstępy listy danych kontaktowych */
    .zst-el-element-50796328 .zst-el-icon-list-item {
        margin-bottom: 5px !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
    }

    /* Kompaktowe odstępy linków informacji prawnych */
    .zst-footer-links-list li {
        margin-bottom: 7px !important;
    }

    .zst-footer-links-list a {
        padding: 2px 0 !important;
        font-size: 13px !important;
    }

    /* Przycisk powrotu na górę */
    .zst-footer-top-link {
        margin-top: 14px !important;
        padding: 7px 14px !important;
        font-size: 12px !important;
    }
}


/* Source: livepl-homepage-engine.css */
/* ==========================================================================
   MASTER OVERRIDE: PRZYCISKI BOCZNE ZST-CKZiU (STATUT SZKOŁY, PODRĘCZNIKI, STOWARZYSZENIE, DZIENNIK, DOKUMENTY)
   BEZWZGLĘDNIE STATYCZNE (ZERO RUCHU), NAPISY I IKONY ZAWSZE BIAŁE (#ffffff)
   ========================================================================== */
.zst-el-element-4cdab61d .zst-el-icon-list-items {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 300px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item,
.zst-el-element-4cdab61d .zst-el-icon-list-item * {
  transform: none !important;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:focus,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:active {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.85) !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
  position: relative !important;
  transform: none !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a {
  background: transparent !important;
  box-shadow: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
  color: #ffffff !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-icon {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 6px !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 0 !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon {
  background: rgba(255, 255, 255, 0.22) !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-icon i,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-icon i {
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:focus .zst-el-icon-list-text,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:active .zst-el-icon-list-text {
  flex: 1 1 auto !important;
  white-space: nowrap !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  transform: none !important;
}

.zst-el-element-4cdab61d .zst-el-icon-list-item a::after,
.zst-el-element-4cdab61d .zst-el-icon-list-item a:hover::after {
  content: '\f054' !important;
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 900 !important;
  font-size: 10px !important;
  color: #ffffff !important;
  margin-left: auto !important;
  transform: none !important;
}

            /* ==========================================================================
               LIVE PRODUCTION NATIVE HOMEPAGE ENGINE - PIXEL-PERFECT SPECIFICATION
               100% zgodności z oryginalnym układem zst-el & tożsamością ZST-CKZiU
               ========================================================================== */

            /* --- GLOBAL CONTAINER GUARDS --- */
            html, body {
                overflow-x: hidden !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
            }
            .zst-native-home-wrapper {
                overflow-x: hidden !important;
                max-width: 100% !important;
                width: 100% !important;
            }

            /* --- MOBILE HEADER BRANDING & BURGER GUARD --- */
            @media (max-width: 768px) {
                .zst-el-element-c71ee80 .zst-el-container {
                    display: flex !important;
                    flex-direction: row !important;
                    justify-content: space-between !important;
                    align-items: center !important;
                    padding: 8px 12px !important;
                    width: 100% !important;
                    max-width: 100vw !important;
                    box-sizing: border-box !important;
                    gap: 8px !important;
                }
                .zst-el-element-f0f2e74 {
                    flex: 1 1 auto !important;
                    min-width: 0 !important;
                    max-width: calc(100% - 58px) !important;
                    width: auto !important;
                    padding: 0 !important;
                    margin: 0 !important;
                }
                .zst-el-element-2f4d7d6 {
                    flex: 0 0 50px !important;
                    width: 50px !important;
                    display: flex !important;
                    justify-content: flex-end !important;
                    align-items: center !important;
                    padding: 0 !important;
                    margin: 0 !important;
                }
                .zst-header-branding-link {
                    max-width: 100% !important;
                    display: flex !important;
                    align-items: center !important;
                    text-decoration: none !important;
                }
                .zst-header-branding {
                    display: flex !important;
                    align-items: center !important;
                    gap: 10px !important;
                    max-width: 100% !important;
                    min-width: 0 !important;
                }
                .zst-header-emblem {
                    height: 52px !important;
                    width: auto !important;
                    max-width: 44px !important;
                    flex: 0 0 auto !important;
                    object-fit: contain !important;
                }
                .zst-header-text {
                    display: flex !important;
                    flex-direction: column !important;
                    justify-content: center !important;
                    min-width: 0 !important;
                    flex: 1 1 auto !important;
                    overflow: hidden !important;
                    line-height: 1.18 !important;
                }
                .zst-header-title {
                    font-size: clamp(12px, 3.4vw, 15px) !important;
                    font-weight: 800 !important;
                    color: #ffffff !important;
                    letter-spacing: -0.2px !important;
                    margin-bottom: 2px !important;
                    white-space: normal !important;
                    line-height: 1.15 !important;
                }
                .zst-header-sub {
                    font-size: clamp(9.5px, 2.7vw, 11.5px) !important;
                    font-weight: 600 !important;
                    color: rgba(255, 255, 255, 0.95) !important;
                    letter-spacing: -0.1px !important;
                    white-space: normal !important;
                    line-height: 1.15 !important;
                }
                .zst-header-patron {
                    font-size: clamp(8.5px, 2.4vw, 10px) !important;
                    font-weight: 400 !important;
                    color: rgba(255, 255, 255, 0.82) !important;
                    letter-spacing: 0px !important;
                    margin-top: 1px !important;
                    white-space: normal !important;
                    line-height: 1.15 !important;
                }
            }
            @media (max-width: 380px) {
                .zst-header-emblem {
                    height: 46px !important;
                    max-width: 38px !important;
                }
                .zst-header-branding {
                    gap: 7px !important;
                }
                .zst-header-title {
                    font-size: 11.5px !important;
                }
                .zst-header-sub {
                    font-size: 9px !important;
                }
                .zst-header-patron {
                    font-size: 8px !important;
                }
            }

            @media (min-width: 769px) {
                .zst-el-element-27a1745,
                section.zst-el-element-27a1745,
                .zst-mobile-platforms-section {
                    display: none !important;
                }
            }
    @media (min-width: 769px) {
/* --- 1. HERO VIDEO BACKGROUND (ZST-CKZiU PROMO) & FALLBACK BANNER --- */
            .zst-el-element.zst-el-element-3abdd9df {
                width: 100% !important;
                background-color: rgb(11, 23, 54) !important;
                margin-top: 0 !important;
                margin-bottom: -11rem !important; /* -176px: dokładnie łączy się z sekcją platform */
                padding: 180px 0 172px 0 !important;
                min-height: 831px !important;
                position: relative !important;
                overflow: hidden !important;
                z-index: 0 !important;
                box-sizing: border-box !important;
            }
            .zst-hero-video-bg-wrap {
                position: absolute !important;
                top: 0 !important;
                left: 0 !important;
                right: 0 !important;
                bottom: 0 !important;
                width: 100% !important;
                height: 100% !important;
                overflow: hidden !important;
                z-index: 0 !important;
                pointer-events: none !important;
                background-color: #0b1736 !important;
            }
            .zst-el-element.zst-el-element-3abdd9df .zst-el-background-slideshow__slide__image {
                position: absolute !important;
                top: 0 !important;
                left: 0 !important;
                width: 100% !important;
                height: 100% !important;
                background-repeat: no-repeat !important;
                background-position: center center !important;
                background-size: cover !important;
                display: block !important;
                z-index: 0 !important;
            }
            .zst-hero-video-iframe {
                position: absolute !important;
                top: 50% !important;
                left: 50% !important;
                width: 100vw !important;
                height: 56.25vw !important; /* 16:9 proporcja */
                min-height: 100% !important;
                min-width: 177.77vh !important;
                transform: translate(-50%, -50%) !important;
                pointer-events: none !important;
                border: none !important;
                opacity: 1 !important;
                z-index: 1 !important;
            }
            .zst-hero-video-overlay {
                position: absolute !important;
                top: 0 !important;
                left: 0 !important;
                right: 0 !important;
                bottom: 0 !important;
                width: 100% !important;
                height: 100% !important;
                background: linear-gradient(90deg, rgba(11, 23, 54, 0.40) 0%, rgba(11, 23, 54, 0.15) 50%, rgba(11, 23, 54, 0.70) 100%) !important;
                z-index: 2 !important;
                pointer-events: none !important;
            }
            .zst-mobile-video-wrap {
                position: relative !important;
                width: 100% !important;
                aspect-ratio: 16 / 9 !important;
                border-radius: 10px !important;
                overflow: hidden !important;
                box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
                margin-bottom: 12px !important;
                background-color: #0b1736 !important;
            }
            .zst-mobile-video-wrap iframe {
                width: 100% !important;
                height: 100% !important;
                border: none !important;
                display: block !important;
            }
            .zst-el-element.zst-el-element-3abdd9df > .zst-el-container {
                max-width: 1245px !important;
                margin: 0 auto !important;
                padding: 0 15px !important;
                display: flex !important;
                min-height: 479px !important;
                align-items: stretch !important;
                position: relative !important;
                z-index: 2 !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-285e0553 {
                width: 77.84% !important;
                flex: 0 0 77.84% !important;
                min-height: 479px !important;
            }
            .zst-el-element.zst-el-element-494eeaaf {
                width: 22.16% !important;
                flex: 0 0 22.16% !important;
                display: flex !important;
                flex-direction: column !important;
                align-self: stretch !important;
                z-index: 2 !important;
                box-shadow: none !important;
            }
            .zst-el-element.zst-el-element-494eeaaf > .zst-el-element-populated {
                background-color: #21397DF5 !important;
                border-radius: 3px 3px 0 0 !important;
                padding: 19px 18px 0px 24px !important; /* Dokładny padding z zst-ela */
                box-shadow: none !important;
                box-sizing: border-box !important;
                display: flex !important;
                flex-direction: column !important;
                height: 100% !important;
                min-height: 479px !important;
            }
            .zst-el-element.zst-el-element-53e43f9 {
                margin: 0 !important;
                height: 19px !important;
            }
            .zst-el-element.zst-el-element-53e43f9 .zst-el-spacer-inner {
                height: 19px !important;
            }
            .zst-el-element.zst-el-element-d7f8901 {
                margin: 0 !important;
                padding: 0 !important;
            }
            .zst-el-element.zst-el-element-d7f8901 img {
                width: 100% !important;
                max-width: 227px !important;
                height: auto !important;
                border-radius: 8px !important;
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
                display: block !important;
                margin: 0 auto !important;
            }
            .zst-el-element.zst-el-element-1d6ae1e,
            .zst-el-element.zst-el-element-1b54ae3,
            .zst-el-element.zst-el-element-1145caa {
                margin-top: 6px !important;
                margin-bottom: 0 !important;
                padding: 0 !important;
            }
            .zst-el-element.zst-el-element-1d6ae1e a.zst-el-button {
                background-color: #E91515 !important;
                color: #ffffff !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 12px !important;
                font-weight: 700 !important;
                line-height: 12px !important;
                text-align: center !important;
                padding: 9px 14px !important;
                border-radius: 8px !important;
                box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1) !important;
                display: block !important;
                text-decoration: none !important;
                margin: 6px auto 0 auto !important;
                max-width: 221px !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-1b54ae3 a.zst-el-button {
                background-color: #3BB34A !important;
                color: #ffffff !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 12px !important;
                font-weight: 700 !important;
                line-height: 12px !important;
                text-align: center !important;
                padding: 9px 14px !important;
                border-radius: 8px !important;
                box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1) !important;
                display: block !important;
                text-decoration: none !important;
                margin: 6px auto 0 auto !important;
                max-width: 221px !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-1145caa a.zst-el-button {
                background-color: #9A6EE4 !important;
                color: #ffffff !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 10px !important;
                font-weight: 700 !important;
                letter-spacing: 0.6px !important;
                line-height: 12px !important;
                text-align: center !important;
                padding: 9px 14px !important;
                border-radius: 8px !important;
                box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1) !important;
                display: block !important;
                text-decoration: none !important;
                margin: 6px auto 0 auto !important;
                max-width: 221px !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }

}

            /* --- 2. PLATFORMS BAR (ZPE & VULCAN - CIEMNOGRANATOWY PAS #21397D) --- */
            .zst-el-element.zst-el-element-3aa54026 {
                width: 100% !important;
                background-color: #21397D !important;
                min-height: 160px !important;
                margin: 0 !important;
                padding: 0 !important;
                position: relative !important;
                z-index: 1 !important;
                box-shadow: none !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-3aa54026 > .zst-el-container {
                max-width: 1245px !important;
                margin: 0 auto !important;
                padding: 0 15px !important;
                min-height: 160px !important;
                display: flex !important;
                align-items: center !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-3aa54026 .zst-el-column.zst-el-element-2738d164 {
                width: 38.92% !important;
                flex: 0 0 38.92% !important;
                padding: 0 10px !important;
                margin: 0 !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-3aa54026 .zst-el-column.zst-el-element-592ea69 {
                width: 38.92% !important;
                flex: 0 0 38.92% !important;
                padding: 0 10px !important;
                margin: 0 !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-3aa54026 .zst-el-column.zst-el-element-269e57ef {
                width: 22.16% !important;
                flex: 0 0 22.16% !important;
                padding: 0 !important;
                margin: 0 !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-3aa54026 .zst-el-widget-container {
                padding: 0 !important;
                margin: 0 !important;
            }
            .zst-el-element.zst-el-element-3aa54026 img {
                width: 422px !important;
                max-width: 100% !important;
                height: 125px !important;
                object-fit: contain !important;
                display: block !important;
                margin: 0 auto !important;
                border-radius: 4px !important;
            }

            /* --- 3. MAIN SECTION (SZEROKOŚĆ 1245PX, NEWS GRID 77.84% + GRANATOWY SIDEBAR 22.16%) --- */
            .zst-el-element.zst-el-element-644d4792 {
                width: 100% !important;
                background-color: #ffffff !important;
                margin: 0 !important;
                padding: 0 !important;
                position: relative !important;
                z-index: 5 !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-644d4792 > .zst-el-container {
                max-width: 1245px !important;
                margin: 0 auto !important;
                padding: 0 15px !important;
                display: flex !important;
                align-items: stretch !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-74fb1440 {
                width: 77.84% !important;
                flex: 0 0 77.84% !important;
                padding-right: 25px !important;
                padding-top: 20px !important;
                display: flex !important;
                flex-direction: column !important;
                align-self: stretch !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-e9fa1cd {
                width: 22.16% !important;
                flex: 0 0 22.16% !important;
                position: relative !important;
                z-index: 10 !important;
                display: flex !important;
                flex-direction: column !important;
                align-self: stretch !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-e9fa1cd > .zst-el-element-populated {
                background-color: #21397D !important;
                margin-top: -160px !important; /* -160px: Wpina się bezpośrednio w sekcję platform */
                margin-bottom: 0 !important;
                padding: 0 24px 20px 24px !important;
                border-radius: 0 !important;
                box-shadow: none !important;
                box-sizing: border-box !important;
                display: flex !important;
                flex-direction: column !important;
                justify-content: flex-start !important;
                align-items: center !important;
                height: calc(100% + 160px) !important;
                min-height: calc(100% + 160px) !important;
            }
            .zst-el-element.zst-el-element-e9fa1cd > .zst-el-element-populated > * {
                flex: 0 0 auto !important;
                flex-grow: 0 !important;
                --flex-grow: 0 !important;
                width: 100% !important;
                max-width: 227px !important;
            }

            /* LOGO 50 LAT ZST NACHODZĄCE Z GÓRY */
            .zst-el-element.zst-el-element-e5914ca {
                margin: -45px 0 15px 0 !important;
                text-align: center !important;
                z-index: 20 !important;
                flex: 0 0 auto !important;
                flex-grow: 0 !important;
                --flex-grow: 0 !important;
                height: auto !important;
            }
            .zst-el-element.zst-el-element-e5914ca img {
                width: 171px !important;
                max-width: 100% !important;
                height: 162px !important;
                object-fit: contain !important;
                margin: 0 auto !important;
                display: block !important;
                opacity: 0.95 !important;
            }

            /* ELEMENTY SIDEBARU */
            .zst-el-element-00f724a img,
            .zst-el-element-7b8ead2 img,
            .zst-el-element-c119e0f img,
            .zst-el-element-fa360e5 img,
            .zst-el-element-1cb4553 img {
                width: 100% !important;
                height: auto !important;
                display: block !important;
                margin: 0 auto !important;
                border-radius: 3px !important;
            }
            .zst-el-element-18bb8454 p,
            .zst-el-element-21b1fa15 p {
                color: #ffffff !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 12px !important;
                line-height: 1.5 !important;
                text-align: center !important;
                margin: 10px 0 0 0 !important;
            }
            .zst-el-element-1848988,
            .zst-el-element-35443b6,
            .zst-el-element-fe9a426,
            .zst-el-element-8cabb53 {
                margin: 20px 0 !important;
            }
            .zst-el-divider-separator {
                display: block !important;
                border-top: 1px solid rgba(255, 255, 255, 0.25) !important;
            }

            /* KALENDARZ W SIDEBARZE */
            .zst-calendar-mockup .zst-home-cal-card {
                background: #ffffff !important;
                border-radius: 8px !important;
                padding: 14px 12px !important;
                margin: 0 0 0 0 !important;
                box-shadow: 0 4px 14px rgba(0,0,0,0.12) !important;
                box-sizing: border-box !important;
            }
            .zst-home-cal-head {
                display: flex !important;
                justify-content: space-between !important;
                align-items: center !important;
                margin-bottom: 12px !important;
                border-bottom: 1px solid #f1f5f9 !important;
                padding-bottom: 10px !important;
            }
            .zst-home-cal-title-wrap {
                display: flex !important;
                align-items: center !important;
                gap: 8px !important;
            }
            .zst-home-cal-icon {
                color: #21397D !important;
            }
            .zst-home-cal-title {
                font-family: "Raleway", sans-serif !important;
                font-size: 15px !important;
                font-weight: 700 !important;
                color: #0b1736 !important;
                margin: 0 !important;
            }
            .zst-home-cal-subtitle {
                font-size: 10px !important;
                color: #64748b !important;
            }
            .zst-home-cal-badge {
                background: #eff6ff !important;
                color: #1d4ed8 !important;
                font-size: 10px !important;
                font-weight: 700 !important;
                padding: 3px 8px !important;
                border-radius: 12px !important;
            }
            .zst-home-cal-btn {
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 6px !important;
                background: #132c6b !important;
                color: #ffffff !important;
                text-decoration: none !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 12px !important;
                font-weight: 600 !important;
                padding: 8px 10px !important;
                border-radius: 6px !important;
                margin: 0 0 20px 0 !important;
                transition: background 0.2s ease !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }
            .zst-home-cal-btn:hover {
                background: #1e3a8a !important;
                color: #ffffff !important;
            }

            /* --- CZYTELNY KALENDARZ DLA SMARTFONÓW --- */
            .zst-mobile-calendar-wrapper {
                display: none;
                margin: 8px 0 22px 0 !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }
            .zst-mobile-cal-card {
                background: #ffffff !important;
                border: 1px solid #e2e8f0 !important;
                border-radius: 14px !important;
                padding: 16px 14px 14px 14px !important;
                box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06) !important;
                box-sizing: border-box !important;
                width: 100% !important;
            }
            .zst-mobile-cal-header {
                display: flex !important;
                justify-content: space-between !important;
                align-items: center !important;
                padding-bottom: 12px !important;
                margin-bottom: 12px !important;
                border-bottom: 1px solid #f1f5f9 !important;
            }
            .zst-mobile-cal-title-box {
                display: flex !important;
                align-items: center !important;
                gap: 10px !important;
            }
            .zst-mobile-cal-icon {
                width: 34px !important;
                height: 34px !important;
                border-radius: 8px !important;
                background: #eff6ff !important;
                color: #132c6b !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                flex-shrink: 0 !important;
            }
            .zst-mobile-cal-heading {
                font-family: 'Raleway', sans-serif !important;
                font-size: 15px !important;
                font-weight: 800 !important;
                color: #0b1736 !important;
                margin: 0 !important;
                line-height: 1.25 !important;
            }
            .zst-mobile-cal-subheading {
                font-size: 11px !important;
                color: #64748b !important;
                display: block !important;
                margin-top: 2px !important;
            }
            .zst-mobile-cal-badge {
                background: #132c6b !important;
                color: #ffffff !important;
                font-size: 11px !important;
                font-weight: 700 !important;
                padding: 3px 9px !important;
                border-radius: 12px !important;
                letter-spacing: 0.5px !important;
                flex-shrink: 0 !important;
            }
            .zst-mobile-cal-list {
                display: flex !important;
                flex-direction: column !important;
                gap: 10px !important;
                margin-bottom: 14px !important;
            }
            .zst-mobile-cal-list .zst-h-ev-row {
                display: flex !important;
                align-items: center !important;
                gap: 12px !important;
                background: #f8fafc !important;
                border: 1px solid #e2e8f0 !important;
                border-radius: 10px !important;
                padding: 10px 12px !important;
                box-sizing: border-box !important;
                transition: background 0.15s ease !important;
            }
            .zst-mobile-cal-list .zst-h-ev-row:active {
                background: #f1f5f9 !important;
            }
            .zst-mobile-cal-list .zst-h-ev-date {
                width: 74px !important;
                min-width: 74px !important;
                height: 50px !important;
                border-radius: 8px !important;
                display: flex !important;
                flex-direction: column !important;
                align-items: center !important;
                justify-content: center !important;
                flex-shrink: 0 !important;
                padding: 4px 2px !important;
                box-sizing: border-box !important;
            }
            .zst-mobile-cal-list .zst-ev-mo {
                font-size: 8px !important;
                font-weight: 800 !important;
                letter-spacing: 0.3px !important;
                text-transform: uppercase !important;
                line-height: 1 !important;
                margin-bottom: 2px !important;
            }
            .zst-mobile-cal-list .zst-ev-days {
                font-size: 19px !important;
                font-weight: 900 !important;
                line-height: 1 !important;
                font-family: 'Raleway', sans-serif !important;
            }
            .zst-mobile-cal-list .zst-ev-days.zst-days-fit {
                font-size: 12.5px !important;
            }
            .zst-mobile-cal-list .zst-h-ev-info {
                flex: 1 1 auto !important;
                min-width: 0 !important;
            }
            .zst-mobile-cal-list .zst-h-ev-name {
                font-size: 13.5px !important;
                font-weight: 700 !important;
                color: #0f172a !important;
                line-height: 1.35 !important;
                margin-bottom: 3px !important;
                white-space: normal !important;
                overflow: visible !important;
                text-overflow: clip !important;
            }
            .zst-mobile-cal-list .zst-h-ev-desc {
                font-size: 12px !important;
                color: #64748b !important;
                line-height: 1.35 !important;
                white-space: normal !important;
                overflow: visible !important;
                text-overflow: clip !important;
            }
            .zst-mobile-cal-button {
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 8px !important;
                background: #132c6b !important;
                color: #ffffff !important;
                text-decoration: none !important;
                font-family: 'Raleway', sans-serif !important;
                font-size: 13px !important;
                font-weight: 700 !important;
                padding: 11px 16px !important;
                border-radius: 8px !important;
                box-shadow: 0 2px 8px rgba(19, 44, 107, 0.2) !important;
                transition: background 0.2s ease, transform 0.15s ease !important;
                width: 100% !important;
                box-sizing: border-box !important;
                text-align: center !important;
            }
            .zst-mobile-cal-button:active {
                background: #0e1e47 !important;
                transform: scale(0.99) !important;
            }

            /* --- FILTRY KATEGORII W AKTUALNOŚCIACH (GRANATOWE PIGUŁKI Z PRZEWIJANIEM POZIOMYM) --- */
            .pp-post-filters-container {
                margin-bottom: 24px !important;
            }
            .pp-post-filters {
                display: flex !important;
                flex-wrap: nowrap !important;
                gap: 8px !important;
                list-style: none !important;
                padding: 2px !important;
                margin: 0 !important;
                overflow-x: auto !important;
                -webkit-overflow-scrolling: touch !important;
                scrollbar-width: thin !important;
            }
            .pp-post-filters::-webkit-scrollbar {
                height: 4px !important;
            }
            .pp-post-filters::-webkit-scrollbar-thumb {
                background: rgba(33, 57, 125, 0.2) !important;
                border-radius: 4px !important;
            }
            .pp-post-filter {
                background-color: #132c6b !important;
                color: #ffffff !important;
                border: 1px solid #132c6b !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 13px !important;
                font-weight: 600 !important;
                padding: 7px 16px !important;
                border-radius: 20px !important;
                cursor: pointer !important;
                white-space: nowrap !important;
                flex-shrink: 0 !important;
                margin: 0 5px 5px 0 !important;
                transition: all 0.2s ease !important;
            }
            .pp-post-filter:hover {
                background-color: #21397D !important;
                border-color: #21397D !important;
                color: #ffffff !important;
            }
            .pp-post-filter.pp-filter-current {
                background-color: #21397D !important;
                color: #ffffff !important;
                border-color: #21397D !important;
                box-shadow: 0 2px 8px rgba(33,57,125,0.3) !important;
            }

            /* --- SIATKA KART POSTÓW (DOKŁADNY UKŁAD POWERPACK: 3 KOLUMNY X 3 RZĘDY) --- */
            #zst-posts-grid.pp-posts-grid {
                display: flex !important;
                flex-wrap: wrap !important;
                margin: 0 0 0 -25px !important;
                padding: 0 !important;
                width: calc(100% + 25px) !important;
                box-sizing: border-box !important;
            }
            #zst-posts-grid .pp-post-wrap {
                width: 33.333333% !important;
                flex: 0 0 33.333333% !important;
                max-width: 33.333333% !important;
                padding: 0 0 0 25px !important;
                margin: 0 0 25px 0 !important;
                box-sizing: border-box !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical {
                position: relative !important;
                width: 100% !important;
                height: 460px !important;
                border-radius: 14px !important;
                border: 1px solid rgb(203, 213, 225) !important;
                box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
                overflow: hidden !important;
                background: #ffffff !important;
                display: flex !important;
                flex-direction: column !important;
                justify-content: flex-end !important;
                transition: transform 0.25s ease, box-shadow 0.25s ease !important;
                box-sizing: border-box !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical:hover {
                transform: translateY(-4px) !important;
                box-shadow: 0 12px 30px rgba(19, 44, 107, 0.18) !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-thumbnail {
                position: absolute !important;
                inset: 0 !important;
                width: 100% !important;
                height: 100% !important;
                z-index: 1 !important;
                border-radius: 14px !important;
                margin: 0 !important;
                background: #f1f5f9 !important;
                overflow: hidden !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-thumbnail a {
                display: block !important;
                width: 100% !important;
                height: 100% !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-thumbnail img {
                width: 100% !important;
                height: 100% !important;
                object-fit: cover !important;
                object-position: center top !important;
                display: block !important;
                transition: transform 0.3s ease !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical:hover .pp-post-thumbnail img {
                transform: scale(1.03) !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .zst-thumb-placeholder {
                width: 100% !important;
                height: 100% !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                background: linear-gradient(135deg, #132c6b 0%, #21397d 100%) !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .zst-placeholder-badge {
                color: #ffffff !important;
                font-family: "Raleway", sans-serif !important;
                font-weight: 800 !important;
                font-size: 16px !important;
                letter-spacing: 1px !important;
            }

            /* DATA W LEWYM GÓRNYM ROGU (FROSTED GLASS BADGE) */
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-event-date {
                position: absolute !important;
                top: 12px !important;
                left: 12px !important;
                width: 52px !important;
                height: 52px !important;
                min-width: 52px !important;
                min-height: 52px !important;
                padding: 0 !important;
                background: rgba(19, 44, 107, 0.94) !important;
                backdrop-filter: blur(4px) !important;
                color: #ffffff !important;
                border-radius: 10px !important;
                display: flex !important;
                flex-direction: column !important;
                justify-content: center !important;
                align-items: center !important;
                text-align: center !important;
                line-height: 1 !important;
                box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
                border: 1px solid rgba(255, 255, 255, 0.25) !important;
                z-index: 10 !important;
                box-sizing: border-box !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-month {
                font-family: "Raleway", sans-serif !important;
                font-size: 11px !important;
                font-weight: 700 !important;
                text-transform: uppercase !important;
                line-height: 1 !important;
                margin-bottom: 2px !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-day {
                font-family: "Raleway", sans-serif !important;
                font-size: 18px !important;
                font-weight: 800 !important;
                line-height: 1 !important;
            }

            /* TREŚĆ KARTY - DOLNY PANEL SZKLANY (FROSTED GLASS) */
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-content-wrap {
                position: relative !important;
                z-index: 3 !important;
                background: linear-gradient(rgba(255, 255, 255, 0.76) 0%, rgba(255, 255, 255, 0.92) 100%) !important;
                backdrop-filter: blur(14px) saturate(160%) !important;
                border-radius: 16px 16px 13px 13px !important;
                border-top: 1px solid rgba(255, 255, 255, 0.9) !important;
                box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;
                padding: 12px 16px 14px !important;
                margin: 0 !important;
                flex: 0 0 auto !important;
                text-align: center !important;
                transition: 0.25s !important;
                box-sizing: border-box !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical:hover .pp-post-content-wrap {
                background: linear-gradient(rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.97) 100%) !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-title {
                font-family: "Raleway", sans-serif !important;
                font-size: 14.5px !important;
                font-weight: 700 !important;
                line-height: 1.35 !important;
                margin: 0 0 5px 0 !important;
                text-align: center !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-title a {
                color: #0f172a !important;
                text-decoration: none !important;
                transition: color 0.2s !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical:hover .pp-post-title a {
                color: #132c6b !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-post-excerpt {
                font-size: 12px !important;
                line-height: 1.4 !important;
                color: #1e293b !important;
                margin: 0 0 8px 0 !important;
                text-align: center !important;
                display: -webkit-box !important;
                -webkit-line-clamp: 2 !important;
                -webkit-box-orient: vertical !important;
                overflow: hidden !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-posts-button {
                background: rgb(19, 44, 107) !important;
                color: #ffffff !important;
                border-radius: 8px !important;
                font-weight: 700 !important;
                font-size: 11.5px !important;
                letter-spacing: 0.5px !important;
                padding: 8px 18px !important;
                transition: 0.25s !important;
                align-self: center !important;
                margin: 0 auto !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                text-align: center !important;
                text-decoration: none !important;
            }
            #zst-posts-grid .pp-post.zst-card-vertical .pp-posts-button:hover {
                background: #21397D !important;
                color: #ffffff !important;
                transform: translateY(-1px) !important;
            }

            /* PRZYCISK WCZYTAJ WIĘCEJ */
            .zst-load-more-center {
                text-align: center !important;
                margin-top: 25px !important;
                margin-bottom: 25px !important;
            }
            .zst-exact-load-more {
                background: #132c6b !important;
                color: #ffffff !important;
                border: none !important;
                font-family: "Raleway", sans-serif !important;
                font-size: 13px !important;
                font-weight: 700 !important;
                padding: 12px 28px !important;
                border-radius: 24px !important;
                cursor: pointer !important;
                box-shadow: 0 4px 12px rgba(19, 44, 107, 0.25) !important;
                transition: all 0.2s ease !important;
                display: inline-flex !important;
                align-items: center !important;
                gap: 8px !important;
            }
            .zst-exact-load-more:hover {
                background: #0b1a40 !important;
                transform: translateY(-2px) !important;
            }
            .zst-load-spinner {
                display: none;
                width: 14px;
                height: 14px;
                border: 2px solid #ffffff;
                border-top-color: transparent;
                border-radius: 50%;
                animation: zst-spin 0.6s linear infinite;
            }
            .zst-exact-load-more.loading .zst-load-spinner {
                display: inline-block;
            }
            @keyframes zst-spin {
                to { transform: rotate(360deg); }
            }

            /* --- 4. SEKCJA EGZAMINY I PRAKTYKI (PEŁNA SZEROKOŚĆ EDGE-TO-EDGE 1920PX) --- */
            .zst-el-element.zst-el-element-43a8284f {
                width: 100% !important;
                background-color: #21397D !important;
                margin: 0 !important;
                padding: 45px 0 !important;
                position: relative !important;
                z-index: 4 !important;
                box-shadow: none !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-43a8284f > .zst-el-container {
                max-width: 1380px !important;
                margin: 0 auto !important;
                padding: 0 15px !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-items {
                list-style: none !important;
                padding: 0 !important;
                margin: 0 !important;
                display: flex !important;
                flex-direction: column !important;
                gap: 8px !important;
                width: 100% !important;
                max-width: 300px !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item {
                margin: 0 !important;
                padding: 0 !important;
                width: 100% !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:focus,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:active {
                display: flex !important;
                align-items: center !important;
                gap: 12px !important;
                color: #ffffff !important;
                font-family: inherit !important;
                font-size: 12px !important;
                font-weight: 700 !important;
                letter-spacing: 0.5px !important;
                padding: 10px 16px !important;
                border: 1.5px solid rgba(255, 255, 255, 0.85) !important;
                border-radius: 8px !important;
                text-decoration: none !important;
                width: 100% !important;
                box-sizing: border-box !important;
                position: relative !important;
                transform: none !important;
                transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a {
                background: transparent !important;
                box-shadow: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover {
                background: rgba(255, 255, 255, 0.12) !important;
                border-color: #ffffff !important;
                box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
                color: #ffffff !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-icon {
                width: 28px !important;
                height: 28px !important;
                min-width: 28px !important;
                border-radius: 6px !important;
                background: rgba(255, 255, 255, 0.12) !important;
                border: 1px solid rgba(255, 255, 255, 0.25) !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                margin-right: 0 !important;
                font-size: 12px !important;
                color: #ffffff !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover .zst-el-icon-list-icon {
                background: rgba(255, 255, 255, 0.22) !important;
                border-color: rgba(255, 255, 255, 0.45) !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-icon i,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover .zst-el-icon-list-icon i {
                color: #ffffff !important;
                font-size: 12px !important;
                font-weight: 900 !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-text,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover .zst-el-icon-list-text,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:focus .zst-el-icon-list-text,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:active .zst-el-icon-list-text {
                flex: 1 1 auto !important;
                white-space: nowrap !important;
                color: #ffffff !important;
                font-weight: 700 !important;
                font-size: 12px !important;
                letter-spacing: 0.5px !important;
                transform: none !important;
            }
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a::after,
            .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a:hover::after {
                content: '\f054' !important;
                font-family: 'Font Awesome 5 Free' !important;
                font-weight: 900 !important;
                font-size: 10px !important;
                color: #ffffff !important;
                margin-left: auto !important;
                transform: none !important;
            }

            /* --- 5. SEKCJA NASI PARTNERZY (SLIDER / KARUZELA CYKLICZNA) --- */
            .zst-el-element.zst-el-element-521df90,
            section.zst-el-element.zst-el-element-521df90 {
                width: 100% !important;
                background-color: rgb(248, 250, 252) !important;
                padding: 24px 0 28px 0 !important;
                margin: 0 !important;
                min-height: 0 !important;
                height: auto !important;
                overflow: hidden !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-521df90 > .zst-el-container {
                max-width: 1380px !important;
                margin: 0 auto !important;
                padding: 0 15px !important;
                box-sizing: border-box !important;
            }
            .zst-partners-header {
                text-align: left !important;
                margin-bottom: 16px !important;
            }
            .zst-partners-title {
                font-family: "Raleway", sans-serif !important;
                font-size: 26px !important;
                font-weight: 700 !important;
                color: #0b1736 !important;
                margin: 0 !important;
                display: inline-block !important;
            }
            .zst-partners-nasi {
                position: relative !important;
                display: inline-block !important;
            }
            .zst-partners-nasi::after {
                content: '' !important;
                position: absolute !important;
                bottom: -3px !important;
                left: 0 !important;
                width: 100% !important;
                height: 3px !important;
                background: #D98014 !important;
                border-radius: 2px !important;
            }
            .zst-partners-carousel-wrap {
                position: relative !important;
                width: 100% !important;
                display: flex !important;
                align-items: center !important;
                box-sizing: border-box !important;
            }
            .zst-partners-viewport {
                width: 100% !important;
                overflow: hidden !important;
                position: relative !important;
                padding: 4px 0 !important;
            }
            .zst-partners-track {
                display: flex !important;
                flex-direction: row !important;
                align-items: center !important;
                width: 100% !important;
                margin: 0 !important;
                padding: 0 !important;
                list-style: none !important;
                transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
                will-change: transform !important;
            }
            .zst-partner-item {
                flex-shrink: 0 !important;
                box-sizing: border-box !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
            }
            /* Desktop: 5 items visible */
            @media (min-width: 1025px) {
                .zst-partner-item {
                    flex: 0 0 20% !important;
                    max-width: 20% !important;
                    padding: 0 10px !important;
                }
            }
            /* Tablet: 3 items visible */
            @media (min-width: 769px) and (max-width: 1024px) {
                .zst-partner-item {
                    flex: 0 0 33.333% !important;
                    max-width: 33.333% !important;
                    padding: 0 8px !important;
                }
            }
            /* Mobile: 1 item visible, perfectly centered, compact section height */
            @media (max-width: 768px) {
                .zst-el-element.zst-el-element-521df90,
                section.zst-el-element.zst-el-element-521df90,
                html body .zst-el-element.zst-el-element-521df90 {
                    padding: 14px 12px 16px 12px !important;
                    min-height: 0 !important;
                    height: auto !important;
                    margin: 0 !important;
                }
                .zst-partners-header {
                    margin-bottom: 10px !important;
                }
                .zst-partners-title {
                    font-size: 20px !important;
                    line-height: 1.2 !important;
                }
                .zst-partner-item {
                    flex: 0 0 100% !important;
                    max-width: 100% !important;
                    width: 100% !important;
                    padding: 0 !important;
                    justify-content: center !important;
                }
                .zst-partner-card {
                    width: 240px !important;
                    max-width: 85% !important;
                    height: 68px !important;
                    margin: 0 auto !important;
                    padding: 6px 14px !important;
                }
                .zst-partner-card img {
                    max-height: 44px !important;
                }
                .zst-partners-nav {
                    display: none !important;
                }
            }
            .zst-partner-card {
                background: #ffffff !important;
                border: 1px solid #cbd5e1 !important;
                border-radius: 10px !important;
                padding: 8px 16px !important;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
                height: 74px !important;
                width: 100%;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                box-sizing: border-box !important;
                transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
            }
            .zst-partner-card:hover {
                transform: translateY(-2px) !important;
                box-shadow: 0 6px 16px rgba(19, 44, 107, 0.1) !important;
                border-color: #94a3b8 !important;
            }
            .zst-partner-card img {
                max-height: 48px !important;
                max-width: 85% !important;
                width: auto !important;
                height: auto !important;
                object-fit: contain !important;
                margin: auto !important;
                display: block !important;
            }
            .zst-partners-nav {
                position: absolute !important;
                top: 50% !important;
                transform: translateY(-50%) !important;
                z-index: 10 !important;
                width: 34px !important;
                height: 34px !important;
                border-radius: 50% !important;
                background: #ffffff !important;
                border: 1px solid #cbd5e1 !important;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                cursor: pointer !important;
                color: #1e293b !important;
                font-size: 15px !important;
                line-height: 1 !important;
                padding: 0 !important;
                transition: all 0.2s ease !important;
            }
            .zst-partners-nav:hover {
                background: #142750 !important;
                color: #ffffff !important;
                border-color: #142750 !important;
            }
            .zst-partners-prev {
                left: -16px !important;
            }
            .zst-partners-next {
                right: -16px !important;
            }

            /* --- 6. SEKCJA ORGAN PROWADZĄCY (MIASTO LESZNO) --- */
            .zst-el-element.zst-el-element-8e318b9 {
                width: 100% !important;
                padding: 0 !important;
                margin: 0 !important;
                background-color: transparent !important;
                min-height: 137px !important;
                box-sizing: border-box !important;
            }
            .zst-el-element.zst-el-element-8e318b9 > .zst-el-container {
                max-width: 1140px !important;
                margin: 0 auto !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 40px !important;
                min-height: 137px !important;
                box-sizing: border-box !important;
            }
            .zst-el-element-d16c92b {
                font-family: "Raleway", sans-serif !important;
                font-size: 24px !important;
                font-weight: 900 !important;
                color: #21397D !important;
                letter-spacing: 0.5px !important;
                line-height: 1.25 !important;
                width: auto !important;
                max-width: 450px !important;
            }
            .zst-jednostka-box {
                display: flex !important;
                flex-direction: column !important;
                gap: 4px !important;
                text-align: left !important;
            }
            .zst-jednostka-l1,
            .zst-jednostka-l2 {
                display: block !important;
                white-space: nowrap !important;
            }
            .zst-el-element-71b0351 img,
            .zst-el-element-074f7c5 img {
                height: 114px !important;
                width: 100px !important;
                object-fit: contain !important;
                display: block !important;
            }

            /* --- WIDOKI RESPONSYWNE (TABLET & SMARTFON) --- */
            @media (min-width: 1025px) {
                .zst-el-hidden-desktop,
                .zst-mobile-calendar-wrapper {
                    display: none !important;
                }
            }

            @media (min-width: 768px) and (max-width: 1024px) {
                .zst-el-hidden-tablet,
                .zst-mobile-calendar-wrapper {
                    display: none !important;
                }
                #zst-posts-grid .pp-post-wrap {
                    width: 50% !important;
                    flex: 0 0 50% !important;
                    max-width: 50% !important;
                }
                .zst-el-element.zst-el-element-74fb1440 {
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    padding-right: 0 !important;
                }
                .zst-el-element.zst-el-element-e9fa1cd {
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    margin-top: 30px !important;
                }
                .zst-el-element.zst-el-element-e9fa1cd > .zst-el-element-populated {
                    margin-top: 0 !important;
                    padding: 30px !important;
                }
                .zst-el-element.zst-el-element-644d4792 > .zst-el-container {
                    flex-direction: column !important;
                }
                .zst-el-element.zst-el-element-65c16854 > .zst-el-container {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 30px !important;
                }
                .zst-el-element.zst-el-element-578ae0e,
                .zst-el-element.zst-el-element-4cdab61d {
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    max-width: 100% !important;
                }
            }

            @media (max-width: 767px) {
                .zst-el-hidden-mobile,
                .zst-el-element.zst-el-element-e9fa1cd,
                .zst-el-element.zst-el-element-3aa54026 {
                    display: none !important;
                }

                .zst-mobile-calendar-wrapper {
                    display: block !important;
                }

                /* Sekcja 3: Aktualności na telefonie */
                .zst-el-element.zst-el-element-644d4792 {
                    padding: 0 16px !important;
                }
                .zst-el-element.zst-el-element-644d4792 > .zst-el-container {
                    padding: 0 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                }
                .zst-el-element.zst-el-element-74fb1440 {
                    width: 100% !important;
                    max-width: 100% !important;
                    flex: 0 0 100% !important;
                    padding-right: 0 !important;
                    padding-top: 0 !important;
                }
                #zst-posts-grid.pp-posts-grid {
                    margin: 0 !important;
                    width: 100% !important;
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 20px !important;
                }
                #zst-posts-grid .pp-post-wrap {
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    max-width: 100% !important;
                    padding: 0 !important;
                    margin: 0 !important;
                }
                #zst-posts-grid .pp-post.zst-card-vertical {
                    height: 440px !important;
                    width: 100% !important;
                    border-radius: 12px !important;
                }

                /* Sekcja 4: Egzaminy i praktyki (ciemnoniebieski blok) */
                .zst-el-element.zst-el-element-43a8284f {
                    padding: 40px 16px !important;
                    width: 100% !important;
                    box-sizing: border-box !important;
                }
                .zst-el-element.zst-el-element-43a8284f > .zst-el-container {
                    padding: 0 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                }
                .zst-el-element.zst-el-element-65c16854 > .zst-el-container {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 32px !important;
                    width: 100% !important;
                    padding: 0 !important;
                }
                .zst-el-element.zst-el-element-578ae0e {
                    order: 1 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                    flex: 0 0 100% !important;
                    padding: 0 !important;
                    margin: 0 0 20px 0 !important;
                }
                .zst-el-element.zst-el-element-4cdab61d {
                    order: 2 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                    flex: 0 0 100% !important;
                    padding: 0 !important;
                    margin: 0 !important;
                    justify-content: center !important;
                }
                .zst-el-element.zst-el-element-4cdab61d > .zst-el-element-populated {
                    padding: 0 !important;
                    margin: 0 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                    justify-content: center !important;
                    align-items: stretch !important;
                }
                .zst-el-element.zst-el-element-4cdab61d .zst-el-widget,
                .zst-el-element.zst-el-element-4cdab61d .zst-el-widget-container {
                    width: 100% !important;
                    max-width: 100% !important;
                }
                .zst-exam-hub {
                    width: 100% !important;
                    max-width: 100% !important;
                }
                .zst-exam-header {
                    text-align: center !important;
                    margin-bottom: 24px !important;
                }
                .zst-exam-header h2 {
                    font-size: 26px !important;
                    color: #ffffff !important;
                    margin-bottom: 8px !important;
                }
                .zst-exam-header p {
                    font-size: 15px !important;
                    color: rgba(255, 255, 255, 0.85) !important;
                    margin: 0 !important;
                }
                .zst-exam-options {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 14px !important;
                    width: 100% !important;
                }
                .zst-exam-option {
                    width: 100% !important;
                    max-width: 100% !important;
                    box-sizing: border-box !important;
                    margin: 0 !important;
                    padding: 20px 22px !important;
                    border-radius: 12px !important;
                }
                .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-items {
                    max-width: 100% !important;
                    width: 100% !important;
                    margin: 0 !important;
                    padding: 0 !important;
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 12px !important;
                }
                .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item {
                    width: 100% !important;
                    max-width: 100% !important;
                    margin: 0 !important;
                }
                .zst-el-element.zst-el-element-43a8284f .zst-el-icon-list-item a {
                    width: 100% !important;
                    box-sizing: border-box !important;
                    font-size: 13px !important;
                    padding: 14px 18px !important;
                    border-radius: 10px !important;
                }

                /* Sekcja 6: Jednostka organizacyjna Miasta Leszna - 2 linie obok 2 grafik */
                .zst-el-element-8e318b9,
                .zst-el-section.zst-el-element-8e318b9,
                section.zst-el-element-8e318b9 {
                    min-height: auto !important;
                    height: auto !important;
                    padding: 10px 0 !important;
                    margin: 0 !important;
                    background: #ffffff !important;
                    border-top: 1px solid #e2e8f0 !important;
                    border-bottom: 1px solid #e2e8f0 !important;
                    display: block !important;
                    box-sizing: border-box !important;
                    width: 100% !important;
                }
                .zst-el-element.zst-el-element-8e318b9 > .zst-el-container,
                .zst-el-element-8e318b9 > .zst-el-container,
                .zst-el-section.zst-el-element-8e318b9 > .zst-el-container {
                    min-height: auto !important;
                    height: auto !important;
                    display: flex !important;
                    flex-direction: row !important;
                    flex-wrap: nowrap !important;
                    align-items: center !important;
                    justify-content: space-between !important;
                    gap: 8px !important;
                    padding: 0 14px !important;
                    width: 100% !important;
                    max-width: 100% !important;
                    margin: 0 !important;
                    box-sizing: border-box !important;
                }
                .zst-el-column.zst-el-element-410b647 {
                    display: flex !important;
                    align-items: center !important;
                    flex: 1 1 auto !important;
                    width: auto !important;
                    margin: 0 !important;
                    padding: 0 !important;
                }
                .zst-el-element-410b647 .zst-el-widget-wrap {
                    padding: 0 !important;
                    margin: 0 !important;
                }
                .zst-el-element-d16c92b {
                    margin: 0 !important;
                }
                .zst-jednostka-box {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 2px !important;
                    text-align: left !important;
                }
                .zst-jednostka-l1,
                .zst-jednostka-l2 {
                    font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
                    font-size: clamp(11.5px, 3.5vw, 14.5px) !important;
                    font-weight: 900 !important;
                    color: #0b1736 !important;
                    letter-spacing: 0.2px !important;
                    line-height: 1.2 !important;
                    white-space: nowrap !important;
                    text-transform: uppercase !important;
                }
                .zst-el-column.zst-el-element-170e590,
                .zst-el-column.zst-el-element-897a26d {
                    display: flex !important;
                    align-items: center !important;
                    justify-content: center !important;
                    flex: 0 0 auto !important;
                    width: auto !important;
                    margin: 0 !important;
                    padding: 0 !important;
                }
                .zst-el-column.zst-el-element-170e590 .zst-el-widget-wrap,
                .zst-el-column.zst-el-element-897a26d .zst-el-widget-wrap {
                    padding: 0 !important;
                    margin: 0 !important;
                }
                .zst-el-element-71b0351,
                .zst-el-element-074f7c5 {
                    margin: 0 !important;
                }
                .zst-el-element-71b0351 img,
                .zst-el-element-074f7c5 img {
                    height: 38px !important;
                    max-height: 38px !important;
                    width: auto !important;
                    max-width: 44px !important;
                    object-fit: contain !important;
                    display: block !important;
                    margin: 0 !important;
                }
                .zst-el-column.zst-el-element-6622188 {
                    display: none !important;
                }
            }
        
            /* ==========================================================================
               DOKŁADNY STYL WARSTWY HERO (ZGODNY W 100% ZE WZORCEM ZST-CKZiU - ZDJĘCIE 1)
               ========================================================================== */
            .zst-hero-dynamic-content {
                display: flex !important;
                flex-direction: column !important;
                align-items: flex-start !important;
                justify-content: center !important;
                min-height: 480px !important;
                padding: 40px 10px 40px 0 !important;
                position: relative !important;
                z-index: 5 !important;
                box-sizing: border-box !important;
                max-width: 650px !important;
            }
            .zst-hero-badge {
                background: rgba(18, 38, 74, 0.90) !important;
                border: 1.5px solid #3b82f6 !important;
                color: #ffffff !important;
                font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
                font-size: 13.5px !important;
                font-weight: 800 !important;
                letter-spacing: 0.6px !important;
                text-transform: uppercase !important;
                padding: 5px 14px !important;
                border-radius: 6px !important;
                margin-bottom: 12px !important;
                display: inline-block !important;
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
                line-height: 1.4 !important;
            }
            .zst-hero-sub {
                color: #ffffff !important;
                font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
                font-size: 15px !important;
                font-weight: 800 !important;
                letter-spacing: 0.8px !important;
                text-transform: uppercase !important;
                margin-bottom: 10px !important;
                text-shadow: 0 2px 6px rgba(0, 0, 0, 0.95), 0 0 10px rgba(0, 0, 0, 0.8) !important;
                line-height: 1.3 !important;
            }
            .zst-hero-title-wrap {
                margin-bottom: 16px !important;
                display: block !important;
            }
            .zst-hero-title {
                background: #b91c1c !important;
                background: linear-gradient(135deg, #c61a1a 0%, #a81717 100%) !important;
                color: #ffffff !important;
                font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
                font-size: clamp(24px, 3.2vw, 36px) !important;
                font-weight: 900 !important;
                letter-spacing: 0.5px !important;
                padding: 8px 18px !important;
                border-radius: 8px !important;
                display: inline-block !important;
                margin: 0 !important;
                box-shadow: 0 6px 18px rgba(0, 0, 0, 0.5) !important;
                line-height: 1.15 !important;
                text-transform: uppercase !important;
            }
            .zst-hero-bullets {
                list-style: none !important;
                padding: 0 !important;
                margin: 0 0 22px 0 !important;
                display: flex !important;
                flex-direction: column !important;
                gap: 8px !important;
            }
            .zst-hero-bullets li {
                display: flex !important;
                align-items: center !important;
                gap: 8px !important;
                color: #ffffff !important;
                font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
                font-size: 15px !important;
                font-weight: 600 !important;
                text-shadow: 0 2px 6px rgba(0, 0, 0, 0.95), 0 0 10px rgba(0, 0, 0, 0.8) !important;
                margin: 0 !important;
                line-height: 1.4 !important;
            }
            .zst-bullet-dot {
                color: #38bdf8 !important;
                font-size: 22px !important;
                line-height: 1 !important;
                display: inline-block !important;
                filter: drop-shadow(0 0 3px rgba(56, 189, 248, 0.8)) !important;
            }
            .zst-bullet-text {
                color: #ffffff !important;
            }
            .zst-hero-buttons {
                display: flex !important;
                flex-direction: row !important;
                gap: 12px !important;
                align-items: center !important;
                flex-wrap: wrap !important;
            }
            .zst-hero-btn {
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                font-family: 'Raleway', 'Montserrat', -apple-system, sans-serif !important;
                font-size: 13px !important;
                font-weight: 800 !important;
                letter-spacing: 0.6px !important;
                text-transform: uppercase !important;
                text-decoration: none !important;
                border-radius: 6px !important;
                padding: 11px 22px !important;
                transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
                box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45) !important;
                cursor: pointer !important;
            }
            .zst-btn-primary {
                background: #b91c1c !important;
                background: linear-gradient(135deg, #c61a1a 0%, #a81717 100%) !important;
                color: #ffffff !important;
                border: none !important;
            }
            .zst-btn-primary:hover {
                background: #dc2626 !important;
                transform: translateY(-2px) !important;
                box-shadow: 0 6px 18px rgba(185, 28, 28, 0.55) !important;
                color: #ffffff !important;
            }
            .zst-btn-outline {
                background: rgba(30, 30, 30, 0.72) !important;
                border: 1.5px solid #ffffff !important;
                color: #ffffff !important;
                backdrop-filter: blur(6px) !important;
                -webkit-backdrop-filter: blur(6px) !important;
            }
            .zst-btn-outline:hover {
                background: rgba(50, 50, 50, 0.9) !important;
                border-color: #ffffff !important;
                transform: translateY(-2px) !important;
                color: #ffffff !important;
            }
            .zst-btn-success {
                background: #10b981 !important;
                color: #ffffff !important;
                border: none !important;
            }
            .zst-btn-navy {
                background: #0b1736 !important;
                border: 1.5px solid #38bdf8 !important;
                color: #ffffff !important;
            }
            .zst-hero-video-overlay {
                position: absolute !important;
                top: 0 !important;
                left: 0 !important;
                right: 0 !important;
                bottom: 0 !important;
                width: 100% !important;
                height: 100% !important;
                background: linear-gradient(90deg, rgba(11, 23, 54, 0.78) 0%, rgba(11, 23, 54, 0.45) 45%, rgba(11, 23, 54, 0.10) 75%, rgba(11, 23, 54, 0.65) 100%) !important;
                z-index: 2 !important;
                pointer-events: none !important;
            }

            /* ==========================================================================
               HERO BANNER MOBILNY (100% IDENTYCZNY Z WZORCEM: FILM + TEKST + EMBLEMATY)
               ========================================================================== */
            @media (max-width: 768px) {
                html body .zst-el-element.zst-el-element-3abdd9df,
                html body section.zst-el-element.zst-el-element-3abdd9df,
                .zst-el-element-3abdd9df,
                section.zst-el-element-3abdd9df {
                    display: block !important;
                    position: relative !important;
                    min-height: 0 !important;
                    height: auto !important;
                    margin-top: 0 !important;
                    margin-bottom: 0 !important;
                    padding: 20px 14px 22px 14px !important;
                    overflow: hidden !important;
                    background-color: #0b1736 !important;
                    box-sizing: border-box !important;
                }
                html body .zst-el-element.zst-el-element-3abdd9df .zst-hero-video-bg-wrap,
                .zst-el-element-3abdd9df .zst-hero-video-bg-wrap {
                    position: absolute !important;
                    top: 0 !important;
                    left: 0 !important;
                    width: 100% !important;
                    height: 100% !important;
                    z-index: 1 !important;
                    overflow: hidden !important;
                }
                html body .zst-el-element.zst-el-element-3abdd9df .zst-hero-video-bg-wrap iframe,
                .zst-el-element-3abdd9df .zst-hero-video-bg-wrap iframe {
                    position: absolute !important;
                    top: 50% !important;
                    left: 50% !important;
                    width: 100% !important;
                    height: 100% !important;
                    min-width: 650px !important;
                    min-height: 380px !important;
                    transform: translate(-50%, -50%) !important;
                    pointer-events: none !important;
                    border: none !important;
                }
                html body .zst-el-element.zst-el-element-3abdd9df .zst-hero-video-overlay,
                .zst-el-element-3abdd9df .zst-hero-video-overlay {
                    position: absolute !important;
                    top: 0 !important;
                    left: 0 !important;
                    width: 100% !important;
                    height: 100% !important;
                    background: linear-gradient(180deg, rgba(11, 23, 54, 0.40) 0%, rgba(11, 23, 54, 0.65) 100%) !important;
                    z-index: 2 !important;
                    pointer-events: none !important;
                }
                html body .zst-el-element.zst-el-element-3abdd9df > .zst-el-container,
                .zst-el-element-3abdd9df > .zst-el-container {
                    position: relative !important;
                    z-index: 5 !important;
                    display: block !important;
                    min-height: 0 !important;
                    height: auto !important;
                    padding: 0 !important;
                    margin: 0 auto !important;
                    width: 100% !important;
                    max-width: 100% !important;
                }
                html body .zst-el-column.zst-el-element.zst-el-element-285e0553,
                html body .zst-el-element.zst-el-element-285e0553,
                .zst-el-column.zst-el-element.zst-el-element-285e0553,
                .zst-el-element-285e0553 {
                    display: block !important;
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    max-width: 100% !important;
                    min-height: 0 !important;
                    height: auto !important;
                    padding: 0 !important;
                    margin: 0 !important;
                }
                html body .zst-el-element.zst-el-element-285e0553 > .zst-el-widget-wrap,
                .zst-el-element-285e0553 > .zst-el-widget-wrap {
                    padding: 0 !important;
                    margin: 0 !important;
                    min-height: 0 !important;
                    height: auto !important;
                }
                html body .zst-el-element.zst-el-element-285e0553 .zst-hero-dynamic-content,
                .zst-el-element-285e0553 .zst-hero-dynamic-content {
                    min-height: 0 !important;
                    height: auto !important;
                    padding: 0 !important;
                    align-items: flex-start !important;
                    display: flex !important;
                    flex-direction: column !important;
                    width: 100% !important;
                }
                .zst-el-element-285e0553 .zst-hero-badge {
                    display: inline-block !important;
                    background: #142750 !important;
                    color: #ffffff !important;
                    border: 1.5px solid #2e62c4 !important;
                    border-radius: 6px !important;
                    padding: 3px 8px !important;
                    font-size: 11px !important;
                    font-weight: 800 !important;
                    letter-spacing: 0.5px !important;
                    text-transform: uppercase !important;
                    margin-bottom: 6px !important;
                }
                .zst-el-element-285e0553 .zst-hero-sub {
                    color: #ffffff !important;
                    font-size: 12px !important;
                    font-weight: 800 !important;
                    letter-spacing: 0.6px !important;
                    text-transform: uppercase !important;
                    margin-bottom: 8px !important;
                    line-height: 1.2 !important;
                    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
                }
                .zst-el-element-285e0553 .zst-hero-title-wrap {
                    width: 100% !important;
                    margin-bottom: 10px !important;
                }
                .zst-el-element-285e0553 .zst-hero-title {
                    background: #a8261b !important;
                    color: #ffffff !important;
                    font-size: clamp(17px, 5.2vw, 22px) !important;
                    font-weight: 900 !important;
                    letter-spacing: 0.5px !important;
                    text-transform: uppercase !important;
                    text-align: center !important;
                    padding: 6px 12px !important;
                    border-radius: 8px !important;
                    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
                    margin: 0 !important;
                    line-height: 1.25 !important;
                }
                .zst-el-element-285e0553 .zst-hero-bullets {
                    list-style: none !important;
                    padding: 0 !important;
                    margin: 0 0 14px 0 !important;
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 5px !important;
                    width: 100% !important;
                }
                .zst-el-element-285e0553 .zst-hero-bullets li {
                    display: flex !important;
                    align-items: center !important;
                    gap: 6px !important;
                    color: #ffffff !important;
                    font-size: clamp(10.5px, 3.1vw, 12px) !important;
                    font-weight: 600 !important;
                    line-height: 1.3 !important;
                    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
                    margin: 0 !important;
                    padding: 0 !important;
                }
                .zst-el-element-285e0553 .zst-bullet-dot {
                    color: #38bdf8 !important;
                    font-size: 15px !important;
                    line-height: 1 !important;
                    flex-shrink: 0 !important;
                }
                .zst-el-element-285e0553 .zst-hero-buttons {
                    display: flex !important;
                    flex-direction: row !important;
                    flex-wrap: nowrap !important;
                    gap: 8px !important;
                    width: 100% !important;
                    margin: 0 !important;
                    padding: 0 !important;
                }
                .zst-el-element-285e0553 .zst-hero-btn {
                    flex: 1 1 0% !important;
                    width: auto !important;
                    max-width: 50% !important;
                    min-width: 0 !important;
                    padding: 10px 8px !important;
                    font-size: clamp(10px, 3vw, 11.5px) !important;
                    font-weight: 800 !important;
                    letter-spacing: 0.5px !important;
                    text-align: center !important;
                    justify-content: center !important;
                    align-items: center !important;
                    border-radius: 6px !important;
                    text-transform: uppercase !important;
                    text-decoration: none !important;
                    white-space: nowrap !important;
                    box-sizing: border-box !important;
                    display: flex !important;
                }
                .zst-el-element-285e0553 .zst-hero-btn.zst-btn-primary {
                    background: #a8261b !important;
                    color: #ffffff !important;
                    border: none !important;
                    box-shadow: 0 4px 12px rgba(168, 38, 27, 0.4) !important;
                }
                .zst-el-element-285e0553 .zst-hero-btn.zst-btn-outline {
                    background: rgba(30, 30, 30, 0.65) !important;
                    color: #ffffff !important;
                    border: 1.5px solid #ffffff !important;
                    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
                }

                /* SEKCJA MOBILNA PONIŻEJ FILMIKU: VULCAN, ZPE, SZMARAGDOWY GUZIK, 3 PRZYCISKI */
                .zst-el-element-27a1745,
                section.zst-el-element-27a1745,
                .zst-mobile-platforms-section {
                    display: block !important;
                    width: 100% !important;
                    background: #ffffff !important;
                    padding: 16px 14px 20px 14px !important;
                    box-sizing: border-box !important;
                }
                .zst-mobile-platforms-section > .zst-el-container {
                    width: 100% !important;
                    max-width: 100% !important;
                    padding: 0 !important;
                    margin: 0 !important;
                }
                .zst-mobile-platforms-section .zst-el-widget-wrap {
                    padding: 0 !important;
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 12px !important;
                    width: 100% !important;
                }
                .zst-mobile-platforms-section .zst-el-widget-image {
                    margin: 0 !important;
                    width: 100% !important;
                }
                .zst-mobile-platforms-section .zst-el-widget-image img {
                    width: 100% !important;
                    height: auto !important;
                    display: block !important;
                    border-radius: 8px !important;
                    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
                }
                .zst-mobile-platforms-section .zst-el-element-bb412ba img {
                    max-height: 220px !important;
                    object-fit: contain !important;
                    margin: 0 auto !important;
                }
                .zst-mobile-platforms-section .zst-mobile-buttons {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 8px !important;
                    margin-top: 4px !important;
                    width: 100% !important;
                }
                .zst-mobile-platforms-section .zst-el-button {
                    width: 100% !important;
                    padding: 11px 16px !important;
                    text-align: center !important;
                    justify-content: center !important;
                    border-radius: 8px !important;
                    font-family: "Raleway", sans-serif !important;
                    font-weight: 700 !important;
                    text-decoration: none !important;
                    font-size: 12.5px !important;
                    letter-spacing: 0.5px !important;
                    display: flex !important;
                    align-items: center !important;
                    box-sizing: border-box !important;
                }
                .zst-mobile-platforms-section .zst-btn-red {
                    background: #E91515 !important;
                    color: #ffffff !important;
                    box-shadow: 0 3px 8px rgba(233, 21, 21, 0.25) !important;
                }
                .zst-mobile-platforms-section .zst-btn-green {
                    background: #3BB34A !important;
                    color: #ffffff !important;
                    box-shadow: 0 3px 8px rgba(59, 179, 74, 0.25) !important;
                }
                .zst-mobile-platforms-section .zst-btn-purple {
                    background: #9A6EE4 !important;
                    color: #ffffff !important;
                    box-shadow: 0 3px 8px rgba(154, 110, 228, 0.25) !important;
                }

                /* Na telefonie ukrywamy sekcję 3aa54026, ponieważ sekcja 27a1745 zawiera już Vulcan i ZPE */
                .zst-el-element-3aa54026,
                section.zst-el-element-3aa54026 {
                    display: none !important;
                }
    
                /* MODUŁ PRAWEJ WIEŻY (SZMARAGDOWY GUZIK + PRZYCISKI) CAŁKOWICIE UKRYTY NA TELEFONIE */
                html body .zst-el-column.zst-el-element.zst-el-element-494eeaaf,
                html body .zst-el-element.zst-el-element-494eeaaf,
                .zst-el-column.zst-el-element.zst-el-element-494eeaaf,
                .zst-el-element-494eeaaf {
                    display: none !important;
                    visibility: hidden !important;
                    height: 0 !important;
                    min-height: 0 !important;
                    margin: 0 !important;
                    padding: 0 !important;
                    overflow: hidden !important;
                }

                .zst-el-element-3aa54026,
                section.zst-el-element-3aa54026 {
                    display: block !important;
                    padding: 16px 14px !important;
                    background: #ffffff !important;
                }
                .zst-el-element-3aa54026 > .zst-el-container {
                    display: flex !important;
                    flex-direction: column !important;
                    gap: 12px !important;
                    width: 100% !important;
                }
                .zst-el-element-3aa54026 .zst-el-column {
                    width: 100% !important;
                    flex: 0 0 100% !important;
                }
                .zst-el-element-3aa54026 img {
                    width: 100% !important;
                    height: auto !important;
                    display: block !important;
                    border-radius: 6px !important;
                }
                .zst-el-column.zst-el-element.zst-el-element-e9fa1cd {
                    display: flex !important;
                    flex-direction: column !important;
                    align-items: center !important;
                    width: 100% !important;
                    flex: 0 0 100% !important;
                    margin-top: 20px !important;
                }
                .zst-el-element.zst-el-element-e5914ca img {
                    width: 140px !important;
                    height: auto !important;
                    margin: 0 auto !important;
                    display: block !important;
                }
            }

/* Native mobile menu trigger: independent from icon fonts and legacy widgets. */
.zst-native-menu-toggle {
    -webkit-appearance: none !important;
    appearance: none !important;
    align-items: center !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #fff !important;
    cursor: pointer !important;
    display: none !important;
    font: inherit !important;
    height: 44px !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 9px !important;
    width: 44px !important;
}

.zst-native-menu-toggle::before,
.zst-native-menu-toggle::after {
    content: none !important;
}

.zst-native-menu-icon {
    display: block !important;
    fill: none !important;
    height: 24px !important;
    overflow: visible !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-width: 2 !important;
    width: 24px !important;
}

.zst-native-menu-toggle:hover,
.zst-native-menu-toggle:focus-visible {
    background: rgba(255, 255, 255, 0.16) !important;
    border-color: rgba(255, 255, 255, 0.48) !important;
    outline: 3px solid #f8bf34 !important;
    outline-offset: 2px !important;
}

@media (max-width: 1024px) {
    .zst-native-menu-toggle {
        display: inline-flex !important;
    }
}

/* Footer contact alignment restored from the verified reference layout. */
.zst-el-element-50796328 ul.zst-el-icon-list-items {
    box-sizing: border-box !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.zst-el-element-50796328 .zst-el-icon-list-item {
    box-sizing: border-box !important;
    margin-left: 0 !important;
}

/* Mobile article/page header: keep sharing compact instead of a full-width bar. */
@media (max-width: 720px) {
    .zst-post-header-card .zst-actions,
    .zst-page-header-card .zst-actions {
        align-self: flex-start !important;
        display: inline-flex !important;
        margin-top: 4px !important;
        width: auto !important;
    }

    .zst-post-header-card .zst-action-btn,
    .zst-page-header-card .zst-action-btn {
        border-radius: 7px !important;
        flex: 0 0 auto !important;
        font-size: 13px !important;
        min-height: 36px !important;
        padding: 7px 13px !important;
        width: auto !important;
    }
}

/* Biuro Karier: compact, readable mobile layout without losing any controls. */
@media (max-width: 720px) {
    .category-biuro-kariery .zst-job-portal-wrap {
        padding: 16px 12px 40px !important;
    }

    .category-biuro-kariery .zst-portal-header {
        border-radius: 16px !important;
        margin-bottom: 16px !important;
        padding: 22px 18px !important;
    }

    .category-biuro-kariery .zst-portal-badge {
        font-size: 11.5px !important;
        line-height: 1.25 !important;
        padding: 8px 11px !important;
        width: fit-content !important;
    }

    .category-biuro-kariery .zst-portal-title {
        font-size: 1.72rem !important;
        line-height: 1.12 !important;
        margin: 16px 0 10px !important;
    }

    .category-biuro-kariery .zst-portal-lead {
        font-size: 0.96rem !important;
        line-height: 1.52 !important;
        margin: 0 0 16px !important;
    }

    .category-biuro-kariery .zst-portal-actions-row {
        gap: 14px !important;
        padding-top: 14px !important;
    }

    .category-biuro-kariery .zst-portal-stats {
        gap: 9px !important;
    }

    .category-biuro-kariery .zst-stat-item {
        font-size: 0.88rem !important;
        line-height: 1.35 !important;
    }

    .category-biuro-kariery .zst-employer-btn {
        border-radius: 9px !important;
        font-size: 0.9rem !important;
        min-height: 42px !important;
        padding: 9px 14px !important;
    }

    .category-biuro-kariery .zst-search-filter-hub {
        border-radius: 14px !important;
        margin-bottom: 16px !important;
        padding: 12px !important;
    }

    .category-biuro-kariery .zst-search-row,
    .category-biuro-kariery .zst-search-box {
        width: 100% !important;
    }

    .category-biuro-kariery .zst-search-input {
        font-size: 0.9rem !important;
        height: 44px !important;
        min-height: 44px !important;
        padding-right: 42px !important;
    }

    .category-biuro-kariery .zst-filter-pills-row {
        display: block !important;
        margin-top: 10px !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .category-biuro-kariery .zst-filter-pills {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 7px !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        padding: 1px 1px 6px !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: thin !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .category-biuro-kariery .zst-filter-pill {
        flex: 0 0 auto !important;
        font-size: 0.78rem !important;
        min-height: 38px !important;
        padding: 7px 12px !important;
        scroll-snap-align: start !important;
        white-space: nowrap !important;
    }

    .category-biuro-kariery .zst-offers-counter {
        display: block !important;
        font-size: 0.78rem !important;
        margin-top: 6px !important;
    }

    .category-biuro-kariery .zst-jobs-grid {
        gap: 12px !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .category-biuro-kariery .zst-job-card {
        box-sizing: border-box !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        min-width: 0 !important;
        padding: 14px !important;
        width: 100% !important;
    }

    .category-biuro-kariery .zst-card-header {
        gap: 9px !important;
        margin-bottom: 10px !important;
    }

    .category-biuro-kariery .zst-comp-icon {
        height: 42px !important;
        width: 42px !important;
    }

    .category-biuro-kariery .zst-comp-name {
        font-size: 0.78rem !important;
        line-height: 1.25 !important;
    }

    .category-biuro-kariery .zst-post-date,
    .category-biuro-kariery .zst-tag-badge {
        font-size: 0.72rem !important;
    }

    .category-biuro-kariery .zst-job-title {
        font-size: 1rem !important;
        line-height: 1.32 !important;
        margin: 0 !important;
    }

    .category-biuro-kariery .zst-job-excerpt {
        font-size: 0.88rem !important;
        line-height: 1.45 !important;
        margin: 9px 0 0 !important;
    }

    .category-biuro-kariery .zst-card-footer {
        margin-top: 14px !important;
        padding-top: 11px !important;
    }

    .category-biuro-kariery .zst-btn-details {
        font-size: 0.84rem !important;
    }
}

/* Ubezpieczenie: native document centre replacing broken legacy WPDM output. */
.zst-download-center {
    margin: 6px 0 38px !important;
}

.zst-download-heading {
    margin-bottom: 18px !important;
}

.zst-download-kicker {
    color: #9b2527 !important;
    display: block !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    margin-bottom: 5px !important;
    text-transform: uppercase !important;
}

.zst-download-heading h2 {
    color: #0b1736 !important;
    font-size: clamp(1.45rem, 3vw, 2rem) !important;
    line-height: 1.2 !important;
    margin: 0 0 6px !important;
}

.zst-download-heading p {
    color: #526174 !important;
    margin: 0 !important;
}

.zst-download-grid {
    display: grid !important;
    gap: 14px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.zst-download-card {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #dfe5ee !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 18px rgba(11, 23, 54, 0.06) !important;
    display: grid !important;
    gap: 14px !important;
    grid-template-columns: 52px minmax(0, 1fr) auto !important;
    min-width: 0 !important;
    padding: 16px !important;
}

.zst-download-icon {
    align-items: center !important;
    background: #fff1f2 !important;
    border-radius: 12px !important;
    color: #a61f24 !important;
    display: inline-flex !important;
    height: 52px !important;
    justify-content: center !important;
    width: 52px !important;
}

.zst-download-icon svg {
    fill: none !important;
    height: 28px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    stroke-width: 1.7 !important;
    width: 28px !important;
}

.zst-download-card-body {
    min-width: 0 !important;
}

.zst-download-title {
    border: 0 !important;
    font-size: 1rem !important;
    line-height: 1.35 !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
}

.zst-download-title::before,
.zst-download-title::after {
    display: none !important;
}

.zst-page-content-wrap .zst-download-title a,
.zst-page-content-wrap .zst-download-title a:link,
.zst-page-content-wrap .zst-download-title a:visited {
    color: #0b1736 !important;
    -webkit-text-fill-color: #0b1736 !important;
    border: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.zst-page-content-wrap .zst-download-title a:hover,
.zst-page-content-wrap .zst-download-title a:focus-visible {
    color: #9b2527 !important;
    -webkit-text-fill-color: #9b2527 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

.zst-download-meta {
    color: #64748b !important;
    font-size: 0.8rem !important;
    line-height: 1.35 !important;
    margin: 0 !important;
}

.zst-page-content-wrap a.zst-download-button,
.zst-page-content-wrap a.zst-download-button:link,
.zst-page-content-wrap a.zst-download-button:visited {
    align-items: center !important;
    background: #142750 !important;
    border-radius: 9px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 0 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    font-size: 0.82rem !important;
    font-weight: 750 !important;
    gap: 7px !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 9px 12px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.zst-page-content-wrap a.zst-download-button:hover,
.zst-page-content-wrap a.zst-download-button:focus-visible {
    background: #9b2527 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration: none !important;
}

@media (max-width: 820px) {
    .zst-download-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

@media (max-width: 520px) {
    .zst-download-center {
        margin-top: 0 !important;
    }

    .zst-download-heading {
        margin-bottom: 14px !important;
    }

    .zst-download-heading p {
        font-size: 0.9rem !important;
        line-height: 1.45 !important;
    }

    .zst-download-card {
        align-items: start !important;
        gap: 10px 12px !important;
        grid-template-columns: 44px minmax(0, 1fr) !important;
        padding: 13px !important;
    }

    .zst-download-icon {
        border-radius: 10px !important;
        height: 44px !important;
        width: 44px !important;
    }

    .zst-download-icon svg {
        height: 24px !important;
        width: 24px !important;
    }

    .zst-download-title {
        font-size: 0.94rem !important;
    }

    .zst-download-button {
        grid-column: 1 / -1 !important;
        min-height: 40px !important;
        width: 100% !important;
    }
}

/* Deklaracja dostępności: one clear document card instead of a raw file row. */
.page-id-33167 .zst-page-content-wrap > .wp-block-file {
    align-items: center !important;
    background: linear-gradient(135deg, #f8faff 0%, #ffffff 100%) !important;
    border: 1px solid #dce3ef !important;
    border-left: 5px solid #1d3774 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(11, 23, 54, 0.07) !important;
    display: grid !important;
    gap: 8px 18px !important;
    grid-template-columns: 56px minmax(0, 1fr) auto !important;
    margin: 4px 0 34px !important;
    padding: 20px !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file::before {
    align-items: center !important;
    background: #fff0f0 !important;
    border-radius: 12px !important;
    color: #a32626 !important;
    content: 'PDF' !important;
    display: inline-flex !important;
    font-size: 0.72rem !important;
    font-weight: 850 !important;
    height: 56px !important;
    justify-content: center !important;
    letter-spacing: 0.05em !important;
    width: 56px !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file > object {
    display: none !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file > a:not(.wp-block-file__button) {
    color: #0b1736 !important;
    font-size: 1.02rem !important;
    font-weight: 750 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file > a:not(.wp-block-file__button)::before {
    color: #64748b !important;
    content: 'Raport o dostępności strony' !important;
    display: block !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    margin-bottom: 3px !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file > .wp-block-file__button {
    align-items: center !important;
    background: #142750 !important;
    border-radius: 9px !important;
    color: #ffffff !important;
    display: inline-flex !important;
    font-size: 0.86rem !important;
    font-weight: 750 !important;
    justify-content: center !important;
    margin: 0 !important;
    min-height: 42px !important;
    padding: 9px 16px !important;
    text-decoration: none !important;
}

.page-id-33167 .zst-page-content-wrap > .wp-block-file > .wp-block-file__button:hover,
.page-id-33167 .zst-page-content-wrap > .wp-block-file > .wp-block-file__button:focus-visible {
    background: #9b2527 !important;
}

@media (max-width: 560px) {
    .page-id-33167 .zst-page-content-wrap > .wp-block-file {
        gap: 10px 12px !important;
        grid-template-columns: 46px minmax(0, 1fr) !important;
        padding: 14px !important;
    }

    .page-id-33167 .zst-page-content-wrap > .wp-block-file::before {
        border-radius: 10px !important;
        height: 46px !important;
        width: 46px !important;
    }

    .page-id-33167 .zst-page-content-wrap > .wp-block-file > a:not(.wp-block-file__button) {
        font-size: 0.92rem !important;
    }

    .page-id-33167 .zst-page-content-wrap > .wp-block-file > .wp-block-file__button {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }
}
