/* NFCECOS shared public header/footer. Keep both site-wide components in these shared files. */
.nfcecos-skip-link{position:absolute;left:-9999px;top:8px;z-index:1000;padding:10px 14px;background:#fff;color:#111;border:1px solid #dfe6f0;border-radius:8px}
.nfcecos-skip-link:focus{left:8px}
.nfcecos-container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.nfcecos-site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);border-bottom:1px solid #e4eaf3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.nfcecos-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nfcecos-brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none!important;color:#101828!important}
.nfcecos-brand-mark{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#4d91ff,#2864e8);color:#fff;box-shadow:0 8px 18px rgba(52,120,246,.26);flex-shrink:0}
.nfcecos-brand-mark svg{display:block;max-width:none}
.nfcecos-brand-copy{display:block}
.nfcecos-brand-name{display:block;font-size:21px;line-height:1;font-weight:850;letter-spacing:-.9px;color:#101828}
.nfcecos-brand-name span{color:#3478f6}
.nfcecos-brand-caption{display:block;margin-top:5px;font-size:9px;line-height:1;letter-spacing:2px;font-weight:750;color:#77859a}
.nfcecos-main-nav{display:flex;align-items:center;gap:27px;color:#435168;font-size:13px;font-weight:650}
.nfcecos-main-nav>a,.nfcecos-main-nav button{color:#435168;text-decoration:none}
.nfcecos-main-nav>a:hover{color:#3478f6}
.nfcecos-nav-dropdown{position:relative}
.nfcecos-nav-dropdown-toggle{display:inline-flex;align-items:center;gap:7px;padding:8px 0;border:0;background:transparent;color:#435168;font:inherit;font-weight:650;cursor:pointer}
.nfcecos-nav-dropdown-toggle:hover,.nfcecos-nav-dropdown-toggle[aria-expanded="true"]{color:#3478f6}
.nfcecos-nav-dropdown-toggle span{font-size:15px;line-height:1}
.nfcecos-nav-dropdown-menu{position:absolute;top:100%;left:-14px;z-index:1100;display:none;min-width:225px;padding:9px;border:1px solid #e3eaf5;border-radius:14px;background:#fff;box-shadow:0 18px 38px rgba(15,35,70,.13)}
.nfcecos-nav-dropdown:hover .nfcecos-nav-dropdown-menu,.nfcecos-nav-dropdown:focus-within .nfcecos-nav-dropdown-menu,.nfcecos-nav-dropdown.is-open .nfcecos-nav-dropdown-menu{display:grid}
.nfcecos-main-nav .nfcecos-nav-dropdown-menu a{display:block;padding:10px 11px;border-radius:8px;color:#435168;white-space:nowrap;text-decoration:none}
.nfcecos-main-nav .nfcecos-nav-dropdown-menu a:hover,.nfcecos-main-nav .nfcecos-nav-dropdown-menu a:focus-visible{color:#2563eb;background:#f2f6ff}
.nfcecos-header-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}
.nfcecos-nav-cta{display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:12px;padding:12px 18px;font-weight:750;font-size:13px;white-space:nowrap;text-decoration:none!important;color:#fff!important;background:#3478f6;box-shadow:0 8px 18px rgba(52,120,246,.18);transition:transform .2s ease,background .2s ease}
.nfcecos-nav-cta:hover{background:#215de0;transform:translateY(-2px)}
.nfcecos-mobile-menu-button{display:none;border:1px solid #e4eaf3;background:#fff;color:#101828;border-radius:10px;padding:8px 10px;font-size:20px;line-height:1.2;cursor:pointer}
.nfcecos-site-footer{background:#080e19;color:#fff;padding:48px 0 22px;font-size:12px;line-height:1.7}
.nfcecos-footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding-bottom:35px}
.nfcecos-footer-intro p{max-width:340px;color:#9eacc1;font-size:12px;line-height:1.85;margin:17px 0 0}
.nfcecos-footer-brand .nfcecos-brand-name{color:#fff}
.nfcecos-footer-brand .nfcecos-brand-name span{color:#77abff}
.nfcecos-footer-brand .nfcecos-brand-caption{color:#8290a5}
.nfcecos-footer-col h2{margin:0 0 14px;font-size:12px;line-height:1.4;font-weight:800;color:#eaf0f9}
.nfcecos-footer-links{display:grid;gap:10px;color:#aab6c8;font-size:12px}
.nfcecos-footer-links a{color:#aab6c8!important;text-decoration:none!important;margin:0!important}
.nfcecos-footer-links a:hover{color:#fff!important}
.nfcecos-footer-bottom{border-top:1px solid #202b3c;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#8290a5;font-size:10px}
@media(max-width:980px){.nfcecos-main-nav{gap:16px}.nfcecos-nav-cta{padding:11px 13px;font-size:12px}}
@media(max-width:760px){.nfcecos-container{width:min(100% - 30px,560px)}.nfcecos-header-inner{min-height:68px;gap:12px}.nfcecos-brand-mark{width:36px;height:36px}.nfcecos-brand-name{font-size:19px}.nfcecos-brand-caption{font-size:8px;letter-spacing:1.7px}.nfcecos-mobile-menu-button{display:inline-flex;align-items:center;justify-content:center}.nfcecos-nav-cta{display:none}.nfcecos-main-nav{display:none;position:absolute;top:68px;left:0;right:0;padding:18px 22px 22px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid #e4eaf3;box-shadow:0 16px 22px rgba(11,18,32,.08)}.nfcecos-main-nav.is-open{display:flex}.nfcecos-main-nav>a{padding:12px 3px;border-bottom:1px solid #edf1f7}.nfcecos-nav-dropdown{width:100%}.nfcecos-nav-dropdown-toggle{width:100%;justify-content:space-between;padding:12px 3px;border-bottom:1px solid #edf1f7;text-align:left}.nfcecos-nav-dropdown-menu{position:static;min-width:0;padding:0 0 5px 12px;border:0;border-radius:0;box-shadow:none;background:#f8faff}.nfcecos-main-nav .nfcecos-nav-dropdown-menu a{padding:10px 8px;white-space:normal}.nfcecos-nav-dropdown:hover .nfcecos-nav-dropdown-menu{display:none}.nfcecos-nav-dropdown.is-open .nfcecos-nav-dropdown-menu,.nfcecos-nav-dropdown:focus-within .nfcecos-nav-dropdown-menu{display:grid}.nfcecos-footer-top{grid-template-columns:1fr 1fr;gap:30px 22px}.nfcecos-footer-intro{grid-column:1/-1}.nfcecos-footer-bottom{flex-direction:column;gap:8px}}
@media(max-width:390px){.nfcecos-footer-top{grid-template-columns:1fr}.nfcecos-footer-intro{grid-column:auto}.nfcecos-brand-name{font-size:18px}}
@media(prefers-reduced-motion:reduce){.nfcecos-nav-cta{transition:none}}


/* Site-wide floating WhatsApp contact button */
.nfcecos-whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:1200;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:8px 20px 8px 10px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:#25d366;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:800;line-height:1.2;box-shadow:0 12px 30px rgba(16,130,70,.28);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.nfcecos-whatsapp-float:hover{background:#20bd5a;transform:translateY(-3px);box-shadow:0 16px 36px rgba(16,130,70,.34)}
.nfcecos-whatsapp-float:focus-visible{outline:3px solid #101828;outline-offset:4px}
.nfcecos-whatsapp-float-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:rgba(255,255,255,.16)}
.nfcecos-whatsapp-float-icon svg{display:block;width:27px;height:27px;color:#fff}
.nfcecos-whatsapp-float-label{white-space:nowrap}
@media(max-width:600px){.nfcecos-whatsapp-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));min-height:58px;padding:8px 15px 8px 8px;gap:8px;font-size:13px}.nfcecos-whatsapp-float-icon{width:40px;height:40px;flex-basis:40px}}
@media(max-width:360px){.nfcecos-whatsapp-float{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:54px;padding:6px 12px 6px 6px;font-size:12px}.nfcecos-whatsapp-float-icon{width:38px;height:38px;flex-basis:38px}.nfcecos-whatsapp-float-icon svg{width:25px;height:25px}}
@media(prefers-reduced-motion:reduce){.nfcecos-whatsapp-float{transition:none}.nfcecos-whatsapp-float:hover{transform:none}}
