/* Ferrum Theme Builder header - shared with WordPress navigation menu. */
.elementor-location-header:has(.fw-site-header){position:sticky;top:0;z-index:1000;background:#080808;border-bottom:1px solid #ffffff1a;}
body.admin-bar .elementor-location-header:has(.fw-site-header){top:32px}
.fw-site-header{background:#080808!important;padding:22px 40px!important;color:#fff;}
.fw-header-shell{width:100%!important;max-width:1664px!important;margin-inline:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:28px!important;padding:0!important;}
.fw-header-logo{width:172px!important;flex:none!important;margin:0!important;}
.fw-header-logo img{width:172px!important;height:66px!important;object-fit:contain;object-position:left;}
.fw-header-nav{width:auto!important;flex:1!important;min-width:0;margin:0!important;}
.fw-header-nav .elementor-nav-menu--main .elementor-item{font:500 14px/1.3 Roboto,sans-serif!important;color:#fff!important;padding:16px 14px!important;}
.fw-header-nav .elementor-item:hover,.fw-header-nav .elementor-item:focus,.fw-header-nav .elementor-item.elementor-item-active{color:#07d9e6!important;}
.fw-header-nav .elementor-nav-menu--dropdown{background:#151515!important;border:1px solid #ffffff25!important;border-radius:20px!important;padding:12px!important;box-shadow:0 16px 45px #0007;overflow:visible;}
.fw-header-nav .elementor-nav-menu--dropdown a{font:400 14px/1.4 Roboto,sans-serif!important;color:#fff!important;border-radius:12px;padding:12px 16px!important;background:transparent!important;}
.fw-header-nav .elementor-nav-menu--dropdown a:hover,.fw-header-nav .elementor-nav-menu--dropdown a:focus{background:#07d9e6!important;color:#080808!important;}
.fw-header-nav .sub-arrow{padding-left:9px;font-size:11px;}
.fw-header-cta{flex:none!important;width:auto!important;margin:0!important;}
.fw-header-cta .elementor-button{font:500 14px/1.2 Roboto,sans-serif!important;background:#07d9e6!important;color:#080808!important;border:1px solid #07d9e6;border-radius:20px!important;padding:18px 23px!important;transition:background .25s,transform .25s;}
.fw-header-cta .elementor-button:hover{background:#fff!important;border-color:#fff;transform:translateY(-2px);}
.fw-header-cta .elementor-button:focus-visible,.fw-header-nav a:focus-visible,.fw-header-logo a:focus-visible{outline:2px solid #07d9e6;outline-offset:5px;}
.fw-header-nav .elementor-menu-toggle{color:#07d9e6!important;background:#151515!important;border-radius:12px;padding:12px;}
.elementor-36 [data-id="3c1fe944"]{display:none!important;}
.elementor-36 [data-id="285632bc"]{padding-top:5rem!important;}
.elementor-36 #uslugi,.elementor-36 #kontakt,.elementor-36 #zespol,.elementor-36 #realizacje{scroll-margin-top:120px;}
@media(max-width:1100px){.fw-header-shell{gap:16px!important}.fw-header-nav .elementor-nav-menu--main .elementor-item{padding-inline:9px!important}.fw-site-header{padding-inline:24px!important}.fw-header-logo,.fw-header-logo img{width:150px!important}}
@media(max-width:1024px){.fw-header-nav{display:flex;justify-content:flex-end;order:3!important;flex:none!important}.fw-header-logo{margin-right:auto!important}.fw-header-cta{order:2!important}.fw-header-nav .elementor-nav-menu--dropdown{margin-top:16px!important}.fw-header-nav .elementor-nav-menu--dropdown .sub-menu{border:0!important;box-shadow:none;padding:4px!important;background:#080808!important}.fw-header-nav .elementor-menu-toggle{margin-left:auto}}
@media(max-width:767px){.fw-site-header{padding:14px 20px!important}.fw-header-shell{gap:10px!important}.fw-header-logo,.fw-header-logo img{width:100px!important}.fw-header-logo img{height:45px!important}.fw-header-cta .elementor-button{font-size:11px!important;padding:12px!important;border-radius:16px!important}.fw-header-nav .elementor-menu-toggle{padding:10px;font-size:21px}.elementor-36 [data-id="285632bc"]{padding-top:3rem!important}.elementor-36 #uslugi,.elementor-36 #kontakt,.elementor-36 #zespol,.elementor-36 #realizacje{scroll-margin-top:92px;}body.admin-bar .elementor-location-header:has(.fw-site-header){top:46px}}
@media(prefers-reduced-motion:reduce){.fw-header-cta .elementor-button{transition:none}}
.fw-header-nav .sub-arrow svg{fill:currentColor!important;}
body.page-id-36 footer.ct-footer{display:none;}
.fw-header-nav .elementor-menu-toggle svg{fill:currentColor!important;}
.fw-header-nav .sub-arrow,.fw-header-nav .sub-arrow i{color:inherit!important;}
/* Animated transformation from the full bar to a centered floating capsule. */
.elementor-location-header:has(.fw-site-header){height:111px;background:#080808;transition:background .45s,top .55s cubic-bezier(.22,.61,.36,1),border-color .45s;}
.elementor-location-header .fw-site-header{width:100%;max-width:100%;margin-inline:auto;border:1px solid transparent;border-radius:0;transition:width .6s cubic-bezier(.22,.61,.36,1),max-width .6s,padding .6s,border-radius .6s,background .5s,border-color .5s,box-shadow .5s;}
.elementor-location-header.fw-header-scrolled{top:16px;background:transparent;border-bottom-color:transparent;}
.elementor-location-header.fw-header-scrolled .fw-site-header{width:calc(100% - 80px)!important;max-width:1744px;background:#103b3ef5!important;border-color:#07d9e645;border-radius:999px;padding:12px 26px!important;box-shadow:0 12px 36px #0005;backdrop-filter:blur(18px);}
.elementor-location-header .fw-header-logo img{transition:height .6s;}
.elementor-location-header.fw-header-scrolled .fw-header-logo img{height:50px!important;}
body.admin-bar .elementor-location-header.fw-header-scrolled{top:48px;}
/* Full-screen mobile navigation, fed by the same WordPress menu. */
.fw-mobile-overlay{position:fixed;inset:0;z-index:100100;background:#050505;color:#fff;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-5%);clip-path:inset(0 0 100% 0);transition:clip-path .65s cubic-bezier(.76,0,.24,1),opacity .35s,transform .65s,visibility 0s .65s;padding:110px 30px 40px;min-height:100dvh;}
.fw-mobile-overlay.fw-menu-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);clip-path:inset(0 0 0 0);transition-delay:0s;}
.fw-mobile-close{position:absolute;right:22px;top:22px;width:48px;height:48px;border:0;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;border-radius:12px;}
.fw-mobile-close:before,.fw-mobile-close:after{content:"";position:absolute;width:25px;height:2px;background:currentColor;transform:rotate(45deg);}
.fw-mobile-close:after{transform:rotate(-45deg);}
.fw-mobile-close:hover{background:#103b3e;color:#07d9e6;}
.fw-mobile-overlay a:focus-visible,.fw-mobile-close:focus-visible{outline:2px solid #07d9e6;outline-offset:6px;}
.fw-mobile-eyebrow{color:#07d9e6;font:500 11px/1.4 Roboto,sans-serif;letter-spacing:.15em;margin:0 0 42px;}
.fw-mobile-list{margin:0!important;padding:0!important;list-style:none!important;}
.fw-mobile-list > li{margin:0 0 8px;padding:0;opacity:0;transform:translateY(24px);transition:opacity .45s,transform .6s cubic-bezier(.22,.61,.36,1);transition-delay:0s;}
.fw-menu-open .fw-mobile-list > li{opacity:1;transform:translateY(0);transition-delay:calc(.18s + var(--fw-item-index,0)*.065s);}
.fw-mobile-list a{font:500 34px/1.12 Roboto,sans-serif!important;letter-spacing:-.04em;color:#fff;text-decoration:none;display:block;}
.fw-mobile-list a:hover{color:#07d9e6;}
/* Services listed under "Usługi" in the mobile menu, smaller than the main items */
.fw-mobile-list .sub-menu{display:grid;gap:2px;margin:10px 0 14px!important;padding:0 0 0 16px!important;list-style:none!important;border-left:1px solid #07d9e655;}
.fw-mobile-list .sub-menu a{font:400 17px/1.5 Roboto,sans-serif!important;letter-spacing:0;color:#ffffffcc;padding:4px 0;}
.fw-mobile-list .sub-menu a:hover{color:#07d9e6;}
.fw-mobile-contact{margin-top:48px;opacity:0;transform:translateY(18px);transition:opacity .5s,transform .5s;}
.fw-menu-open .fw-mobile-contact{opacity:1;transform:none;transition-delay:.5s;}
.fw-mobile-contact p{color:#949494;font:400 10px/1.4 Roboto,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;}
.fw-mobile-contact a{display:block;color:#fff;text-decoration:none;font:400 17px/1.6 Roboto,sans-serif;}
.fw-mobile-contact .fw-mobile-email{font-size:23px;font-weight:500;letter-spacing:-.02em;margin-bottom:32px;}
.fw-mobile-contact address{font:400 17px/1.6 Roboto,sans-serif;font-style:normal;color:#fff;margin-top:8px;}
@media(min-width:768px) and (max-width:1024px){.fw-mobile-overlay{padding:130px max(40px,10vw) 50px}.fw-mobile-list > li > a{font-size:48px!important}.fw-mobile-contact{margin-top:60px}}
@media(max-width:767px){.elementor-location-header:has(.fw-site-header){height:74px}.elementor-location-header.fw-header-scrolled{top:10px}.elementor-location-header.fw-header-scrolled .fw-site-header{width:calc(100% - 24px)!important;padding:10px 14px!important;border-radius:24px}.elementor-location-header.fw-header-scrolled .fw-header-logo img{height:40px!important}.elementor-location-header.fw-header-scrolled .fw-header-shell{gap:8px!important}.elementor-location-header.fw-header-scrolled .fw-header-cta .elementor-button{padding:11px 10px!important;font-size:10px!important}body.admin-bar .elementor-location-header.fw-header-scrolled{top:56px}}
@media(prefers-reduced-motion:reduce){.elementor-location-header,.elementor-location-header .fw-site-header,.elementor-location-header .fw-header-logo img,.fw-mobile-overlay,.fw-mobile-list > li,.fw-mobile-contact{transition:none!important;transform:none!important;}.fw-mobile-overlay{clip-path:none;}}
@media(max-width:380px){.fw-header-logo,.fw-header-logo img{width:80px!important}.fw-header-shell{gap:8px!important}.fw-header-cta .elementor-button{font-size:10px!important;padding:11px 10px!important}.fw-header-nav .elementor-menu-toggle{font-size:18px;padding:9px;}.fw-mobile-list > li > a{font-size:32px!important}.fw-mobile-overlay{padding-inline:24px;}.fw-mobile-contact .fw-mobile-email{font-size:21px;}}
