/* FACTECH v11.2 — Motion Navigation
   Global scoped CSS. Approved homepage/service styles remain unchanged. */
:root{--ft-nav-border:rgba(211,224,240,.84);--ft-nav-ink:#17263b;--ft-nav-muted:#77879c;--ft-nav-accent:linear-gradient(100deg,#00c5df,#5a8cf5 56%,#a34af1)}
.ft-nav-header{position:sticky;top:0;z-index:90;padding:15px 0 8px;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:none;transition:padding .35s ease}
.ft-nav-header .ft-nav-panel{position:relative;pointer-events:auto;width:min(1230px,calc(100% - 48px));min-height:77px;padding:0 20px 0 25px;gap:24px;background:rgba(255,255,255,.92);border:1px solid var(--ft-nav-border);border-radius:24px;box-shadow:0 15px 49px rgba(27,47,78,.085),0 2px 8px rgba(27,47,78,.03),inset 0 1px 0 rgba(255,255,255,.96);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);transition:min-height .35s ease,border-radius .35s ease,box-shadow .35s ease,padding .35s ease}
.ft-nav-header.scrolled{padding-top:9px}
.ft-nav-header.scrolled .ft-nav-panel{min-height:64px;border-radius:20px;box-shadow:0 13px 43px rgba(25,44,75,.12),inset 0 1px 0 #fff}
.ft-nav-header .ft-nav-panel::before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(37,193,226,.6),rgba(150,94,236,.46),transparent);pointer-events:none}
.ft-nav-header .ft-logo{width:204px;height:57px;position:relative;flex:0 0 204px;display:block;isolation:isolate;outline-offset:5px;line-height:0}
.ft-nav-header .ft-logo-image{width:100%;height:100%;display:block;object-fit:contain;position:relative;z-index:2;transition:filter .3s ease,transform .35s cubic-bezier(.22,.7,.25,1)}
.ft-nav-header .ft-logo-lume{position:absolute;z-index:3;pointer-events:none;inset:0 auto 0 1.5%;width:52.1%;background:linear-gradient(105deg,rgba(255,255,255,0) 28%,rgba(255,255,255,.0) 40%,rgba(255,255,255,.76) 50%,rgba(109,224,252,.42) 54%,rgba(255,255,255,0) 66%);background-size:255% 100%;background-position:160% center;mask-image:url('factech-logo-symbol-mask.png');-webkit-mask-image:url('factech-logo-symbol-mask.png');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;animation:ft-nav-logo-sweep 5.7s cubic-bezier(.35,.2,.55,1) infinite}
.ft-nav-header .ft-logo-aura{position:absolute;z-index:1;pointer-events:none;left:0;top:20%;width:55%;height:70%;background:radial-gradient(ellipse,rgba(30,199,236,.14),rgba(128,83,232,.09) 52%,transparent 74%);filter:blur(11px);animation:ft-nav-logo-breathe 5.3s ease-in-out infinite}
.ft-nav-header .ft-logo:hover .ft-logo-image{transform:translateY(-1px);filter:drop-shadow(0 4px 8px rgba(36,155,221,.12))}
.ft-nav-header .ft-logo:hover .ft-logo-lume{animation-duration:1.45s}
.ft-nav-header.scrolled .ft-logo{width:185px;height:51px;flex-basis:185px;transition:width .35s ease,height .35s ease,flex-basis .35s ease}
@keyframes ft-nav-logo-sweep{0%,22%{background-position:158% center;opacity:.04}35%{opacity:.94}66%{background-position:-63% center;opacity:.76}79%,100%{background-position:-63% center;opacity:0}}
@keyframes ft-nav-logo-breathe{0%,100%{opacity:.3;transform:scale(.94)}50%{opacity:1;transform:scale(1.08)}}
.ft-nav-header .ft-nav-main{display:flex;align-items:center;gap:7px}
.ft-nav-header .ft-nav-main .ft-nav-link,.ft-nav-header .ft-offer-trigger{position:relative;border:0;background:transparent;padding:13px 16px;border-radius:14px;font-size:13px;font-weight:680;color:#445569;letter-spacing:-.006em;line-height:1.2;transition:background .24s ease,color .24s ease,transform .24s ease}
.ft-nav-header .ft-offer-trigger{gap:6px}
.ft-nav-header .ft-nav-main .ft-nav-link::after,.ft-nav-header .ft-offer-trigger::after{content:"";position:absolute;bottom:7px;left:17px;right:17px;height:2px;border-radius:3px;transform:scaleX(0);transform-origin:left;background:var(--ft-nav-accent);transition:transform .3s ease}
.ft-nav-header .ft-nav-main .ft-nav-link:hover,.ft-nav-header .ft-offer-trigger:hover,.ft-nav-header .ft-nav-main .is-current,.ft-nav-header .ft-offer-trigger[aria-expanded="true"]{background:rgba(237,243,251,.68);color:#14243a;transform:none}
.ft-nav-header .ft-nav-main .ft-nav-link:hover::after,.ft-nav-header .ft-nav-main .ft-nav-link.is-current::after,.ft-nav-header .ft-offer-trigger:hover::after,.ft-nav-header .ft-offer-trigger[aria-expanded="true"]::after{transform:scaleX(1)}
.ft-nav-header .ft-offer-trigger svg{width:14px;height:14px;transition:transform .25s ease}
.ft-nav-header .ft-offer-trigger[aria-expanded="true"] svg{transform:rotate(180deg)}
.ft-nav-header .ft-nav-main .ft-nav-contact{display:inline-flex!important;align-items:center;gap:13px;min-height:43px;margin-left:12px;padding:11px 19px;border-radius:100px;background:linear-gradient(160deg,#1e3048,#132135)!important;box-shadow:0 9px 23px rgba(30,47,76,.19),inset 0 1px 0 rgba(255,255,255,.15);font-size:13px;font-weight:700;color:#fff!important;transform:none;transition:box-shadow .28s ease,transform .28s ease!important;overflow:hidden}
.ft-nav-header .ft-nav-contact::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.2) 48%,transparent 62%);transform:translateX(-150%);transition:transform .7s ease}
.ft-nav-header .ft-nav-contact:hover::before{transform:translateX(150%)}
.ft-nav-header .ft-nav-contact:hover{transform:translateY(-2px);box-shadow:0 15px 31px rgba(30,47,76,.24)}
.ft-nav-header .ft-nav-contact svg{width:17px;height:17px;transition:transform .25s ease}
.ft-nav-header .ft-nav-contact:hover svg{transform:translateX(3px)}
.ft-nav-header .ft-menu-host{position:static}
.ft-nav-header .ft-mega{position:absolute;top:calc(100% + 12px);right:0;width:min(920px,calc(100vw - 48px));display:block;padding:0;overflow:hidden;border-radius:24px;background:rgba(255,255,255,.97);border:1px solid rgba(209,224,240,.92);box-shadow:0 35px 95px rgba(22,47,81,.18),0 14px 32px rgba(22,47,81,.075);backdrop-filter:blur(24px);animation:ft-mega-enter .3s cubic-bezier(.2,.8,.2,1) both}
.ft-nav-header .ft-mega[hidden],.ft-mobile-drawer[hidden],.ft-nav-header .ft-mobile-services[hidden]{display:none!important}
@keyframes ft-mega-enter{from{opacity:0;transform:translateY(-10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.ft-mega-head{display:flex;justify-content:space-between;align-items:end;padding:24px 26px 18px;border-bottom:1px solid #e9eef5;gap:14px}
.ft-eyebrow{font-size:10px;letter-spacing:.15em;font-weight:750;color:#8092a7}
.ft-mega-head h3{font-size:26px;line-height:1.1;letter-spacing:-.055em;margin:7px 0 0;color:#1b2a3d}
.ft-mega-head-accent{color:#16bedb}
.ft-mega-counter{font-size:10px;letter-spacing:.12em;font-weight:740;color:#8b9bb0;white-space:nowrap}
.ft-mega-columns{display:grid;grid-template-columns:1.09fr .91fr;gap:15px;padding:15px}
.ft-mega-list{display:grid;grid-template-columns:1fr;gap:4px;align-content:start}
.ft-nav-header .ft-mega-item{position:relative;display:flex;align-items:center;gap:14px;min-height:50px;text-decoration:none;color:#354b63;font-size:13px;font-weight:680;line-height:1.22;border-radius:12px;padding:10px 13px;transition:background .2s ease,color .2s ease,transform .2s ease}
.ft-nav-header .ft-mega-item:hover,.ft-nav-header .ft-mega-item.is-selected,.ft-nav-header .ft-mega-item:focus-visible{background:#eef5fb;color:#102a45;transform:none}
.ft-item-index{font-size:10px;letter-spacing:.05em;color:#8aa0bb;min-width:20px}
.ft-mega-item.is-selected .ft-item-index{color:#18aacc}
.ft-item-name{flex:1}
.ft-item-chevron svg{width:15px;height:15px;color:#29a5d6;transition:transform .25s ease}
.ft-mega-item:hover .ft-item-chevron svg{transform:translateX(3px)}
.ft-mega-preview{background:linear-gradient(140deg,#f4f9fc,#eff5fd);border:1px solid #e8eef7;border-radius:16px;min-width:0;overflow:hidden;display:flex;flex-direction:column}
.ft-preview-visual{height:224px;position:relative;overflow:hidden;background:#ebf3fc}
.ft-preview-image{position:absolute;inset:0;opacity:0;transition:opacity .35s ease;pointer-events:none}
.ft-preview-image.is-active{opacity:1}
.ft-preview-image img{width:100%;height:100%;object-fit:cover;display:block}
.ft-preview-visual::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(0deg,rgba(24,39,61,.26),transparent);pointer-events:none}
.ft-preview-tag{position:absolute;z-index:2;top:13px;left:14px;display:inline-flex;border:1px solid rgba(255,255,255,.68);border-radius:99px;background:rgba(255,255,255,.84);box-shadow:0 5px 14px rgba(14,42,72,.08);padding:7px 10px;font-size:8px;letter-spacing:.14em;font-weight:790;color:#426883}
.ft-preview-caption{padding:17px 19px 20px;min-height:114px}
.ft-preview-number{display:block;font-size:9px;letter-spacing:.16em;color:#28a4ca;font-weight:800;margin-bottom:6px}
.ft-preview-caption strong{display:block;font-size:18px;line-height:1.25;font-weight:750;letter-spacing:-.035em;color:#1c2f47}
.ft-preview-caption p{font-size:12px;color:#718398;line-height:1.55;margin:6px 0 0}
.ft-mega-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 26px 17px;border-top:1px solid #edf1f6;font-size:11px;color:#8798ad}
.ft-mega-bottom a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#168cb9;font-size:12px;font-weight:720;white-space:nowrap}
.ft-mega-bottom svg{height:16px;width:16px;transition:transform .25s ease}.ft-mega-bottom a:hover svg{transform:translateX(4px)}
.ft-nav-header .ft-mobile-toggle,.ft-mobile-drawer{display:none}

@media(max-width:1024px){
 .ft-nav-header{padding-top:11px}
 .ft-nav-header .ft-nav-panel{width:calc(100% - 28px);min-height:69px;padding:0 15px 0 17px;border-radius:20px}
 .ft-nav-header.scrolled .ft-nav-panel{min-height:62px}
 .ft-nav-header .ft-logo{width:184px;height:52px;flex-basis:184px}
 .ft-nav-header.scrolled .ft-logo{width:172px;height:49px;flex-basis:172px}
 .ft-nav-header .ft-nav-main{display:none!important}
 .ft-nav-header .ft-mobile-toggle{display:inline-flex!important;gap:10px;align-items:center;justify-content:center;width:auto;min-width:86px;height:42px;padding:0 14px;border:1px solid #e1e8f1;border-radius:13px;background:rgba(246,249,253,.9);color:#24364b;box-shadow:0 4px 12px rgba(24,43,73,.04);font-size:12px;font-weight:760;letter-spacing:.015em;cursor:pointer;position:relative;transition:background .25s,border-color .25s}
 .ft-nav-header .ft-mobile-toggle[aria-expanded="true"]{background:#eaf3fb;border-color:#cddff1}
 .ft-nav-header .ft-toggle-lines{display:grid;place-items:center;gap:5px;width:18px;height:18px}
 .ft-nav-header .ft-toggle-lines i{display:block;width:18px;height:2px;border-radius:3px;background:#213a57;transition:transform .32s ease}
 .ft-nav-header .ft-mobile-toggle[aria-expanded="true"] .ft-toggle-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}
 .ft-nav-header .ft-mobile-toggle[aria-expanded="true"] .ft-toggle-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .ft-mobile-drawer{display:block;position:absolute;top:calc(100% + 6px);left:14px;right:14px;width:auto;max-height:calc(100dvh - 98px);overflow:auto;background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(248,251,255,.99));border:1px solid rgba(211,226,241,.94);border-radius:21px;box-shadow:0 24px 70px rgba(23,47,77,.19);padding:0;pointer-events:auto;animation:ft-drawer-open .37s cubic-bezier(.18,.82,.26,1) both;overscroll-behavior:contain}
 .ft-mobile-drawer-inside{padding:20px 23px 22px}
 .ft-mobile-overline{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.15em;font-weight:760;color:#8999ad;padding:5px 0 19px}
 .ft-mobile-overline span{color:#54a9c8}
 .ft-mobile-main-link{border-bottom:1px solid #e6edf5;display:flex;align-items:center;justify-content:space-between;min-height:65px;padding:13px 2px;color:#1b2a3d;text-decoration:none;font-size:clamp(22px,4.5vw,29px);letter-spacing:-.05em;font-weight:720;opacity:0;animation:ft-item-in .47s cubic-bezier(.2,.8,.25,1) forwards;animation-delay:.07s}
 .ft-mobile-main-link svg{width:20px;height:20px;color:#58a8cc}
 .ft-mobile-offer-row{display:flex;align-items:stretch;justify-content:space-between;border-bottom:1px solid #e6edf5}
 .ft-mobile-offer-row .ft-mobile-main-link{flex:1;border:0}
 .ft-mobile-expand{background:#edf5fc;border:1px solid #dcecf6;border-radius:12px;width:46px;min-width:46px;height:42px;align-self:center;display:grid;place-items:center;cursor:pointer;color:#3775a5}
 .ft-mobile-expand svg{width:18px;height:18px;transition:transform .3s ease}
 .ft-mobile-expand[aria-expanded="true"] svg{transform:rotate(180deg)}
 .ft-mobile-services{display:grid;grid-template-columns:1fr;gap:1px;background:#f4f8fd;padding:8px 14px;border-bottom:1px solid #e3ebf5;border-radius:0 0 14px 14px;animation:ft-service-open .28s ease both}
 .ft-mobile-service{display:flex;align-items:center;gap:14px;text-decoration:none;color:#375066;min-height:46px;padding:7px 0;border-bottom:1px solid rgba(217,230,242,.7);font-size:13px;font-weight:670}
 .ft-mobile-service:last-child{border-bottom:0}
 .ft-mobile-service>span{font-size:10px;letter-spacing:.06em;color:#7f9caf;width:22px;min-width:22px}
 .ft-mobile-service svg{margin-left:auto;width:17px;height:17px;color:#3e9fbe}
 .ft-mobile-main-link:nth-of-type(1){animation-delay:.09s}.ft-mobile-main-link:nth-of-type(2){animation-delay:.14s}
 .ft-mobile-contact{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,#21344b,#1b2940);border-radius:13px;color:#fff;text-decoration:none;font-size:16px;font-weight:720;padding:16px 20px;margin-top:22px;box-shadow:0 12px 26px rgba(31,52,84,.16);opacity:0;animation:ft-item-in .5s .21s ease forwards}
 .ft-mobile-contact svg{width:20px;height:20px;color:#93ddf3}
 .ft-mobile-drawer-foot{display:flex;justify-content:space-between;gap:7px;flex-wrap:wrap;padding-top:20px;font-size:8px;letter-spacing:.11em;font-weight:760;color:#94a3b5}
}
@media(max-width:600px){
 .ft-nav-header .ft-nav-panel{width:calc(100% - 24px);min-height:65px;padding:0 11px 0 14px;border-radius:18px}
 .ft-nav-header .ft-logo{width:158px;height:45px;flex-basis:158px}
 .ft-nav-header.scrolled .ft-logo{width:151px;height:43px;flex-basis:151px}
 .ft-nav-header .ft-mobile-toggle{min-width:75px;height:39px;padding:0 10px;gap:7px}
 .ft-mobile-drawer{left:12px;right:12px;top:calc(100% + 5px);max-height:calc(100dvh - 88px)}
 .ft-mobile-drawer-inside{padding:14px 19px 19px}
 .ft-mobile-main-link{min-height:59px}
 .ft-mobile-drawer-foot{justify-content:flex-start;column-gap:13px}
}
@media(max-width:360px){.ft-nav-header .ft-logo{width:147px;height:43px;flex-basis:147px}.ft-nav-header .ft-mobile-toggle{min-width:72px}.ft-nav-header .ft-nav-panel{padding-inline:10px}}
@keyframes ft-drawer-open{from{opacity:0;transform:translateY(-12px) scale(.982)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ft-item-in{from{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}
@keyframes ft-service-open{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
 .ft-nav-header .ft-logo-lume,.ft-nav-header .ft-logo-aura{animation:none!important;opacity:.15}
 .ft-nav-header *, .ft-nav-header *::before,.ft-nav-header *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0ms!important}
 .ft-mobile-main-link,.ft-mobile-contact{opacity:1!important;transform:none!important}
}


/* v11.2.1 — authentic fac.tech logo animation (120 original frames, preserved).
   Infinity mark moves, while the original high-resolution FACTECH wordmark stays crisp.
   The composition is identical on desktop and mobile. */
.ft-nav-header .ft-logo{display:flex;align-items:center;justify-content:flex-start;overflow:visible;isolation:isolate}
.ft-nav-header .ft-logo-art,.ft-nav-header .ft-logo-reduced{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:0;position:relative;z-index:2;line-height:0}
.ft-nav-header .ft-logo-reduced{display:none}
.ft-nav-header .ft-logo-symbol{display:block;width:55%;height:auto;flex:0 0 55%;aspect-ratio:400/195;position:relative;z-index:2}
.ft-nav-header .ft-logo-symbol-motion,.ft-nav-header .ft-logo-symbol-still{display:block;width:100%;height:auto;object-fit:contain}
.ft-nav-header .ft-logo-wordmark{position:relative;z-index:2;width:45%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(29,44,69,.025));transform:translateY(1px)}
.ft-nav-header .ft-logo-ambient{position:absolute;z-index:0;left:0;top:25%;width:55%;height:60%;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse,rgba(20,198,229,.10),rgba(145,74,240,.05) 48%,transparent 74%);filter:blur(9px);opacity:.6;transition:opacity .3s ease,transform .3s ease}
.ft-nav-header .ft-logo:hover .ft-logo-ambient{opacity:1;transform:scale(1.08)}
.ft-nav-header .ft-logo:hover .ft-logo-art{filter:drop-shadow(0 3px 5px rgba(36,155,221,.07))}
.ft-nav-header .ft-logo-lume,.ft-nav-header .ft-logo-aura{display:none!important}
@media(prefers-reduced-motion:reduce){
 .ft-nav-header .ft-logo-art{display:none!important}
 .ft-nav-header .ft-logo-reduced{display:flex!important}
 .ft-nav-header .ft-logo-reduced .ft-logo-symbol-still{width:55%;height:auto;flex:0 0 55%}
 .ft-nav-header .ft-logo-reduced .ft-logo-wordmark{width:45%;height:auto}
}


/* FACTECH v11.4 — Mobile navigation + logo proportions. */
/* Isolated navigation: no dependency on obsolete .mobile-trigger/.nav-mobile rules. */
.ft-nav-header .ft-logo{width:194px;height:54px;flex-basis:194px;transition:width .35s ease,height .35s ease,flex-basis .35s ease}
.ft-nav-header.scrolled .ft-logo{width:179px;height:49px;flex-basis:179px}
.ft-nav-header .ft-logo-art,.ft-nav-header .ft-logo-reduced{gap:7px;justify-content:flex-start}
.ft-nav-header .ft-logo-symbol{width:calc(54% - 3.5px);flex:0 0 calc(54% - 3.5px)}
.ft-nav-header .ft-logo-wordmark{width:calc(46% - 3.5px);flex:0 1 calc(46% - 3.5px)}
.ft-nav-header .ft-logo-ambient{width:54%}
@media(prefers-reduced-motion:reduce){
 .ft-nav-header .ft-logo-reduced .ft-logo-symbol-still{width:calc(54% - 3.5px);flex:0 0 calc(54% - 3.5px)}
 .ft-nav-header .ft-logo-reduced .ft-logo-wordmark{width:calc(46% - 3.5px);flex:0 1 calc(46% - 3.5px)}
}
.ft-nav-overlay{position:fixed;inset:0;z-index:89;background:rgba(15,28,47,.34);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:ft-overlay-in .25s ease both;touch-action:none;cursor:pointer}
.ft-nav-overlay[hidden]{display:none!important}
@keyframes ft-overlay-in{from{opacity:0}to{opacity:1}}
html.ft-nav-open,html.ft-nav-open body{overflow:hidden!important;overscroll-behavior:none}
@media(max-width:1024px){
 .ft-nav-header .ft-logo{width:176px;height:50px;flex-basis:176px}
 .ft-nav-header.scrolled .ft-logo{width:169px;height:47px;flex-basis:169px}
 .ft-nav-header .ft-mobile-toggle{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-width:94px;white-space:nowrap;line-height:1;flex-shrink:0;position:relative;z-index:2}
 .ft-nav-header .ft-toggle-lines{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:19px;height:20px;flex:0 0 19px}
 .ft-nav-header .ft-toggle-lines i{display:block;width:19px;height:2px;flex:0 0 2px;margin:0;border-radius:4px}
 .ft-nav-header .ft-toggle-label{display:block;position:static;font-size:12px;font-weight:760;white-space:nowrap;line-height:1.2;transform:none!important}
 .ft-nav-header .ft-mobile-toggle[aria-expanded="true"] .ft-toggle-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}
 .ft-nav-header .ft-mobile-toggle[aria-expanded="true"] .ft-toggle-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .ft-mobile-drawer{background:#ffffff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 20px 66px rgba(14,34,61,.22);isolation:isolate;z-index:91}
 .ft-mobile-drawer-inside{background:#fff;border-radius:inherit}
 .ft-mobile-drawer .ft-mobile-main-link{display:flex;flex-direction:row;align-items:center;justify-content:space-between;min-width:0;width:100%;background:transparent;font-size:clamp(20px,4.4vw,27px);font-weight:720;line-height:1.2;color:#1b2a3d;padding:13px 2px;border-bottom:1px solid #e6edf5;letter-spacing:-.04em;text-decoration:none}
 .ft-mobile-drawer .ft-mobile-main-link svg{flex:0 0 20px}
 .ft-mobile-drawer .ft-mobile-service{display:flex;flex-direction:row;align-items:center;gap:12px;min-width:0;white-space:normal;font-size:13px;font-weight:670;text-decoration:none;border-bottom:1px solid rgba(217,230,242,.7);line-height:1.35}
 .ft-nav-header .ft-mobile-offer-row .ft-mobile-main-link{border-bottom:0}
 .ft-nav-header .ft-mobile-offer-row .ft-mobile-main-link svg{display:none}
 .ft-nav-header .ft-mobile-expand{display:grid;place-items:center;flex:0 0 44px;width:44px;height:42px}
 .ft-nav-header .ft-mobile-contact{border-bottom:0;display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(110deg,#21344b,#1b2940);font-size:16px;font-weight:720}
 .ft-mobile-drawer{max-height:calc(100dvh - 99px);max-height:calc(100svh - 99px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
}
@media(max-width:600px){
 .ft-nav-header .ft-logo{width:157px;height:45px;flex-basis:157px}
 .ft-nav-header.scrolled .ft-logo{width:150px;height:43px;flex-basis:150px}
 .ft-nav-header .ft-logo-art,.ft-nav-header .ft-logo-reduced{gap:5px}
 .ft-nav-header .ft-logo-symbol{width:calc(54% - 2.5px);flex-basis:calc(54% - 2.5px)}
 .ft-nav-header .ft-logo-wordmark{width:calc(46% - 2.5px);flex-basis:calc(46% - 2.5px)}
 .ft-nav-header .ft-mobile-toggle{min-width:85px!important;padding:0 11px!important;gap:7px!important;height:41px!important}
 .ft-mobile-drawer{top:calc(100% + 7px);left:12px;right:12px;max-height:calc(100svh - 91px)}
 .ft-mobile-drawer-inside{padding:17px 19px 21px}
}
@media(max-width:360px){
 .ft-nav-header .ft-logo{width:143px;height:42px;flex-basis:143px}
 .ft-nav-header.scrolled .ft-logo{width:138px;height:40px;flex-basis:138px}
 .ft-nav-header .ft-mobile-toggle{min-width:82px!important}
}
@media(prefers-reduced-motion:reduce){.ft-nav-overlay{animation:none}}


/* FACTECH v12.0.2 — statyczny znacznik aktywnej strony.
   Ten sam gradientowy podkreslnik oraz tlo co dla :hover. */
.ft-nav-header .ft-offer-trigger.is-current{background:rgba(237,243,251,.68);color:#14243a}
.ft-nav-header .ft-offer-trigger.is-current::after{transform:scaleX(1)}
.ft-nav-header .ft-nav-main .ft-nav-contact.is-current{transform:translateY(-2px);box-shadow:0 15px 31px rgba(30,47,76,.24),0 0 0 2px rgba(49,177,222,.19)}
.ft-nav-header .ft-mega-item.is-current-page{background:#eef5fb;color:#102a45;box-shadow:inset 3px 0 0 #29b4d7}
.ft-nav-header .ft-mega-item.is-current-page .ft-item-index{color:#168cb9}
@media(max-width:1024px){
 .ft-mobile-drawer .ft-mobile-main-link.is-current{color:#167eaf;background:linear-gradient(90deg,rgba(29,185,223,.09),transparent 70%);border-radius:8px;padding-left:10px;padding-right:10px}
 .ft-mobile-drawer .ft-mobile-service.is-current{color:#126e9f;background:linear-gradient(90deg,rgba(29,185,223,.10),transparent 85%);border-left:3px solid #28b2db;padding-left:9px}
 .ft-nav-header .ft-mobile-contact.is-current{box-shadow:0 12px 26px rgba(31,52,84,.21),0 0 0 2px rgba(44,180,224,.55)}
}


/* v12.1: iOS-safe mobile layer outside the sticky header. */
@media(max-width:1024px){
 body > .ft-mobile-drawer{
   position:fixed!important;z-index:110!important;
   top:var(--ft-drawer-top,90px)!important;
   left:14px!important;right:14px!important;bottom:auto!important;
   width:auto!important;margin:0!important;
   max-height:calc(100vh - var(--ft-drawer-top,90px) - 12px)!important;
   max-height:calc(100dvh - var(--ft-drawer-top,90px) - 12px)!important;
   overflow-y:auto!important;overscroll-behavior:contain;
   background:#fff!important;pointer-events:auto!important;
   -webkit-overflow-scrolling:touch;
 }
 body > .ft-mobile-drawer[hidden],body > .ft-mobile-drawer .ft-mobile-services[hidden]{display:none!important}
 /* Avoid header shifting when the document is scrolled on Safari. */
 html.ft-nav-open,html.ft-nav-open body{overflow-x:clip!important;overflow-y:auto!important;overscroll-behavior:auto!important}
 body.menu-open{overflow-x:clip!important;overflow-y:auto!important}
}
@media(max-width:600px){body > .ft-mobile-drawer{left:12px!important;right:12px!important}}
@media(min-width:1025px){body > .ft-mobile-drawer{display:none!important}}
